Eclipse neon +Hibernate5+maven创建小例子
来源:互联网 发布:robotmaster软件下载 编辑:程序博客网 时间:2024/05/22 01:46
Eclipse+Maven搭建一个Hibernate5的小例子
一、新建一个maven项目
二、将第一个勾选上
三、创建好的项目结构
四、因为Eclipse neon新建maven项目默认的是支持servelt2.5,所以为了支持3.0的API进行如下设置,然后点击下面的链接
五、修改webapp目录
六、修改文件的maven class目录,并删除test的class
七、完成前面的步骤,项目目录结构(此处省略各个文件的创建)
源代码:
Students.java
package com.vae.entity;
import java.util.Date;
public class Students {
private int sid;
private String sname;
private String gender;
private Date birthday;
private String address;
public Students(){
}
public Students(int sid, String sname, String gender, Date birthday, String address) {
//super();
this.sid = sid;
this.sname = sname;
this.gender = gender;
this.birthday = birthday;
this.address = address;
}
public int getSid() {
return sid;
}
public void setSid(int sid) {
this.sid = sid;
}
public String getSname() {
return sname;
}
public void setSname(String sname) {
this.sname = sname;
}
public String getGender() {
return gender;
}
public void setGender(String gender) {
this.gender = gender;
}
public Date getBirthday() {
return birthday;
}
public void setBirthday(Date birthday) {
this.birthday = birthday;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
@Override
public String toString() {
return "Students [sid=" + sid + ", sname=" + sname + ", gender=" + gender + ", birthday=" + birthday
+ ", address=" + address + "]";
}
}
Students.hbm.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd" >
<hibernate-mapping>
<class name="com.vae.entity.Students" table="STUDENTS">
<id name="sid" type="int">
<column name="SID" />
<generator class="assigned" />
</id>
<property name="sname" type="java.lang.String">
<column name="SNAME" />
</property>
<property name="gender" type="java.lang.String">
<column name="GENDER" />
</property>
<property name="birthday" type="java.util.Date">
<column name="BIRTHDAY" />
</property>
<property name="address" type="java.lang.String">
<column name="ADDRESS" />
</property>
</class>
</hibernate-mapping>
hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.username">root</property>
<property name="connection.password">密码</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql:///testhibernate2?useUnicode=true&characterEncoding=UTF-8</property>
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>
<property name="hbm2ddl.auto">create</property>
<mapping resource="com/vae/entity/Students.hbm.xml"/>
</session-factory>
</hibernate-configuration>
stutest.java
package com.vae.test;
import java.util.Date;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.boot.MetadataSources;
import org.hibernate.boot.registry.StandardServiceRegistry;
import org.hibernate.boot.registry.StandardServiceRegistryBuilder;
import org.junit.Test;
import com.vae.entity.Students;
public class stutest {
@Test
public void save(){
SessionFactory seFactory = null;
final StandardServiceRegistry registry = new StandardServiceRegistryBuilder().configure().build();
try{
seFactory = new MetadataSources( registry ).buildMetadata()
.buildSessionFactory();
} catch(Exception e){
StandardServiceRegistryBuilder.destroy( registry );
}
//2.鍒涘缓涓�涓猄ession瀵硅薄
Session session = seFactory.openSession();
//3.寮�鍚簨鍔�
session.beginTransaction();
//4.鎵ц鎿嶄綔
Students s=new Students(1,"ssss","wwwww",new Date(),"ooooo");
session.save(s);
/*
//!!!!鍐檋ql璇彞锛宖rom 绫诲悕(鍖哄垎澶у皬鍐�)
String hql = "from UserInfo";
@SuppressWarnings("unchecked")
List<UserInfo> list = session.createQuery(hql).list();
for(UserInfo u : list){
System.out.println(u);
}
*/
//5.鎻愪氦浜嬪姟
session.getTransaction().commit();
//6.鍏抽棴Session
session.close();
//7.鍏抽棴SessionFactory
seFactory.close();
}
}
pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.cdsn</groupId>
<artifactId>cdsn</artifactId>
<version>0.0.1-SNAPSHOT</version>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<scope>test</scope>
</dependency>
<!-- 添加Hibernate依赖 -->
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.2.1.Final</version>
</dependency>
<!-- 添加Log4J依赖 -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.21</version>
</dependency>
<!-- 添加javassist -->
<dependency>
<groupId>org.javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.20.0-GA</version>
</dependency>
<!-- mysql数据库的驱动包 -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.40</version>
</dependency>
</dependencies>
<!-- 此处原因未知 使用mysql6版本时出现空指针异常 此处使用mysql5 -->
</project>
- Eclipse neon +Hibernate5+maven创建小例子
- Eclipse neon+hibernate5创建小例子
- eclipse创建maven项目小例子
- eclipse neon配置 maven
- Eclipse Neon下使用Maven创建Java Web项目
- Eclipse搭建Maven工程集成Spring4+Hibernate5
- 46、Maven创建多模块项目(多个war,2017版Eclipse Neon.2)
- maven+snoatype nexus+jrebel+eclipse+tomcat整合的小例子
- maven+snoatype nexus+jrebel+eclipse+tomcat整合的小例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- 在Eclipse中创建Maven多模块工程的例子
- python 任意新闻正文提取
- Android创建简单的Launcher应用程序(二)
- hdoj 4408 Minimum Spanning Tree 求最小生成树的数目
- C语言代码实例
- 数据结构实验之二叉树三:统计叶子数
- Eclipse neon +Hibernate5+maven创建小例子
- js正则表达式
- iOS多个UILabel添加同一个单击手势,如何确定用户点击的是哪个UILabel (swift3.0)
- Component Tree
- CF 2B The least round way
- Qt多窗口来回切换实战
- 用verilog设计一个交通信号灯,要求有红,黄,绿,左转四盏灯
- Java数据结构——线性表的顺序存储实现
- ArrayList源码解读