hibernate--8.实体类操作

来源:互联网 发布:中医软件下载 编辑:程序博客网 时间:2024/05/22 09:47

1       对实体类crud操作

1.1  (save)添加操作

1 调用session里面的save方法实现


1.2  (get)根据id查询—oid

1 调用session里面的get方法实现


1.3  (update)修改操作

1 首先查询,修改值

(1)根据id查询,返回对象

       也可以像delete那样定义实体类修改,不过在赋值时就需要写完所有字段,如果只写修改字段,得到的结果就只有 修改字段 ,其他字段就会为空 ;原因也简单,因为你新的实体类里面只有修改字段

2.sql输出

 

1.4  (delete)删除操作—oid

1 调用session里面delete方法实现

 

 

 

2       实体类对象状态

2.1   状态转换图


2.2  三种状态

2.2.1   瞬时态:

对象里面没有id值,对象与session没有关联

2.2.2   持久态:

对象里面有id值,对象与session关联

 

2.2.3   托管态:

对象有id值,对象与session没有关联

 

2.2.4   补充:移除态

是实体从数据库删除后的状态 

  

2.3  saveOrUpdate

实现添加、实现修改

2.3.1   瞬时态—执行添加

2.3.2   持久态、托管态—执行修改

 

 

3      持久化类的设计

1 实体类里面属性私有的

 

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

 

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

 

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

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

       nt– Integer

       char—Character、

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

 

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

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

解决:

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

 

 

 

 


4     Session的获得