![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Hibernate
天亮哥
学无止境。
展开
-
Hibernate主键生成策略generator
Hibernate提供的内置标识符生成器: 一、increment 标识符生成器increment 标识符生成器由 Hibernate 以递增的方式为代理主键赋值Hibernate 会先读取 NEWS 表中的主键的最大值, 而接下来向 NEWS 表中插入记录时, 就在 max(id) 的基础上递增, 增量为 1.适用范围:由于 increment 生存标识符机制不依赖于底层数据库系统, 因...原创 2018-04-14 20:37:05 · 325 阅读 · 0 评论 -
2018-5-14 综合查询(Hibernate的ORM查询)
今日工作:今日完成了一部分的报表查询任务,并把后台的持久层DAO改写了一下,利用Hibernate的ORM特性1、优先考虑下Criteria来实现、其次HQL、最后考虑原生SQL2、dao层查询出实体对象,在Service层解封组装层DTO向Controller返回3、Controller直接对数据进行返回或者,再次打包与前台进行交互。明日计划:继续完成DAO和Service的修改工作,并且利用今...原创 2018-05-15 09:24:48 · 122 阅读 · 0 评论 -
2018-5-10 日志记录(Spring异常处理)
今日工作:大致了解了一下SpringMVC的异常处理,但是还是不能都掌握其中的知识。1、controller、service、dao中任意一处需要手动抛出异常2、如果与业务功能相关的异常,建议在service中抛出异常3、与业务功能没有关系的异常,建议在controller中抛出明日计划:开始仓库管理系统的报表查询...原创 2018-05-15 09:17:13 · 198 阅读 · 0 评论 -
2018-5-9 日志记录(MiniUI元素获取问题)
今日工作: 今天把仓库管理系统的核心业务入库写完了,并且每一个结果都单独做了测试,通过入库的基本步骤,把Spring 的事务处理流程有了一个大致的了解,通过Spring来接管Hibernate的事务处理。问题:今天遇到了一个MIniUI的问题,在MiniUI的不同控件中间定义了同一个属性的id,在取得元素对象的时候,怎么都拿不到对象,无论是否利用Jquey的元素过滤器。解决:项目中的id一定要保持...原创 2018-05-15 09:11:33 · 1141 阅读 · 0 评论 -
2018-5-7 日志记录
今日工作:完成入库单的增加、删除、查询;安排给NET开发组的同事,讲了下SVN的使用,并做了服务的搭建以及相关软件的操作。问题:报表查询的时候多个实体的属性不会处理,卡在报表的查询哪里。解决:暂时没解决明日计划:完成报表的查询,完善入库的过程。...原创 2018-05-07 23:28:12 · 98 阅读 · 0 评论 -
2018-5-18 日志记录
今日工作:完成了入库单、明细展示、产品的选择功能点,入库的过程还在优化的改写,改掉以前那些不好的写法,通过Hibernate的特性来解决联查的问题,把数据传输规范化,界面和Service的交互,通通交给DTO来传输,实体类只暴露在Service层面。问题:DTO和实体类之前的转换问题,属性的复制是手动的效率不是很高。解决:首先使用手动的把数据复制过去,抓换成需要的数据对象;在之前的基础上使用一些很...原创 2018-05-18 23:16:33 · 89 阅读 · 0 评论 -
2018-4-26日志记录(Spring的集合属性)
今日工作:把Spring结合属性的一些注入方式写了一下,自己手动实验了几种常用的注入方式。接口注入:接口注入模式因为具备侵入性,它要求组件必须与特定的接口相关联,因此并不被看好,实际使用有限Setter注入:对于习惯了传统 javabean 开发的程序员,通过 setter 方法设定依赖关系更加直观构造注入:在构造期间完成一个完整的、合法的对象。所有依赖关系在构造函数中集中呈现。依赖关系在构造时由...原创 2018-04-27 21:41:14 · 120 阅读 · 0 评论 -
hibernate -- Criteria查询《转载》
hibernate -- Criteria查询原文地址:https://www.cnblogs.com/liuconglin/p/5721863.html#_labelTop作者:liuconglin博主写的不错,大家可以去看看哦!受益匪浅。文章转载,如有侵权,私信删除。项目中用到了criteria的查询方式,觉得挺好用的,下班后找了一下资料,一边测试,一边在博客上面记录下来一、如何使用查所有/*...转载 2018-05-17 00:14:43 · 281 阅读 · 0 评论 -
2018-5-15 日志记录
今日工作:今天完成了dao和service的改写,在service组装DTO的数据,并把数据向controller丢,利用DTO在控制层和服务层进行数据交互。问题:写DAO的时候,利用Criteria来实现查询的时候,设置级联查询的时候,一直不知道怎么关联。直接采用了HQL的语法,用对象的属性名去访问关联的对象数据,一直提示HQL解析错误。解决:需要设置级联关系,把数据表的关联关系建立起来,然后取...原创 2018-05-17 00:04:55 · 102 阅读 · 0 评论 -
Hibernate update 和 merge 、saveOrUpdate的区别《转载》
this.getSession().update(obj);this.getSession().merge(obj);this.getSession().saveOrUpdate(obj); 原文地址:http://www.cnblogs.com/ranger2016/p/3843917.html作者:Ranger05261. update 和 merge的区别首先在执行更新操作的时候,两...转载 2018-05-16 23:57:35 · 138 阅读 · 0 评论 -
2018-5-9 日志记录
今日工作:问题及解决:1、在做单元测试中设置属性的时候出现空指针异常信息,这是属性没初始化导致的:private Set<Product> products = new HashSet<Product>();2、hibernate的多表查,获取属性的时候,数据转换异常,Hibernte从Oracle的数据库查询出来的数据属性是BigDecimal类型的,在转换Integer...原创 2018-05-09 23:02:53 · 98 阅读 · 0 评论 -
2018-5-8 日志记录
今日工作:今日完成了入库所必须的几个接口,所有的依赖写完。问题:遇到了空指针异常。java.lang.NullPointerExceptionjava.lang.NullPointerException at com.my.product.controller.ProductController.query(ProductController.java:298) count(p...原创 2018-05-09 22:44:44 · 100 阅读 · 0 评论 -
2018-4-20 日志记录
今日工作:将MiniUI的前端框架添加进入我的项目中,准备好一些页面,为后面的开发做准备;测试了一下Hibernate的update机制,new 一个实体类的对象,此时对象处于瞬时状态,如果使用update的持久化操作,会导致出库的数据丢失。问题:new 一个实体类的对象,此时对象处于瞬时状态,直接调用update更新,导致数据丢失。解决:1、更新实体类之前把数据从数据库查出来,让后改变一部分数据...原创 2018-04-20 20:15:45 · 99 阅读 · 0 评论 -
2018-4-18 日志记录
今日工作:今日完成了所有的实体关系映射,把dao层的基本增加、删除、修改、更新写完了,并测试了一部分的数据。问题及解决:1、添加产品的时候,我手动开启了事务,但是在测试的时候,我没有自己手动去提交事务,导致每次数据保存了,也有相关的SQL语句,但是数据库里面没有值,忽略了事务导致数据没进入数据库。2、实体之间的映射关系,一开始双向的关系都由双方来维护,在插入测试的时候发生了冲突,导原创 2018-04-18 23:28:01 · 96 阅读 · 0 评论 -
2018-4-12 日志记录(Hibernate指定字段查询)
今日工作:今日完成Hibernate的一些练习,看了 一些Hibernate的书籍,理解一些细节。问题:使用hql查询的时候出现类型转换错误String hql = "SELECT new Product(p.id, p.name) from Product p";查出来是java.lang.Object,导致类型转换异常。解决办法:Hibernate 使用查询部分字段,有三种字现方式:第一种是使...原创 2018-04-12 22:56:10 · 156 阅读 · 0 评论 -
2018-4-11日志记录(Hibernate温习)
今日工作:今日完成Hinernate的一些入门级别的练习,温习了之前学习过的知识点,总结下开发步骤:很经典的一个例子,我们来这写一个HelloWord入门例子。1、我们来搭建hinernate的环境. 首先新建一个JAVA项目,建立一个lib目录,用来放hibernate的库文件。1)、添加所需要的jar包2)、配置hibernate.cfg.xml文件<session-factor...原创 2018-04-11 21:50:23 · 154 阅读 · 0 评论 -
2018-4-16 日志记录(双向多对多)
今日工作:今日完成了Hibernate多对多的映射关系,从xml的配置到注解的配置,对单、双向的N-N有了新的认识,特别是维护数据的时候,不能双方都维护,应该交给另一方维护,不然会数据冲突。解决:在进行双向N-N的配置的时候,在配置 @JoinTable( // 配置中间表的属性,表名和关联的两个实体的列明 name="Catogory_Item", ...原创 2018-04-16 21:40:41 · 113 阅读 · 0 评论 -
2018-5-29 日志记录
今日工作:修复了入库时遍历查询BUG,在进行入库的时候,我把数据拿到了内存进行遍历,会导致程序的查询性能变低,甚至导致程序直接卡死。问题:查询数据集合过大,在内存进行遍历,不符合开发的场景解决:每一次使用Hibernate拿到查询条件,直接调用DAO进行查询,不再拿到集合进行数据遍历明日计划:明日把控制层改成Restful的风格,返回默认是Spring MVC进行封装的JSON串。...原创 2018-05-31 00:30:45 · 137 阅读 · 0 评论