`

Hibernate备忘录-1

阅读更多

A org.hibernate.SessionFactory is used to obtain org.hibernate.Session instances. A org.hibernate.Session represents a single-threaded unit of work. The org.hibernate.SessionFactory is a thread-safe global object that is instantiated once.

 

If you give the org.hibernate.SessionFactory a name in your configuration, Hibernate will try to bind it to JNDI under that name after it has been built. Another, better option is to use a JMX deployment and let the JMX-capable container instantiate and bind a HibernateService to JNDI. Such advanced options are discussed later.

 

 

1.通过用户类库来组织框架的Jar包集体导入,方便管理

 

2.各个版本的的jar下载地址:http://sourceforge.net/projects/hibernate/files/

 

3.hibernate-annotations-3.4.0.GA下载地址:

 http://www.brothersoft.com/hibernate-annotations-download-69011.html

当要使用annotation:

hibernate-annotations.jar

hibernate-commons-annotations.jar

ejb3-persistence.jar

 

4.在Hibernate 2.x里,多数情况下表示映射关系的元数据保存在XML文本文件中. 还有一种方式就是Xdoclet,它可以在编译时利用Javadoc中的源码注释信息来进行预处理. 现在新的JDK标准(JDK1.5以上)也支持类似的注解功能,但相比之下很多工具对此提供了更强大更好用的支持. 以IntelliJ IDEA和Eclipse为例,这些IDE工具为JDK 5.0注解功能提供了自动完成和语法高亮功能. 注解被直接编译到字节码里,并 在运行时(对于Hibernate来讲就是启动的时候)通过反射读取这些注解, 因此外部XML文件就不再需要了.

 

5.为了简化从hbm文件到注解的迁移过程, 配置机制将自动检测在注解和hbm文件中重复的映射。 默认情况下hbm文件中的声明比类中的注解元数据具有更高的优先级。 这种优先级的设定是以类为单位的。 你也可以通过hibernate.mapping.precedence修改这种优先级。 默认的值是hbm, class, 如果改为class,hbm,当发生冲突的时候,类中的注解将比hbm文件具有更高的优先级.

 

6.JPA是一组接口规范,欲"统一天下",此规范,hibernate的作者也参与

 

7.slf4j,萨拉风4j,哈哈,读法有趣,slf是一组接口规范,又是规范,又是标准,厉害

 

8.SessionFactory-线程安全,Session-线程不安全

 

9.当<gererator的class为native时,会根据指定的dialect来生成主键,毕竟不同数据库有不同实现方式,identity也符合mysql的方式

 

10.当<gererator的class为assigned时,意味着我们需要自己写代码类生成键值(也就是业务主键)

 

11.hibernate把JDBC的checked exception转换成unchecked exception,因此上层代码操作起来很清爽

 

12.hibernate根据dialect来生成sql,所以dialect设置很重要

 

13.当要通过反射来实例化一个类的时候,记得要有无参构造函数,ibatis的时候,曾经碰到过这个问题,现在印象深刻了

 

14.<property name="current_session_context_class">thread</property>
只能通过getCurrentSession()获得Session,这样的session适合在多线程中解决数据共享的问题,不容易出共享混乱

 

15.
get()-->一级缓存-->db-->null;
load()-->一级缓存--->2级缓存-->db-->exception

分享到:
评论

相关推荐

    struts+spring+hibernate3+webligic812环境配置备忘录

    以下是基于标题“struts+spring+hibernate3+webligic812环境配置备忘录”的详细知识点解析: ### 一、环境搭建与配置 #### 1. WebLogic Server安装与配置 - **安装过程**:首先,下载WebLogic Server 8.1.2版本的...

    s2sh框架实例——个人备忘录系统源码

    【标题】"s2sh框架实例——个人备忘录系统源码" 提供了一个学习和研究Web开发的宝贵资源,特别适合对Java Web技术感兴趣的初学者。S2SH是Struts2、Spring和Hibernate三个开源框架的组合,是Java领域广泛应用的MVC...

    java ssm备忘录管理系统毕业论文.docx

    Java SSM备忘录管理系统毕业论文 本文主要介绍了基于 Java SSM 框架和 MySQL 数据库的备忘录管理系统的设计与实现。该系统旨在解决传统备忘录管理中的问题,实现信息化和网络化,提高备忘录管理的效率和经济性。 ...

    大学 毕业设计 项目实训 个人备忘录系统(java SSH网站源代码)+JSP漂亮的界面控件.zip

    【标题】中的“大学毕业设计 项目实训 个人备忘录系统(java SSH网站源代码)”表明这是一个基于Java的SSH框架实现的个人备忘录系统,适用于大学生进行毕业设计或项目实训。SSH是Struts2、Spring和Hibernate三个开源...

    java记事簿管理系统_备忘录管理系统_通讯录_记账本-源码+数据库+论文or文档.zip

    该压缩包文件“java记事簿管理系统_备忘录管理系统_通讯录_记账本-源码+数据库+论文or文档.zip”包含了基于Java开发的一个综合性的管理系统的源代码、数据库文件以及相关的论文或文档。这个系统集成了多个实用功能...

    Hibernate 备忘

    这篇备忘录主要关注Hibernate的核心概念、功能及其实现方式。通过博文链接(已省略)可获取更深入的探讨。 【标签】:“源码”、“工具” 【压缩包子文件的文件名称列表】:TestHQL **知识点详解:** 1. **...

    备忘录

    【标题】:“备忘录”涉及的技术点涵盖了图形用户界面(GUI)的元素设计、程序关闭的优雅实现、数据库管理和系统事件监听等多个方面。 【图形按钮】是用户界面设计中的重要组成部分,它允许用户通过点击来执行特定...

    STRUTS备忘录、

    本备忘录将深入探讨Struts的核心概念、架构以及如何在实际项目中使用它。 **1. MVC模式** Struts是基于Model-View-Controller(MVC)设计模式的,这种模式有助于分离业务逻辑、数据模型和用户界面。Model代表业务...

    SSHF备忘之依赖包(struts2+spring2.5+hibernate+freemarker)

    1. **Struts2**:Struts2是基于Apache Jakarta Struts的下一代Web应用框架,它提供了一种更灵活和强大的MVC架构。依赖包包括`struts2-core-2.0.11.jar`和`struts2-spring-plugin-2.0.11.jar`,后者用于将Struts2与...

    angularjs-hibernate-springmvc

    这是一个备忘录, 主要用angjularjs框架写的前台,bootstrap做的页面样式,页面跳转用了angular-ui-router这个模块插件。 后台主要用了springmvc和hibernate。这是我练笔的一个项目,由于时间关系有些功能没做,当中...

    code-memo:代码备忘录, 包含mybatis、spring、spring-boot、hbase、hive、guava、jdk等示例代码

    Code-memo 平时学习的开源框架的示例代码。包括mybatis、spring、spring-boot、hbase、...springboot、jpa、hibernate访问mysql,并提供restful接口 opensource-utils google guaua 使用示例,hbase访问接口以及hbase操

    java版本控制(数据库版本控制)

    1. **创建数据库模型**:定义数据库表结构和数据模型,这通常是通过ORM(对象关系映射)框架如Hibernate或MyBatis完成的。 2. **版本记录**:在每次数据库结构更改时,创建一个新的版本。这可以通过脚本文件(如SQL...

    java面试——深圳-乐信-Java高级.zip

    - 行为型模式:模板方法、观察者、策略、职责链、命令、迭代器、访问者、备忘录、状态、解释器。 6. **数据库操作**: - SQL基础:查询、增删改操作,子查询,连接查询。 - 数据库事务的ACID属性,事务隔离级别...

    SSH辅助教学系统jsp开发语言mysql数据库myeclipse设计java编程

    3.管理员用户:登录功能、退出功能、课程管理、作业管理、资料下载管理、选课管理、留言管理、备忘录管理、心得管理、班级管理、学院管理、系管理、教师管理、学生管理,拥有系统 最高权限。 三、注意事项 1、管理...

    Java面试宝典2018

    - 代理模式、命令模式、迭代器模式、中介者模式、备忘录模式等。 - 观察者模式、策略模式、模板方法模式、访问者模式、职责链模式等。 - **常见面试题**: - 工厂模式与抽象工厂模式的区别? - 适配器模式的两种...

    java web开发典型模块大全

    在"java web开发典型模块大全"中,我们看到提到了几个关键的模块或功能,包括Rss、备忘录、搜索引擎、聊天室和留言板。接下来,我们将详细探讨这些模块的实现和它们在Java Web开发中的重要性。 1. **Rss模块**:RSS...

    网上教学系统.docx

    - 备忘录:提供日历功能,记录备忘信息。 - 留言箱:收发消息,管理消息。 - 课程管理:包括开课信息和选课信息管理。 - 作业管理:发布和批改作业,导出成绩。 **4. 学生界面:** - 上交作业:选择课程和作业,...

    java开发面试合集-自己整理

    - 行为型模式:如策略、模板方法、观察者、迭代器、责任链、命令、备忘录、解释器模式。 7. **其他** - 架构设计:MVC、微服务、SOA等架构模式的理解和应用。 - 性能优化:包括代码优化、数据库查询优化、服务器...

    学士学位论文--基于javaee的个人数字图书馆的设计与实现.doc

    该图书馆主要分为:我的图书、我的收藏、备忘录、信息、日志、资料搜索、图书管理等几大模块。“我的图书”是指用户上传的所有文件;“我的收藏”是指用户保存的一些网摘;“备忘录”顾名思义是指用户向系统中添加...

    本科毕业设计--基于javaee的个人数字图书馆的设计与实现.doc

    3. 备忘录:用户可以添加和管理自己的计划和任务。 4. 信息:用户可以与其他用户进行信息交流和讨论。 5. 日志:用户可以发布和管理自己的日志。 6. 资料搜索:用户可以搜索和管理自己的数字资源。 系统的后台管理...

Global site tag (gtag.js) - Google Analytics