Hibernate 再接触 基础配置 续】的更多相关文章

<property name="show_sql">true</property> 这句话是意思显示sql语句 <property name="format_sql">true</property> 格式化输出sql语句 当类与表名不一致时  在属性前面加注解 @Table(name="_teacher") Xml 则是指定table属性 不加 注释的话 相当于加@Basic 属性名和字段名不一致…
<!-- Drop and re-create the database schema on startup --> <property name="hbm2ddl.auto">update</property> 有update create validate create-drop四种属性 update 表示如果映射的类中有加的类 会自动改表 create是指如果数据库没有创表可以自动帮创 validate会在执行操作前可以先验证有没有表 crea…
Hibernate 配置文件主要用于配置数据库连接和 Hibernate运行时所需的各种属性 每个 Hibernate 配置文件对应一个 Configuration 对象 Hibernate.cfg.xml 文件的常用属性 JDBC 连接属性 connection.username:用户名 connection.password:密码 connection.url:数据库 URL connection.driver_class:数据库 JDBC 驱动 dialect:数据库方言 配置数据库的方言…
为什么取1248 二进制 CRUD 移位效率高 在并发和效率选择一个平衡点 一般不会考虑幻读 因为我们不会再一个事务里查询两次,(只能设置为seralizable) 悲观锁和乐观锁的前提是read-uncommitted 在数据库中 默认是repeatable read 悲观锁是想着总有人要更改 所以使用数据库的锁 乐观锁是在程序级别的 设置一个版本号 如果前后不一致就进行自己的操作 例子 悲观所 Acocount package com.bjsxt.hibernate; import java…
缓存 就是把本来应该放在硬盘里的东西放在内存里  将来存内存里读 一级缓存: session缓存 二级缓存: sessionFactory级别的   (适合经常访问,数据量有限,改动不大) 很多的session缓存  找不到再去数据库拿 开启二级缓存 查询缓存 比如说 我查的是2-8的数据 然后呢我又查了3-9的数据 则3-8的数据就是查询缓存,三级缓存 缓存算法 内存对象满了 拿走什么 Lru Lfu fifo 1.最近很少被使用 2.最近不常被使用 3.缓存对象设置一个数组 来一个把第一个推…
Sessionclear 否则session缓存里越来越多 Java有内存泄露吗? 在语法中没有(垃圾自动回收) 但是在实际中会有 比如读文件没有关什么的 1+N问题 解决方法:把fetch设置为lazy 什么时候就为空 Bachsize 只是缓解 使用joinfetch Category package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; i…
1.save 一对多双向 package com.bjsxt.hibernate; import java.util.HashSet; import java.util.Set; import javax.persistence.CascadeType; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persis…
凡是双向关联必设mapped by  由对方主导 wifi.java package com.bjsxt.hibernate; import javax.persistence.Entity; import javax.persistence.GeneratedValue; import javax.persistence.Id; import javax.persistence.OneToOne; @Entity public class Wife { private int id; priv…
1.可以重载方法进行配置文件的指定 sessionFactory = new AnnotationConfiguration().configure("hibernate.xml").buildSessionFactory(); 这样读取到的就是hibernate.xml 但一般不建议修改 getcurrentsession 指的是上下文如果没有提交 就不会创建新的session opensession 永远打开新的session 用于鉴定事务边界 比如加入日志操作等 事务:要么同时完…
Xml 方法 在student.hbm.xml中 <generator class="uuid"></generator> 取值如下 1.identity:用于MySql数据库.特点:递增 <id name="id" column="id"> < generator class="identity"/> </id> 注:对于MySql数据库使用递增序列时需要在建表时对…