1.阻抗不匹配

Java是面向对象语言、对象模型,其主要概念有:继承、关联、多态

数据库是关系模型,其主要概念有:表、主键、外键等

2.解决办法

1.用JDBC转换

2.使用ORM(object relation mapping对象关系映射)框架来解决,主流ORM框架有hibernate、Toplink、OJB

三、

  1.domain对象必须有一个无参构造器

  2.domain对象如果用final,懒加载就不能用了,load时会产生对象的子类

  3.实体类映射文件(主键、主键生成器、属性名、字段名)

  4.save和persist,当没开启事务时,save先插入,再回滚。而persist根本不会插入。

  5.saveOrUpdate、merge

四、saveOrUpdate、merge

1.瞬时:数据库中没有与之对应的,超过作用域会被JVM垃圾回收器回收,一般是一个new出来的对象与session没有关联的对象

2.持久:数据库中有数据与之对应,之前与session有关,并且相关联的的session没有关闭,事务没有提交。持久对象状态的发生改变,在事务提交时会影响到数据库

3.托管:数据库中有数据与之对应,但当前没有session与之关联,托管对象状态发生改变,hibernate检测不到。

 

 五、异常

1.表名和字段名冲突,自定义表名和字段名或用反引号

六、hql查询和条件查询

 

 

相关文章:

  • 2021-12-31
  • 2022-12-23
  • 2021-10-03
  • 2021-08-22
  • 2021-04-23
  • 2021-09-28
  • 2022-01-04
猜你喜欢
  • 2021-04-14
  • 2022-01-16
  • 2021-09-26
  • 2021-11-08
  • 2021-08-28
  • 2022-01-29
  • 2021-10-13
相关资源
相似解决方案