Hibernate
Acornm
这个作者很懒,什么都没留下…
展开
-
logback.xml function
WebRoot\WEB-INF\classes 在此路径下 d:/logs/zhhuizhi.log 项目日志名称路径配置 D:/workspace/logs/business.%d{yyyy-MM-dd}.log.zip 项目日志名称路径打包路径配置 %-20(%d{HH:mm:ss.SSS} [%thread]) %-5level %logger{80}原创 2016-03-29 16:27:51 · 242 阅读 · 0 评论 -
hibernate hbm property access属性
access属性 取值1、property :报错2、field:不报错 在set get 不存在情况下 字段必须存在3、noop: 不报错 在get set 字段 均不存在情况下原创 2016-03-24 10:07:52 · 642 阅读 · 0 评论 -
标识生成符
1、increment 适用于代理主键 不能出理并发问题 由hibernate自增方式生成2、identity 适用于代理主键 能处理并发问题 由底层数据库生成3、assigned 适用于自然主键原创 2016-03-24 11:25:39 · 195 阅读 · 0 评论 -
缓存溢出
1、session.flush();2、session.clear();原创 2016-03-24 12:30:24 · 235 阅读 · 0 评论 -
hibernate setflushmode
1、session.setflushmode(auto) 优化 session查询 commit session.flush flushMode.auto 清理 清理 清理 commit 不清理 清理原创 2016-03-24 12:35:42 · 406 阅读 · 0 评论 -
session four stations
临时状态 在使用主键的情况下 oid通常为null不处于session的缓存中 在数据库中没有对应的记录 在以下情况下,Java 对象进入临时状态 当通过new语句刚创建一个Java对象 就处于临时状态,此时不和数据库中的任何记录对应 删除状态 oid不为null 从一个session实例的缓存中删除 session.delete();session已经计划将原创 2016-03-24 15:41:51 · 194 阅读 · 0 评论 -
session&get() load()
相同点:都可以根据给定的 OID 从数据库中加载一个持久化对象不同点:当数据库中不存在与 OID 对应的记录时, load() 方法抛出 ObjectNotFoundException 异常, 而 get() 方法返回 null原创 2016-03-24 15:52:54 · 209 阅读 · 0 评论 -
oneToMany
name 持久化对象的属性名称 class:属性名称的类型column:生成的外键列原创 2016-03-24 16:27:38 · 296 阅读 · 0 评论 -
hibernate configration 双向关联
原创 2016-03-24 17:30:25 · 269 阅读 · 0 评论 -
inverse lazy fetch
在多的一方 set 中属性 inverse =false 主动方 有助于性能改善原创 2016-03-24 18:03:38 · 234 阅读 · 0 评论 -
数据库类对应关系
number 对应Java中int varcher2 对应Java中string原创 2016-04-08 09:33:11 · 309 阅读 · 0 评论 -
sessionFactory &session&transaction interface
1、SessionFactory 很消耗资源,一般情况下一个应用中只初始化一个 SessionFactory 对象。2、是线程安全的。3、SessionFactory是生成Session的工厂1.1、线程不安全1.2、持久化类与 Session 关联起来后就具有了持久化的能力。1.3、Session 类的方法:取得持久化对象的方法: get() load()持久原创 2016-03-23 16:41:34 · 247 阅读 · 0 评论 -
cfg hibernate.hbm2ddl.auto values
update1、update 如果没表 创建表 有表 更新表2、none 不能通过hibernate 映射创建表 有表会直接操作3、create 如果数据库中没有表 可以创建表 但每次都删除旧表 建新表原创 2016-03-23 16:06:24 · 265 阅读 · 0 评论 -
快照和一级缓存
1、快照:是对数据库数据的一个映射,数据与数据库是一致的2、当清理缓存(s.flush())的时候,一级缓存中的数据与快照(数据库)的数据进行比对: * 如果没有发生变化:不会执行update语句 * 如果发生了变化,就会执行update语句,更新发生变化的字段3、session关闭 缓存中数据就会失效原创 2016-03-18 10:45:13 · 1497 阅读 · 0 评论 -
持久化对象的要求
1、提供一个无参数 public访问控制符的构造器(默认就是)2、提供一个标识属性,映射数据表主键字段3、所有属性提供public访问控制符的 set get 方法4、属性应尽量使用基本数据类型的包装类型原创 2016-03-17 09:08:52 · 250 阅读 · 0 评论 -
Hibernate Configuration 之连接数据库
Hibernate.connection.配置1、编写name 属性 .driver.class -----例如com.mysql.jdbc.Driver2、编写name 属性 .url---------例如jdbc.mysql:localhsot:3306/student3、编写name属性 .username---------例如root 4、编写name属性 .passwo原创 2016-03-17 09:41:18 · 433 阅读 · 0 评论 -
HQL && SQL
1、Hql 语句:操作持久化对象和对象中的属性2、Sql语句:操作数据表和字段sql 语句:select * from a_customerHql语句:select c from Customer c ===from Customer c ;原创 2016-03-17 15:28:12 · 211 阅读 · 0 评论 -
Hibernate含义
1.开源的持久层框架.2.ORM(Object/Relational Mapping)映射工具,建立面向对象的域模型和关系数据模型之间的映射.3.连接java应用和数据库的中间件.4.对JDBC进行封装,负责java对象的持久化.5.在分层结构中处于持久化层,封装对数据库的访问细节, 使业务逻辑层更专注于实现业务逻辑原创 2016-03-17 15:54:11 · 894 阅读 · 0 评论 -
formular用法概要
1、formular :是用来使用聚合函数的sql语句查询数据库的数据,将数据保存在求和字段 比如 totalPrice中格式:使用()括起来 使用sql语句 使用别名比如:原创 2016-03-17 17:37:47 · 803 阅读 · 0 评论 -
主键定义为自动增长类型
1、 在my SQL中,把字段设为auto_increment类型,数据库会自动为主键 赋值(MySQL) 2、在ms SQL server中,把字段设为identity类型,数据库会自动为主键 赋值。(微软)原创 2016-03-18 10:00:25 · 841 阅读 · 0 评论 -
Hibernate的检索方式(1)
1:Hibernate提供了以下几种检索对象的方式(1)HQL检索方式:使用面向对象的 HQL查询语言l HQL(Hibernate Query Language) 是面向对象的查询语言l HQL语句的检索方式与SQL语句的区别* HQL是面向对象和对象中的属性* SQL是面向过程(面向数据库表和表中的列)(2)QBC检索方式:使用 QBC(Quer原创 2016-03-30 10:16:16 · 654 阅读 · 0 评论 -
Hibernate的检索方式(2)hql
(9)迫切左外连接:使用的sql语句仍然是左外连接,它将返回一个对象,要想获取和它关联对象,需要遍历循环。缺点:循环太多,返回的结果集过于复杂/**知识点10: 迫切左外连接,返回值是一个对象,要想查询和对象关联的其他对象,需要遍历循环之后获取*/Query query =session.createQuery("from Customer c left outer join原创 2016-03-30 10:36:13 · 333 阅读 · 0 评论 -
Hibernate的检索方式(3)sql
方式一:Query query = session.createSQLQuery(“select o.name from CUSTOMERS c where c.name=‘tom’”);query.list();方式二:参数查询Query query =session.createSQLQuery(“select * from CUSTOMERS c where c.name原创 2016-03-30 10:41:01 · 256 阅读 · 0 评论 -
Hibernate的检索方式(4)QBC查询
(1)条件查询//主要由Criteria、Criterion接口和Expression类组成,他支持在运行时动态生成查询语句。Criteria criteria = s.createCriteria(Customer.class);criteria.add(Restrictions.eq("name","Tom"));List list = criteria.list();原创 2016-03-30 10:44:02 · 287 阅读 · 0 评论 -
问题简单汇总(待续)
1、id to load is required for loading在hibernate框架中Java类中与数据库字段可能不匹配造成 (包括字段长度、字段名称)原创 2016-04-08 14:57:39 · 316 阅读 · 0 评论