hibernate的增删改查和三种状态
来源:互联网 发布:真丝睡衣 知乎 编辑:程序博客网 时间:2024/05/29 09:07
package com.lanou.hibernate;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import com.lanou.hibernate.bean.User;
//游离——>临时delete() ->持久update->临时状态(delete)
public class TestMain{
public static void main(String[]args) {
Configurationconfig;
SessionFactorysf;
Sessionsession;
Transactiontx =null;
try{
config= newConfiguration().configure();
sf= config.buildSessionFactory();
session= sf.openSession();
tx= session.beginTransaction();
Useryufei =session.get(User.class,8);
Useruser =session.get(User.class,8);
yufei.setUsername("888");
System.out.println(user.getUsername());
/*---------------------------三种状态----------------------------------*/
/*
* User user = new User(); // 临时状态下 // 当一个数据没有id时,处于临时状态
* user.setUsername("malijie");
* user.setPwd("meiyouchijiuzhuangtai");
*
* // session.update(user); // 增和放一块,先根据id查找,要是有就更新
* session.saveOrUpdate(user); // 持久状态下 持久状态下的内容时刻和数据库绑定在一起
*
* System.out.println(user.getId()); user.setPwd("3miaozhong");
* tx.commit(); // 脱管态 /游离状态 和数据库没有紧密联系,不归transcation管理 ,事务提交后
* user.setPwd("aaaaaa");
* /*-----------------------------------增、删、改、查---------------------
* -------------------------------------
*/
// 使用hibernate添加一条数据的 过程
// User user=new User();
// user.setUsername("cuixuefei");
// user.setPwd("123");
//
// User user1=new User();
// user1.setUsername("xuweibing");
// user1.setPwd("455");
// session.save(user);
// int a=1/0;
// session.save(user1);
// 使用hibernate查找一条数据的过程
// User user=session.get(User.class, 1); //load 可以报错 get数据库没有值返回空
// 持久态
// if(user!=null){
// System.out.println(user.getId()+" "+user.getUsername()+"
// "+user.getPwd());
// }
// 使用hibernate删除一条内容
// User user = new User();
// user.setId(3);
// session.delete(user);
// User user = new User();
// user.setId(1);
// user.setUsername("uuu");
// user.setPwd("999");
// session.update(user);
// tx.commit();
}catch (Exceptione) {
e.printStackTrace();
tx.rollback();
}
System.exit(0);
// // 装配着模式 configure() 为了加载配置文件
// Configuration cfg = new Configuration().configure();
// // 创建sessionfactory工厂
// SessionFactorysf = cfg.buildSessionFactory();
// // 系统和数据库的会话
// Session session = sf.openSession();
// // 事务:Transaction
// // 一致性
// // 打开一个事务
// Transaction tx = session.beginTransaction();
// // 执行数据库动作
//
// User user=new User();
// user.setUsername("wangyu");
// user.setPwd("123456");
// //保存数据
// session.save(user);
//
//
// //事务提交
// tx.commit();
// //事务回滚 失败
// // tx.rollback();
// System.out.println("数据库链接成功!");
}
}
user.hbm.xml
<?xmlversion="1.0"encoding="UTF-8"?>
<!DOCTYPEhibernate-mapping PUBLIC"-//Hibernate/Hibernate Mapping DTD//EN""http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
<!-- 映射实体类 -->
<class name="com.lanou.hibernate.bean.User" table="tb_user">
<id name="id" >
<!--id的生成规则 -->
<generatorclass="native"></generator>
</id>
<propertyname="username" ></property>
<propertyname="pwd" ></property>
</class>
</hibernate-mapping>
- hibernate的增删改查和三种状态
- Hibernate概念深入和增删改查以及三种对象状态
- Hibernate的增删改查
- Hibernate的增删改查
- Hibernate的增删查改
- Hibernate的增删改查
- Hibernate 的增删改查
- Hibernate的增删改查
- hibernate的增删改查
- Hibernate的增删改查
- Hibernate的增删改查
- hibernate的增删改查
- Hibernate的增删查改
- hibernate的增删改查
- Hibernate实现增删改查以及和JDBC的关系
- hibernate核心API和级联的增删改查(CRUD)
- 学习笔记: hibernate的环境搭建和增删改查
- hibernate增删查改
- 神经网络相关名词解释
- 51nod 1678 lyk与gcd mobius反演
- 选择排序
- 查询算法
- 8月英语学习总结
- hibernate的增删改查和三种状态
- Centos7安装部署Redis3.2.9 (普通用户)
- 题目84:阶乘的0
- python import
- 关于对象创建及初始化的面试向理解
- webrtc 接收packt包后处理
- Codeforces 877(442 Div.2) B. Nikita and string
- angularJs购物车
- iOS计算一段代码执行时间