博主分享免费Java教学视频,B站账号:Java刘哥
一、新建 Java Project,取名为 Hibernate_001
导入包:参考 Eclipse下创建Hibernate工程二、创建 Hibernate 配置文档
1、点击 src,右键 New,选择 Other 2、选择 Hibernate 下的 第一个,即 Hibernate Configuration file (cfg.xml) 3、点击 Next,选择默认的 src,点击 Next 4、出现一个表单,问是否创建 Session factory name,我们这里暂时不创建,直接点击 Finish 5、如果 xml 文件,代码不能自动提示,可以参考这里 Eclipse手动添加dtd文件使xml能自动提示 6、最终生成的 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><!-- jdbc驱动 -->
- <property name="connection.url">jdbc:mysql://127.0.0.1:3306/hibernate?useUnicode=true&characterEncoding=UTF-8</property>
- <property name="dialect">org.hibernate.dialect.MySQLDialect</property><!-- MySQL方言 -->
- <property name="show_sql">true</property>
- <property name="format_sql">true</property>
- <property name="hbm2ddl.auto">create</property><!-- ddl的生成策略 -->
- </session-factory>
- </hibernate-configuration>
三、创建 持久化类 Student 类
Student.java- import java.util.Date;
- //学生类
- public class Student {
- private int sid;//学号
- private String name;//姓名
- private int sex;//性别
- private Date birthday;//出生日期
- private String address;//地址
- public Student() {
- }
- public Student(int sid, String name, int sex, Date birthday, String address) {
- //super();
- this.sid = sid;
- this.name = name;
- this.sex = sex;
- this.birthday = birthday;
- this.address = address;
- }
- public int getSid() {
- return sid;
- }
- public void setSid(int sid) {
- this.sid = sid;
- }
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public int getSex() {
- return sex;
- }
- public void setSex(int sex) {
- this.sex = sex;
- }
- 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 "Student [sid=" + sid + ", name=" + name + ", sex=" + sex + ", birthday=" + birthday + ", address="
- + address + "]";
- }
- }
四、创建关系映射文件
1、点击 src,右键 New,选择 Other 2、选择 Hibernate 下的 第四个,即 Hibernate XML Mapping file (hbm.xml) 3、点击 Next,Next,Finish 4、最终生成 Student.hbm.xml 文件,我们可以看到以下代码- <?xml version="1.0"?>
- <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
- "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
- <!-- Generated 2017-7-24 20:28:18 by Hibernate Tools 3.5.0.Final -->
- <hibernate-mapping>
- <class name="Student" table="STUDENT">
- <id name="sid" type="int">
- <column name="SID" />
- <generator class="assigned" />
- </id>
- <property name="name" type="java.lang.String">
- <column name="NAME" />
- </property>
- <property name="sex" type="int">
- <column name="SEX" />
- </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>
- <mapping resource="Student.hbm.xml"/>
五、创建数据库
1、博主的本地 mysql 的账号是 root,密码为 空 2、创建数据库 hibernate,utf8编码 3、我们这里不用建数据表,待会儿 Hibernate 会自动帮我生成六、使用 Junit 测试
1、点击 Hibernate_001 项目(不是点 src),右键 New,选择 Source Folder 2、Folder name,填写为 test ,点击 Finish 3、点击 test 文件夹,右键 新建 StudentTest 类 4、StudentTest 代码如下- import java.util.Date;
- import org.hibernate.Session;
- import org.hibernate.SessionFactory;
- import org.hibernate.Transaction;
- import org.hibernate.cfg.Configuration;
- import org.hibernate.service.ServiceRegistry;
- import org.hibernate.service.ServiceRegistryBuilder;
- import org.junit.After;
- import org.junit.Before;
- import org.junit.Test;
- //测试类
- public class StudentTest {
- private SessionFactory sessionFactory;
- private Session session;
- private Transaction transaction;
- @Before
- public void init() {
- //创建配置对象
- Configuration config = new Configuration().configure();
- //创建服务注册对象
- ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(config.getProperties()).buildServiceRegistry();
- //创建会话工厂
- sessionFactory = config.buildSessionFactory(serviceRegistry);
- //创建会话对象
- session = sessionFactory.openSession();
- //开始事务
- transaction = session.beginTransaction();
- }
- @After
- public void destory() {
- transaction.commit();//提交事务
- session.close();//关闭会话
- sessionFactory.close();//关闭会话工厂
- }
- @Test
- public void testSaveStudnets() {
- //生成学生对象
- Student s = new Student(1,"张三丰",1,new Date(),"武当山");
- session.save(s);//保存对象进入数据库
- }
- }
- 微信
- 交流学习,有偿服务
- 博客/Java交流群
- 资源分享,问题解决,技术交流。群号:590480292
您可以选择一种方式赞助本站
支付宝扫一扫赞助
微信钱包扫描赞助
赏