Hibernater笔记
1、导入Hibernate包
2、新建配置文件(Hibernate.cfg.xml):
<?xml version="1.0" encoding="utf-8" ?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/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/test</property>
<!-- 数据库用户名和密码 -->
<property name="connection.username" >root</property>
<property name="connection.password" ></property>
<!-- 配置dialect方言,明确告诉hibernate连接是哪种数据库 -->
<property name="dialect">org.hibernate.dialect.MySQLDialect</property>
<!--指定管理的映射文件-->
<mapping resource="com/lh/test/LoginHibernate.hbm.xml" />
</session-factory>
</hibernate-configuration>
3 、开发domain对象(代码已隐藏);
4、开发domian对象和对象关系的映射文件: ***.hbm.xml ,一般和domian对象放同一包下
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--明确需要映射类路径-->
<hibernate-mapping package="com.lh.test">
<!--明确需要映射类名以及和数据库关联的表-->
<class name="LoginHibernate" table="userlogin">
<!--id元素,指定主键属性,mysql用identity指定自增长column是对象属性的值,name为表的字段-->
<id column="uid" name="uid" type="java.lang.Integer">
<generator class="identity"></generator>
</id>
<!--指定对象属性名以及类型-->
<property name="uname" type="java.lang.String"></property>
<property name="upassword" type="java.lang.String"></property>
<property name="rank" type="java.lang.Integer"></property>
<property name="star" type="java.lang.String"></property>
</class>
</hibernate-mapping>
5、测试:
public static void test(){
Session session=new Configuration().configure().buildSessionFactory().openSession();
Transaction transaction=null;
try {
transaction=session.beginTransaction();
LoginHibernate loginHibernate = new LoginHibernate();
loginHibernate.setUname("新建测试");
loginHibernate.setUpassword("test");
loginHibernate.setRank(510);
loginHibernate.setStar("五星");
session.save(loginHibernate);
transaction.commit();
session.close();
} catch (Exception e) {
if(transaction!=null){
transaction.rollback();
}
throw new RuntimeException(e.getMessage());
}finally{
if(session!=null&&session.isOpen()){
session.close();
}
}
}
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。