![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hibernate
文章平均质量分 77
hwt_211
这个作者很懒,什么都没留下…
展开
-
hibernate中的集合
一,set set集合是最常用的集合,也是配置最简单的集合,set集合里面是不可以放重复的对象二,list对于list集合,和set集合的最大的区别是list里面的对象进行了排序,对于list的映射文件这样写:dep: private Integer depId;private String depName;private List empList;映射文件:c原创 2012-05-10 07:32:38 · 442 阅读 · 0 评论 -
dynamic-insert,dynamic-update 作用时机
在之前的一个项目中,Team leader说在每一个持久化实体的配置文件中的class元素上加上dynamic-insert="true" dynamic-update="true"可以一定程度上增加与数据库操作相关的速度,当时半信半疑就加上了,也没有自己去进行深入的了解。但最近在练习Hibernate时却发现,事实并非如此,抛开速度上的问题不管,单说加上这两个属性后,这两个属性起作用的时机就大有转载 2012-09-06 09:39:05 · 375 阅读 · 0 评论 -
hibernate的关联
hibernate只会根据映射文件来工作,不会因为你的pojo类来影响一,多对一的关联多对一是用的最多的关系,因为效率比起其他的来都要高些,在多的对象中的pojo中用对象来代替外键的id,这样可以通过多的一方找到外键对象的全部属性在配置文件中many-to-one name="totalMenu" column="totalId" not-null="true">many-to-o原创 2012-05-10 07:31:52 · 1605 阅读 · 0 评论 -
Criteria(1)
相信大家都很喜欢Criteria查询,因为它对查询条件已经查询实体采用松散的组合,不像HQL那样需要拼字符串。但是又会比较抵触它,因为对它的不熟悉,写复杂查询可能会不顺手,一个子查询也可能会很麻烦。今天我用半天时间与大家分享Criteria查询里面弯路比较多的结果集distinct,这个在HQL里面很简单,但在Criteria查询还真是头疼,网上的文章也是很模糊而且讨论的比较片面,我希转载 2012-10-12 09:14:56 · 577 阅读 · 0 评论 -
criteria(2)
Criteria distinct对象结果集这篇文章是上一篇的续, 主要讲述如何使用Criteria查询distinct后的结果集.实体: Java代码 public class Authority { private Long id; private String name;转载 2012-10-12 09:16:10 · 412 阅读 · 0 评论 -
hibernate自己使用视图
1,首先要确定视图的结构<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Mapping file autogenerated by M原创 2012-10-16 10:32:56 · 553 阅读 · 0 评论 -
自定义主键的生成策略
z在想相对应的pojo类的配置文件中设置成以下: length="14" /> 写个MyId的实现类public class MyId implements org.hibernate.id.IdentifierGenerator{//这里不要搞错了,是实现了identifierGenerator的接口//外部原创 2012-05-10 07:38:47 · 598 阅读 · 0 评论 -
hibernate使用jdbc批量插入
Hibernate使用jdbc批量插入 第一种方法:使用PrepareStatement//批量导入(jdbc操作) public void impData(List> datalist,TbUser user)throwsSQLException, IOException{ //首先在dao层得到SessionFactory的实例 S原创 2012-12-18 14:35:53 · 807 阅读 · 0 评论 -
hibernate 视图映射
Hibernate操作视图首先我们要知道,对于视图其实就是存储了一条sql语句,对多个表进行关联查询后得到一个视图,对于关联较多的表可以很方便,hibernate可以使用两种操作方法一, 一种是在数据库中建立视图,然后可以把视图当做普通的表一样进行映射操作 二, Hibernate操作视图,此视图是把sql语句放在hiberna原创 2012-10-16 09:24:20 · 2852 阅读 · 0 评论 -
hibernate的锁
一,悲观锁:悲观锁就是说当一个用户在访问数据库中的一条记录的时候,其他的所有人都不能访问,知道事务被提交为止,悲观锁的实现需要借助于数据库;悲观锁实际上就是使用sql语句来跟记录加锁的//悲观锁不支持lazy,下面的load会马上出现sql语句,悲观锁是借助于数据库来实现的Inventory inventory = (Inventory) session.load(Invent原创 2012-05-10 07:36:07 · 384 阅读 · 0 评论 -
hql和criteria
Hql:在查询多个对象的时候:"select e.empName,d.depName from Emp e , Dep d where e.depId = d.depId "; 需要用list来接收,如果只有一条记录,那么就是用object[] 来接收 ·query对象的几个重要的方法query.setFirstResult( n ) , query.setMaxResults(原创 2012-05-10 07:33:13 · 545 阅读 · 0 评论 -
对hibernate的set集合进行排序
在hibernate中,对于一对多和多对多的关联会使用Set集合来操作,但是有时候在业务中需要对set集合中的对象进行排序,当然,我们可以将Set集合改成list集合来存放对象,但是用list的话又要在数据库中新增一个字段,我不想改变数据的结构,那么,我们应该怎么样对Set排序呢?部门表(dept)-------------员工表(emp)部门的pojo类:public class原创 2012-05-18 16:45:26 · 1226 阅读 · 0 评论 -
hibernate基础
步骤:·先拷贝hibernate开发包到lib下面,jdbc开发包到lib ·拷贝Log4j的属性文件到src下面,复制总的配置文件hibernate.cfg.xml到src下面,配置里面的内容 ·对于新建的pojo类要对应的建一个 pojo类名.hbm.xml的配置文件(头子要注意复制进来) ·在hibernate.cfg.xml中添加pojo类的配置文件一se原创 2012-05-10 07:31:00 · 434 阅读 · 0 评论 -
hibernate -search
Hibernate-search的步骤1,先用hibernate生成了相应的pojo类,和dao层中的对应的类 (在生成的时候最好用hibernate的映射方式生成,不用copy方式,因为反正在后面要删除,便于删除)2,至关重要的一步:偷梁换柱--> 先是工程的右键--》build Path --->configure build path --> libraries --> 删掉刚才原创 2012-05-10 07:38:18 · 935 阅读 · 0 评论 -
hibernate的缓存
缓存缓存的作用主要用来提高性能,可以简单的理解为一个Map;使用缓存涉及到三个操作:把数据放入缓存、从缓存中取出来、删除缓存中的无效数据;Hibernate把事务交给了第三方的缓存框架来处理一级缓存:(session级别)一级缓存在hibernate中是不要配置的,一级缓存是放在session中的,save,update,saveOrUpdate load ,get ,list ,原创 2012-05-10 07:33:41 · 375 阅读 · 0 评论 -
hibernate的继承关系
继承关系:对于pojo类,Employee中放所有员工的相同属性,不同的子类就只放子类的特有属性,子类再继承父类如: Employee (员工表) Seller(员工中的销售人员) Skiller(员工中的技术人员)对于继承关系分为四种情况:1,当子类中的特有属性很少,可以直接建立在原创 2012-05-10 07:35:17 · 358 阅读 · 0 评论 -
hibernate+spring的整合
一,新建一个web工程,添加hibernate的支持(要选择copy方式来引入jar包,不要用映射方式的,而且要注意不要创建hibernate的sessionFactory的类)二,随即添加spring的支持(要选择copy方式来引入jar包,不要用映射方式的,在选择的时候选择五个jar包,前面三个,和web和mis)三,偷梁换柱,把asm2.2.3的这个包删掉,build pat原创 2012-05-09 15:34:17 · 408 阅读 · 0 评论 -
懒加载
懒加载(asm.jar 和 cglib.jar 实现)一,load: 与get的区别:·load不会马上加载,等到你调用的时候才加载,如果是get的话,会马上查询 ·load不会出现null , 就算查到的没有对象,也不会返回空对象,而是一个代理对象public static void main(String[] args) {Emp emp =原创 2012-05-10 07:35:39 · 353 阅读 · 0 评论 -
cascade和inverse属性
一,cascade 级联Cascade用来说明当对主对象进行操作的时候是否对其从对象也进行类似的操作:none,all ,save-update,delete,lock,refresh,evict,replicate,persist,merge, delete-orphan(对于这个是删除孤儿对象的,对于员工和部门两个对象,如果员工的部门改变了,并且这个部门在部门表中并没有,比如说设置原创 2012-05-10 07:34:49 · 367 阅读 · 0 评论 -
hibernate+spring+struts1
ssh整合的步骤对于ssh的整合,先加载hibernate ,然后加入spring,然后整合hibernate+spring , 测试sh的整合,如果整合通过,就加入struts, 再整合spring + struts , 通过页面测试,然后再增强ssh框架的健壮性:如加入二级缓存,中文字符过滤器,openSessionInview过滤器等步骤:1,添加hibernate支持,原创 2012-05-09 15:38:30 · 485 阅读 · 0 评论 -
hibernate 泛型BaseDAO
public interface BaseDao { /** * 根据ID查找对象 * * @param entityClass 实体对象类 * @param id * @return 实体对象 */ public T findById(Class entityClass,Serializable id); /** * 根据查找所有对象 * *原创 2013-11-12 17:04:07 · 2367 阅读 · 0 评论