欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

hibernate 对实体类的curd操作知识点以及代码

程序员文章站 2022-04-13 22:15:32
...

友情提示:

实体类编写规则

1 实体类里面属性私有的

 

2 私有属性使用公开的set和get方法操作

 

3 要求实体类有属性作为唯一值(一般使用id值)

 

4 实体类属性建议不使用基本数据类型,使用基本数据类型对应的包装类

(1)八个基本数据类型对应的包装类

- int  Integer

- charCharacter、

- 其他的都是首字母大写 比如 double  Double

(2)比如 表示学生的分数,假如 int score;

- 比如学生得了0分 ,int score = 0;

- 如果表示学生没有参加考试,int score = 0;不能准确表示学生是否参加考试

 

 

 

 

 

  1. 解决:使用包装类可以了, Integer score = 0,表示学生得了0分,
  2. 表示学生没有参加考试,Integer score = null;

 

package cn.com.test;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.junit.Test;
import cn.com.pack.Customer;
import cn.com.util.Hibernate_Utils;
public class Demo {
/*作者:命运的信徒
 * 时间:2018/11/23
 *目的:对实体类的crud 
 */
	@Test
	public  void test(){
		//1.数据库的连接
		Session session=Hibernate_Utils.openSession();
		//开启事务
		Transaction tx=session.beginTransaction();
		//2.添加操作
		/*//new是瞬时状态
		Customer c=new Customer(1, "螣蛇", "56", "仙女", "A", "15656215623", "0562");
		//session 的save操作是持久状态
		session.save(c);
		//3.事务提交
		tx.commit();
		//4.释放资源
		session.close();*/
		
		//2.1根据id进行查询
		/*long id=3;
		Customer s=session.get(Customer.class,id);
		System.out.println(s.getCust_name());
		tx.commit();
		session.close();*/
		
		//2.2修改操作
		/*long i=5;
		Customer c=session.get(Customer.class,i);
		c.setCust_name("李倩");
		session.update(c);
		session.save(c);
		tx.commit();
		session.close();*/
		
		
		//2.3删除操作
		long i=8;
		Customer c=session.get(Customer.class, i);
	    session.delete(c);
	    tx.commit();
	    session.close();
	}
}