您的位置:首页 > 编程语言 > Java开发

使用Eclipse编写第一个Hibernate程序

2017-07-19 14:53 591 查看
本次最终目的是使用Hibernate保存一条数据到数据库中

学习地址:http://www.imooc.com/course/programdetail/pid/48

为什么使用Hibernate

编写大量的SQL语句有诸多缺陷:语法不同、实现方式不同、移植和维护麻烦。抛弃sql思想Hibernate就是一种ORM(Object / Relationship Mapping)框架技术。下图是Hibernate在程序中所处位置:



编写第一个Hibernate程序

help -> Install New SoftWare ->粘贴【http://download.jboss.org/jbosstools/neon/stable/updates/】->点击add然后等等->选择Jboss Web and Java EE Development目录下的Hibernate Tools

新建一个Java Project导入Hibernate、Junit、mysql jar包

创建Hibernate的配置文件,new -> others -> Hibernate下cfg.xml文件

<session-factory>

<property name="connection.username">root</property>

<property name="connection.driver_class">com.mysql.jdbc.Driver</property><property name="connection.url"><![CDATA[jdbc:mysql://127.0.0.1:3306/hibernate?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="Students.hbm.xml"/>


创建持久化类,生成get、set方法。

`

/**

遵循javabean原则

*/

public class Students {

private int sid; // 学号

private String sname; // 名字

private String gender;

private Date birthday;

private String address;

`

创建对象-关系映射文件,生成Students.hbm.xml文件。生成方法类似配置文件那样

通过HibernateAPI编写访问数据库的代码

public class StudentsTest {

// 导入Hibernate中jar包

private Session session;

private SessionFactory sessionFactory;

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

session.close();

// 关闭工厂会话

sessionFactory.close();

}

@Test

public void testSaveStudents(){

Students students = new Students(1, “zhangsan”, “男”, new Date(), “wudangshan”);

// 保存数据库中

session.save(students);

}

}

7.Junit启动

注意jar包版本:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hibernate