您的位置:首页 > 其它

开发第一个Hibernate项目,实现插入数据功能

2013-08-19 20:17 513 查看

开发Hibernate项目实现插入数据:

(1) 新建web项目,导入hibernate必须的jar包。(2) 编写数据库表对应的实体类User实现Serializable接口,添加默认的构造方法。
publicclassUserimplements Serializable{private Integer id;private String loginName;private String loginpwd;public User() {super();} get/set方法}
(3) 添加映射文件User.hbm.xml,告知hibernate框架实体类User映射到数据库中的那个表,以及哪个属性对应数据库表的哪个字段。
<hibernate-mapping><classname="com.bean.User"table="user"catalog="hbmDB"><idname="id"type="java.lang.Integer"><columnname="id"/><generatorclass="native"></generator></id><propertyname="loginName"type="java.lang.String"><columnname="loginName"length="50"/></property><propertyname="loginpwd"type="java.lang.String"><columnname="loginpwd"length="16"/></property></class></hibernate-mapping>
(4) 在src下添加Hibernate配置文件,默认文件名为hibernate.cfg.xml
<hibernate-configuration><session-factory><propertyname="show_sql">true</property><propertyname="myeclipse.connection.profile">hbmdb</property><propertyname="connection.driver_class">com.mysql.jdbc.Driver</property><propertyname="connection.url">jdbc:mysql://localhost:3306/hbmdb</property><propertyname="connection.username">root</property><propertyname="connection.password">123</property><propertyname="dialect">org.hibernate.dialect.MySQLDialect</property><mappingresource="com/bean/User.hbm.xml"/> //引入实体类User的映射信息配置</session-factory></hibernate-configuration>
(5) 写一个测试类,向数据库表中插入数据
publicclass TestAdd {publicstaticvoid main(String[] args) {new TestAdd().addUser();}privatevoid addUser(){//建立持久化对象User user = new User();user.setLoginName("admin");user.setLoginpwd("000");//1.初始化,读取配置文件hibernate.cfg.xmlConfiguration config = new Configuration().configure();//2.读取创建sessionFactorySessionFactory sessionFactory = config.buildSessionFactory();//3.打开sessionSession session = sessionFactory.openSession();//Transaction transaction = null;/** * Session的save方法必须在事务环境中完成,并需使用commit方法提交事务, * 才能成功的将记录插入到数据库表中。* 事务要么全部完成要么全部不完成,当发生异常时,事务应该回滚到起点 */try {//4.开始一个事务transaction = session.beginTransaction();//5.持久化操作session.save(user);//6.提交事务transaction.commit();} catch (Exception e) {/*** 当发生异常时,事务应该回滚到起点 */System.out.println("发生异常:"+e);if(transaction!=null){transaction.rollback();//事务回滚}}finally{session.close();//7.关闭session}}}
本文出自 “乐乐等待花开” 博客,请务必保留此出处http://lele185039.blog.51cto.com/5801618/1277237
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐