Hibernate快速入门案例——手动修改和删除记录
来源:互联网 发布:tm域名有必要注册吗 编辑:程序博客网 时间:2024/06/18 09:46
一 SessionFactory的封装
1 SessionFactory应用场景
2 代码
package com.cakin.util;import org.hibernate.SessionFactory;import org.hibernate.cfg.Configuration;//在使用hibernate开发项目时,请一定保证只有一个SessionFactory//一个数据库对应一个SessionFactoryfinal public class MySessionFactory { private static SessionFactory sessionFactory=null; private MySessionFactory(){ } static{ sessionFactory=new Configuration().configure().buildSessionFactory(); } public static SessionFactory getSessionFactory(){ return sessionFactory; }}
二 测试代码优化
1 代码和数据库对照图
2 代码
package com.cakin.view;import java.util.Date;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import com.cakin.domain.Employee;import com.cakin.util.MySessionFactory;public class TestMain { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub //查询【load】->hql语法(hibernate query language) delEmp(); } private static void delEmp() { //删除 Session session=MySessionFactory.getSessionFactory().openSession(); Transaction transaction=session.beginTransaction(); //先获取该雇员 Employee employee =(Employee)session.load(Employee.class, 1);//select语句 session.delete(employee); transaction.commit(); session.close(); } private static void updateEmp() { //修改用户 //获取一个会话 Session session=MySessionFactory.getSessionFactory().openSession(); Transaction transaction=session.beginTransaction(); //修改用户 //1、获取要修改的用户 //load是通过主键属性,获取对象实例<-------->表的记录对应 Employee employee =(Employee)session.load(Employee.class, 1);//select语句 //2、修改 employee.setName("xiaoming");//update employee.setEmail("abc@22.com"); transaction.commit(); session.close(); } private static void addEmployee() { //我们使用对hibernate完成crud操作,只里只见对象,不见表 // 现在我们不用service,直接测试 //1、创建Configuration,该对象用于读取hibernate.cfg.xml,并完成初始化 Configuration configuration = new Configuration().configure(); //2、创建SessionFactory,这是一个会话工厂,是一个重量级的对象 SessionFactory sessionFactory=configuration.buildSessionFactory(); //3、创建Session,向当于jdbc的Connection Session session = sessionFactory.openSession(); //4、要求程序员在进行增删改的时候使用事务提交,否则不生效 Transaction transaction=session.beginTransaction(); //添加一个雇员 Employee employee = new Employee(); employee.setName("cakin"); employee.setEmail("cakin@qq.com"); employee.setHiredate(new Date()); //保存 session.save(employee); //inert into ...[被hibernate封装] transaction.commit(); session.close(); }}
三 domain类增加序列化
package com.cakin.domain;/* * 建议我们的domain对象的名称就是对应表的首字母大写 * domain、javabean、pojo【plain old/ordinary java object 简单的java对象】 * 该pojo按照规范应该序列化,目的是可以唯一的标识该对象,同时可以在网络和文件传输 */public class Employee implements java.io.Serializable{ /** * */ private static final long serialVersionUID = 1L; private Integer id; private String name; private String email; private java.util.Date hiredate; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public java.util.Date getHiredate() { return hiredate; } public void setHiredate(java.util.Date hiredate) { this.hiredate = hiredate; } }
阅读全文
0 0
- Hibernate快速入门案例——手动修改和删除记录
- Hibernate快速入门案例——手动增加记录
- hibernate快速入门案例
- struts的快速入门案例(用户登录验证)——手动配置方式
- Hibernate快速入门案例——让hibernate到映射文件到表的转换
- 【JavaEE—Hibernate】Hibernate入门案例
- Hibernate 4.3.11快速入门案例
- Hibernate介绍和入门案例
- Hibernate基础:快速入门(5):删除数据
- Hibernate基础:快速入门(6):修改数据
- struts1快速入门案例和细节说明
- Hibernate快速入门—新手Hibernate详细配置步骤介绍
- 快速删除数据库和备份记录
- 【01】框架学习—Hibernate第一个入门案例
- 【02】框架学习—Hibernate第一个入门案例详解
- Hibernate 统一的修改和删除源码
- visual c# 修改和删除数据记录
- Hibernate之入门案例
- UFT基础_文件创建读写及文件夹创建删除
- Linux 利用nginx源码编译安装nginx
- polya 定理总结
- SpringCloud教程第一篇:服务的注册与发现(Eureka)
- 剑指Offer 面试题18:删除链表节点 Java代码实现
- Hibernate快速入门案例——手动修改和删除记录
- 第一个小小程序
- 线程池异步回掉的简单例子
- CocosCreator
- C语言中常用const声明常量有什么好处呢?(get了吗?)
- NOIP2008提高组
- 2017开学训练第十二周周中总结
- java基础8:properties集合,序列化,打印流,commons-IO,对应案例
- Canvas和svg的区别