Hibernate hello world
2017-05-08 08:27
465 查看
新建项目:
导包:
编写配置文件:
Hibernate.cfg.xml放在src里:
编辑*.hbrn.xml对象,文件名一般为pojo类的名称,User.hbrn.xml对象,放在pojo类所在的包下
User.hbrn.xml
将User.hbrn.xml配置文件加入到hibernate.cfg.xml:
User bean:
导包:
编写配置文件:
Hibernate.cfg.xml放在src里:
<!-- ~ Hibernate, Relational Persistence for Idiomatic Java ~ ~ License: GNU Lesser General Public License (LGPL), version 2.1 or later. ~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>. --> <!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.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://localhost:3306/test2</property> <property name="connection.username">root</property> <property name="connection.password">admin</property> <property name="hibernate.hbm2ddl.auto">update</property> <!-- 数据库方言 --> <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property> <mapping resource="cn/siggy/pojo/User.hbrn.xml"/> </session-factory> </hibernate-configuration>自动生成表:
编辑*.hbrn.xml对象,文件名一般为pojo类的名称,User.hbrn.xml对象,放在pojo类所在的包下
User.hbrn.xml
<!-- package声明pojo类所在的包,如果不这么写则要在class中需要指明pojo类所在的包 --> <hibernate-mapping package="cn.siggy.pojo"> <!-- class类映射一个pojo类,提供了公共的无参构造方法(通过反射产生对象), 属性用private修饰, 并且生成对应的get/set方法, 类不能用final修饰,hibernate会产生代理类(cglib), 类需要指明标识,name类名,table表名 --> <class name="cn.siggy.pojo.User" table="user"> <!-- id表示实体类的标识(OID),对应数据库表中主键 --> <id name="id" column="对应数据库的列名,不写则必须列名数据库一致" length="数据库表中对应数据类型的长度,如果不写则由默认数据长度" type="如果不写则hibernate可以找到对应pojo类的属性的类型"> <!-- 主键生成策略 --> <generator class="native"></generator> </id> <!-- 实体类的属性 --> <property name="name" /> <property name="pwd" /> </class> </hibernate-mapping>
将User.hbrn.xml配置文件加入到hibernate.cfg.xml:
<mapping resource="cn/siggy/pojo/User.hbrn.xml"/>
User bean:
package cn.siggy.pojo; public class User { private int id; private String name; private String pwd; 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; } public String getpwd() { return pwd; } public void setpwd(String pwd) { this.pwd = pwd; } }测试:
package cn.siggy.test; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.boot.registry.StandardServiceRegistryBuilder; import org.hibernate.cfg.Configuration; import org.hibernate.service.ServiceRegistry; import cn.siggy.pojo.User; public class Test { public static void main(String[] args) { /* * 1、新建configuration对象 * 2、通过configuration创建sessionfactory对象 * 3、通过sessionfactory得到session * 4、通过session对象得到transaction对象 * 5、保存数据 * 5、提交事务 * 6、关闭session对象 */ Configuration cfg=new Configuration().configure(); ServiceRegistry registry=new StandardSer bada viceRegistryBuilder().applySettings(cfg.getProperties()).build(); SessionFactory sf=cfg.buildSessionFactory(registry); Session session=sf.openSession(); Transaction tx=session.beginTransaction(); User user=new User(); user.setId(0022); user.setName("扎克伯格"); user.setpwd("1100"); session.save(user); tx.commit(); session.close(); } }结果:
相关文章推荐
- Hibernate HelloWorld-05 对象关系映射文件
- Hibernate HelloWorld-06 单向多对一的映射关系
- Hibernate HelloWorld(第一步)
- Hibernate HelloWorld-07 双向多对一的映射关系
- hello world of hibernate Annotation
- Hibernate helloworld xml版本
- Hibernate总结之Hello,World
- hibernate helloworld
- Hibernate HelloWorld-13 hibernate 二级缓存
- Hibernate HelloWorld(一)
- hibernate+maven——helloworld
- 使用hibernate5.2.10编写hibernate helloworld
- Hibernate HelloWorld-02 session概述
- Hibernate's HelloWorld
- Hibernate学习总结(一)——Intellij IDEA下新建Hibernate HelloWorld
- Hibernate HelloWorld-04 Hibernate 的配置文件
- Hibernate HelloWorld-14 批量操作
- Hibernate+HelloWorld 遇到的问题
- Hibernate HelloWorld-10 映射继承关系