使用Eclipse编写第一个Hibernate程序
- 本次最终目的是使用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包版本:
- 注意jar包版本:
推荐阅读
-
使用PHP编写发红包程序
-
使用Python的Twisted框架编写非阻塞程序的代码示例
-
编写高质量代码改善C#程序——使用泛型集合代替非泛型集合(建议20)
-
eclipse3.62开发第一个java程序HelloWorld
-
使用Python的Flask框架来搭建第一个Web应用程序
-
springboot系列之03-使用IDEA完成第一个示例程序
-
使用PHP编写发红包程序
-
vs2015怎么编写第一个windows程序?
-
微信小程序授权 获取用户的openid和session_key【后端使用java语言编写】,我写的是get方式,目的是测试能否获取到微信服务器中的数据,后期我会写上post请求方式。
-
java基础------环境变量的配置及编写第一个程序