
Hibernate
JonyShan
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spring 事物机制总结
Spring两种事物处理机制,一是声明式事物,二是编程式事物声明式事物1)Spring的声明式事务管理在底层是建立在AOP的基础之上的。其本质是对方法前后进行拦截,然后在目标方法开始之前创建或者加入一个事务,在执行完目标方法之后根据执行情况提交或者回滚事务。声明式事务最大的优点就是不需要通过编程的方式管理事务,这样就不需要在业务逻辑代码中掺杂事务管理的代码,只需在配置文件中做相转载 2017-03-19 21:47:32 · 206 阅读 · 0 评论 -
org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleT
org.hibernate.MappingException: Could not get constructor for org.hibernate.persister.entity.SingleTableEntityPersister at org.hibernate.persister.internal.PersisterFactoryImpl.create(PersisterFacto原创 2017-04-13 16:43:17 · 504 阅读 · 0 评论 -
Intellij IDEA的Hibernate简单应用
1、创建数据库及其表create database demo; use demo;CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(50) DEFAULT NULL, `password` varchar(50) D转载 2017-04-10 23:17:43 · 471 阅读 · 0 评论 -
Hibernate的延迟加载(3)——集合的延迟加载
集合的延迟加载是在一对多和多对多中应用lazy为true时@Testpublic void TestQuery(){ Session session = HibernateUtils.getSession(); try { //这里没有发出sql语句 Team team = (Team) session.load(Team.class, 1); //因为这里只用到非集原创 2017-03-13 15:10:04 · 222 阅读 · 0 评论 -
Hibernate的延迟加载(2)——类的延迟加载
在配置文件设置延迟加载控制延迟加载,默认为true --> Session的Get()方法没有延迟加载效果@Testpublic void queryGet(){ Session session = HibernateUtils.getSession(); Transaction tx = session.beginTrans原创 2017-03-13 15:04:14 · 212 阅读 · 0 评论 -
Hibernate的延迟加载(1)——什么是延迟加载
1.延迟加载,也叫懒加载,它是Hibernate为提高程序执行效率而提供的一种机制,即只有真正使用该对象的数据时才会创建。2.Hibernate中主要是通过代理(proxy)机制来实现延迟加载。它的具体过程:Hibernate丛数据库获取某一个对象数据时、获取某一个对象的集合属性值时,或获取某一个对象所关联的另一个对象时,由于没有使用该对象的数据,hibernate并不是数据库加载真正的数原创 2017-03-13 15:01:34 · 868 阅读 · 0 评论 -
事务隔离级别
数据库事务的隔离级别有4个,由低到高依次为Read uncommitted、Read committed、Repeatable read、Serializable,这四个级别可以逐个解决脏读、不可重复读、幻读这几类问题。√: 可能出现 ×: 不会出现 脏读不可重复读幻读Read uncommitted√转载 2017-03-13 14:54:51 · 164 阅读 · 0 评论 -
对象的三种状态
瞬时对象:在数据库中没有相应的记录,也没有被Hibernate的Session管理,会被JVM回收持久对象:这个对象在数据库中,有相应的记录,被Session管理起来瞬时对象:数据库中有相应的记录但没有被Session管理,可以被回收对象的转换:瞬时对象—>持久对象瞬时对象经过Session的save()或saveOrUpdate()时会原创 2017-03-13 14:40:41 · 403 阅读 · 0 评论 -
一个测试类
Configuration:创建Hibernate配置对象,读取Hibernate.cfg.xml文件初始化环境ServiceRegistry :注册hibernate属性信息SessionFactory :Session工程类,这个类是个重量级对象,线程安全的,负责创建Session,这个对象在服务器时启动时创建一个就好Session:是一次和数据库的对话,但是不一定是一次连接,Se原创 2017-03-13 14:38:34 · 444 阅读 · 0 评论 -
创建持久化对象规范
持久化类要遵循JavaBean的规范:⑴ JavaBean 必须放在一个单独的包中⑵ JavaBean 必须申明为 public class 即:必须是公有的类⑶ JavaBean 的所有属性必须申明为 private 即:属性必须私有⑷ 通过 setter 方法和 getter 方法设值和取值 ⑸ 必须有一个公有无参构造方法⑹ 编写代码要严格遵守 Java 程序的命原创 2017-03-13 14:32:00 · 345 阅读 · 0 评论 -
完成基本的配置文件
com.jdbc.mysql.Driverjdbc:mysql://localhost:3306/hiber01rootshanyaoorg.hibernate.dialect.MySQLInnoDBDialecttruetrueupdate原创 2017-03-13 14:29:10 · 229 阅读 · 0 评论 -
hibernate学习笔记
把之前学的hibernate框架相关知识,从onenote迁移到这里,以供日后复习方便原创 2017-03-13 14:25:23 · 267 阅读 · 0 评论 -
又一个因为延迟加载出现的错误Hibernate:could not initialize proxy - no Session
今天利用Hibernate写一个Demo的时候遇到个错误解决,字面意思是没有session,郁闷了老半天,终于发现问题我要查询的数据与其他表有多对一的关联关系,但是延迟加载设置为lazy,也就是说当我使用这个关联数据时才会去查询,而这个时候session早已关闭,就出现了上面的错误。解决方法有三个: 1、把lazy设成false。这个是最简单的办法,个人认为也是比较笨的方法原创 2017-04-14 15:13:41 · 311 阅读 · 0 评论