hibernate
下载hibernate jar包
https://sourceforge.net/projects/hibernate/files/
antlr-2.7.7.jar
classmate-1.3.0.jar
dom4j-1.6.1.jar
hibernate-commons-annotations-5.0.1.Final.jar
hibernate-core-5.2.11.Final.jar
hibernate-jpa-2.1-api-1.0.0.Final.jar
javassist-3.20.0-GA.jar
jboss-logging-3.3.0.Final.jar
jboss-transaction-api_1.2_spec-1.0.0.Final.jar
lucene-core-5.5.4.jar
lucene-queryparser-5.5.4.jar
xml-apis-1.3.03.jar
另外加入数据库驱动jar包
mysql-connector-java-5.1.45-bin.jar
创建Tesy工程
创建持久化对象:User.java
package com.hust.dong; public class User { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } @Override public String toString() { return "[User: id=" + id + ", name=" + name + "]"; } }
创建对象-关系映射文件:/src/com/hust/dong/User.hbm.xml
<?xml version="1.0"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> <hibernate-mapping package="com.hust.dong"> <class name="User" table="t_user"> <id name="id" type="int" column="id"> <generator class="native"/> </id> <property name="name" type="string" column="name" /> </class> </hibernate-mapping>
创建Hibernate配置文件:hibernate.cfg.xml
<!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> <!-- 1. 配置数据库信息 --> <!-- 方言(连接的数据库类型) --> <property name="dialect">org.hibernate.dialect.MySQLDialect</property> <property name="connection.url">jdbc:mysql:///cm_hibernate</property> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.username">root</property> <property name="connection.password">123456</property> <!-- 2. 其他配置 --> <!-- 显示生成的SQL语句 --> <property name="hibernate.show_sql">true</property> <!-- 3. 导入映射文件 --> <mapping resource="com/hust/dong/User.hbm.xml" /> </session-factory> </hibernate-configuration>
创建测试用例
package com.hust.dong; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.junit.Test; public class App { private static SessionFactory sessionFactory; static { Configuration cfg = new Configuration(); cfg.configure("hibernate.cfg.xml"); // 读取指定的主配置文件 sessionFactory = cfg.buildSessionFactory(); // 根据配置生成Session工厂 } @Test public void testSave() { User user = new User(); user.setName("zhangsan"); // 保存 Session session = sessionFactory.openSession(); // 打开一个新的Session Transaction tx = session.beginTransaction(); // 开启事务 session.save(user); tx.commit(); // 提交事务 session.close(); // 关闭Session,释放资源(不一定是真正的关闭) } @Test public void testGet() { Session session = sessionFactory.openSession(); Transaction tx = session.beginTransaction(); User user = (User) session.get(User.class, 4); // System.out.println(user); tx.commit(); session.close(); } }
mysql -u root -p create database cm_hibernate default character set utf8; use cm_hibernate; create table t_user( id int primary key auto_increment, name varchar(20) );
运行即可
http://blog.csdn.net/yerenyuan_pku/article/details/52733275

浙公网安备 33010602011771号