Hibernate配置汇总

Hibernate配置汇总
Hibernate配置汇总

Hibernate3的配置参数汇总

2009年09月05日星期六 14:57

SQL方言

1、Hibernate JDBC属性

属性名用途

hibernate.connection.driver_class jdbc 驱动类

hibernate.connection.url jdbc URL https://www.360docs.net/doc/7f6354168.html,ername 数据库用户

hibernate.connection.password 数据库用户密码hibernate.connection.pool_size 连接池容量上限数目

注:使用C3P0的properties样例代码:

hibernate.connection.driver_class = org.postgresql.Driver hibernate.connection.url = jdbc:postgresql://localhost/mydatabase https://www.360docs.net/doc/7f6354168.html,ername = myuser

hibernate.connection.password = secret

hibernate.c3p0.min_size=5

hibernate.c3p0.max_size=20

hibernate.c3p0.timeout=1800

hibernate.c3p0.max_statements=50

hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect

2、Hibernate的数据源属性

属性名用途

hibernate.connection.datasource 数据源JNDI名字

hibernate.jndi.url

JNDI提供者的URL (可选)

hibernate.jndi.class J NDI InitialContextFactory类 (可选)

https://www.360docs.net/doc/7f6354168.html,ername 数据库用户 (可选) hibernate.connection.password 数据库用户密码 (可选)

注:应用程序服务器JNDI数据源的hibernate.properties样例代码:

hibernate.connection.datasource = java:/comp/env/jdbc/test hibernate.transaction.factory_class = \

org.hibernate.transaction.JTATransactionFactory

hibernate.transaction.manager_lookup_class = \

org.hibernate.transaction.JBossTransactionManagerLookup

hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect

3、Hibernate配置属性(可选)

属性名用途

hibernate.dialect

一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL.取值full.classname.of.Dialect

hibernate.show_sql

输出所有SQL语句到控制台.取值true | false

hibernate.format_sql

在log和console中打印出更漂亮的sql.取值true | false

hibernate.default_schema

在生成的SQL中, 将给定的schema/tablespace附加于非全限定名的表名上.取值SCHEMA_NAME

hibernate.default_catalog

在生成的SQL中, 将给定的catalog附加于没全限定名的表名上.取值CATALOG_NAME

hibernate.session_factory_name

SessionFactory创建后,将自动使用这个名字绑定到JNDI中.取值

jndi/composite/name

hibernate.max_fetch_depth

为单向关联(一对一, 多对一)的外连接抓取(outer join fetch)树设置最大深度. 值为0意味着将关闭默认的外连接抓取.取值建议在0到3之间取值

hibernate.default_batch_fetch_size

为Hibernate关联的批量抓取设置默认数量.取值建议的取值为4, 8, 和16

hibernate.default_entity_mode

为由这个SessionFactory打开的所有Session指定默认的实体表现模式.取值dynamic-map, dom4j, pojo

hibernate.order_updates

强制Hibernate按照被更新数据的主键,为SQL更新排序。这么做将减少在高并发系统中事务的死锁。取值true | false

hibernate.generate_statistics

如果开启, Hibernate将收集有助于性能调节的统计数据.取值true | false

https://www.360docs.net/doc/7f6354168.html,e_identifer_rollback

如果开启, 在对象被删除时生成的标识属性将被重设为默认值.取值true | false

https://www.360docs.net/doc/7f6354168.html,e_sql_comments

如果开启, Hibernate将在SQL中生成有助于调试的注释信息, 默认值为false.取值true | false

4、Hibernate JDBC和连接(connection)属性

属性名用途

hibernate.jdbc.fetch_size

非零值,指定JDBC抓取数量的大小 (调用Statement.setFetchSize()).

hibernate.jdbc.batch_size

非零值,允许Hibernate使用JDBC2的批量更新.取值建议取5到30之间的值

hibernate.jdbc.batch_versioned_data

如果你想让你的JDBC驱动从executeBatch()返回正确的行计数 , 那么将此属性设为true(开启这个选项通常是安全的). 同时,Hibernate将为自动版本化的数据使用批量DML. 默认值为false.eg.true | false

hibernate.jdbc.factory_class

选择一个自定义的Batcher. 多数应用程序不需要这个配置属

性.eg.classname.of.Batcher

https://www.360docs.net/doc/7f6354168.html,e_scrollable_resultset

允许Hibernate使用JDBC2的可滚动结果集. 只有在使用用户提供的JDBC连接时,这个选项才是必要的, 否则Hibernate会使用连接的元数据.取值true | false

https://www.360docs.net/doc/7f6354168.html,e_streams_for_binary

在JDBC读写binary (二进制)或serializable (可序列化) 的类型时使用流(stream)(系统级属性).取值true | false

https://www.360docs.net/doc/7f6354168.html,e_get_generated_keys

在数据插入数据库之后,允许使用JDBC3

PreparedStatement.getGeneratedKeys() 来获取数据库生成的key(键)。需要JDBC3+驱动和JRE1.4+, 如果你的数据库驱动在使用Hibernate的标识生成器时遇到问题,请将此值设为false. 默认情况下将使用连接的元数据来判定驱动的能力.取值true|false

hibernate.connection.provider_class

自定义ConnectionProvider的类名, 此类用来向Hibernate提供JDBC连接.取值classname.of.ConnectionProvider

hibernate.connection.isolation

设置JDBC事务隔离级别. 查看java.sql.Connection来了解各个值的具体意义, 但请注意多数数据库都不支持所有的隔离级别.取值1, 2, 4, 8

hibernate.connection.autocommit

允许被缓存的JDBC连接开启自动提交(autocommit) (不建议).取值true | false

hibernate.connection.release_mode

指定Hibernate在何时释放JDBC连接. 默认情况下,直到Session被显式关闭或被断开连接时,才会释放JDBC连接. 对于应用程序服务器的JTA数据源, 你应当使用after_statement, 这样在每次JDBC调用后,都会主动的释放连接. 对于非JTA的连接, 使用after_transaction在每个事务结束时释放连接是合理的. auto将为JTA和CMT事务策略选择after_statement, 为JDBC事务策略选择after_transaction.取值on_close | after_transaction | after_statement | auto

hibernate.connection.

将JDBC属性propertyName传递到DriverManager.getConnection()中去.

hibernate.jndi.

将属性propertyName传递到JNDI InitialContextFactory中去.

5、Hibernate缓存属性

属性名用途

hibernate.cache.provider_class

自定义的CacheProvider的类名.取值classname.of.CacheProvider

https://www.360docs.net/doc/7f6354168.html,e_minimal_puts

以频繁的读操作为代价, 优化二级缓存来最小化写操作. 在Hibernate3中,这个设置对的集群缓存非常有用, 对集群缓存的实现而言,默认是开启的.取值true|false

https://www.360docs.net/doc/7f6354168.html,e_query_cache

允许查询缓存, 个别查询仍然需要被设置为可缓存的.取值true|false

https://www.360docs.net/doc/7f6354168.html,e_second_level_cache

能用来完全禁止使用二级缓存. 对那些在类的映射定义中指定的类,会默认开启二级缓存.取值true|false

hibernate.cache.query_cache_factory

自定义的实现QueryCache接口的类名, 默认为内建的StandardQueryCache.取

值classname.of.QueryCache

hibernate.cache.region_prefix

二级缓存区域名的前缀.取值prefix

https://www.360docs.net/doc/7f6354168.html,e_structured_entries

强制Hibernate以更人性化的格式将数据存入二级缓存.取值true|false

6、Hibernate事务属性

属性名用途

hibernate.transaction.factory_class

一个TransactionFactory的类名, 用于Hibernate Transaction API (默认为JDBCTransactionFactory).取值classname.of.TransactionFactory

https://www.360docs.net/doc/7f6354168.html,erTransaction

一个JNDI名字,被JTATransactionFactory用来从应用服务器获取JTA UserTransaction.取值jndi/composite/name

hibernate.transaction.manager_lookup_class

一个TransactionManagerLookup的类名 - 当使用JVM级缓存,或在JTA环境中使用hilo生成器的时候需要该类.取值

classname.of.TransactionManagerLookup

hibernate.transaction.flush_before_completion

如果开启, session在事务完成后将被自动清洗(flush). (在Hibernate和CMT 一起使用时很有用.)取值true | false

hibernate.transaction.auto_close_session

如果开启, session在事务完成前将被自动关闭. (在Hibernate和CMT一起使用时很有用.)取值true | false

7、其他属性

属性名用途

hibernate.query.factory_class

选择HQL解析器的实现.取值

org.hibernate.hql.ast.ASTQueryTranslatorFactory or

org.hibernate.hql.classic.ClassicQueryTranslatorFactory

hibernate.query.substitutions

将Hibernate查询中的符号映射到SQL查询中的符号 (符号可能是函数名或常量名字).取值hqlLiteral=SQL_LITERAL, hqlFunction=SQLFUNC

hibernate.hbm2ddl.auto

在SessionFactory创建时,自动将数据库schema的DDL导出到数据库. 使用create-drop时,在显式关闭SessionFactory时,将drop掉数据库schema.取值update | create | create-drop

https://www.360docs.net/doc/7f6354168.html,e_reflection_optimizer

开启CGLIB来替代运行时反射机制(系统级属性). 反射机制有时在除错时比较有用. 注意即使关闭这个优化, Hibernate还是需要CGLIB. 你不能在hibernate.cfg.xml中设置此属性.取值true | false

8、SQL方言

Hibernate SQL方言 (hibernate.dialect)

RDBMS 方言 DB2 org.hibernate.dialect.DB2Dialect DB2 AS/400

org.hibernate.dialect.DB2400Dialect

DB2 OS390 org.hibernate.dialect.DB2390Dialect

PostgreSQL org.hibernate.dialect.PostgreSQLDialect

MySQL org.hibernate.dialect.MySQLDialect

MySQL with InnoDB org.hibernate.dialect.MySQLInnoDBDialect

MySQL with MyISAM org.hibernate.dialect.MySQLMyISAMDialect

oracle (any version) org.hibernate.dialect.OracleDialect

oracle 9i/10g org.hibernate.dialect.Oracle9Dialect

Sybase org.hibernate.dialect.SybaseDialect

Sybase Anywhere org.hibernate.dialect.SybaseAnywhereDialect

Microsoft SQL Server org.hibernate.dialect.SQLServerDialect

SAP DB org.hibernate.dialect.SAPDBDialect

Informix https://www.360docs.net/doc/7f6354168.html,rmixDialect

HypersonicSQL org.hibernate.dialect.HSQLDialect

Ingres org.hibernate.dialect.IngresDialect

Progress org.hibernate.dialect.ProgressDialect

Mckoi SQL org.hibernate.dialect.MckoiDialect

Interbase org.hibernate.dialect.InterbaseDialect

Pointbase org.hibernate.dialect.PointbaseDialect

FrontBase org.hibernate.dialect.FrontbaseDialect

Firebird org.hibernate.dialect.FirebirdDialect

9、Hibernate日志类别

类别功能

org.hibernate.SQL在所有SQL DML语句被执行时为它们记录日志

org.hibernate.type为所有JDBC参数记录日志

org.hibernate.tool.hbm2ddl在所有SQL DDL语句执行时为它们记录日志org.hibernate.pretty在session清洗(flush)时,为所有与其关联的实体(最多20个)的状态记录日志

org.hibernate.cache为所有二级缓存的活动记录日志

org.hibernate.transaction为事务相关的活动记录日志

org.hibernate.jdbc为所有JDBC资源的获取记录日志

org.hibernate.hql.ast为HQL和SQL的自动状态转换和其他关于查询解析的信息记录日志

org.hibernate.secure为JAAS认证请求做日志

org.hibernate为任何Hibernate相关信息做日志 (信息量较大, 但对查错非常有帮助)

Hibernate3.6(开发必看)

1.Java对象持久化概述 1.1.应用程序的分层体系结构 1.1.1.基于B/S的典型三层架构 说明: 1,展现层:提供与用户交互的界面。 2,业务逻辑层:实现各种业务逻辑。 3,数据访问层:负责存放和管理应用程序的持久化业务数据。 1.1. 2.数据访问层与Hibernate在Java应用程序中的 角色 数据访问层(持久化层)封装了数据访问的细节,为业务逻辑层提供了面向对象的API。完善的持久化层应该达到的目标: 1,代码重用性高,可完成所有的数据访问操作。 2,如果需要的话,能够支持多种数据库平台。 3,具有相对独立性,当持久化层变化时,不会影响上层实现。 在数据访问层(持久化层)中可以使用Hibernate框架以实现要求,如下图所示:

1.2.软件模型 1.2.1.各种模型的说明 概念模型: 模拟问题域中的真实实体。描述每个实体的概念和属性及实体间关系。不描述实体行为。实体间的关系有一对一、一对多和多对多。。 关系数据模型: 在概念模型的基础上建立起来的,用于描述这些关系数据的静态结构。有以下内容组成:1,若干表 2,表的所有索引 3,视图 4,触发器 5,表与表之间的参照完整性

域模型: 在软件的分析阶段创建概念模型,在软件设计阶段创建域模型。 组成部分: 1,具有状态和行为的域对象。 2,域对象之间的关联。 域对象(domain object): 构成域模型的基本元素就是域对象。对真实世界的实体的软件抽象,也叫做业务对象(Business Object,BO)。域对象可代表业务领域中的人、地点、事物或概念。 域对象分为以下几种: 1,实体域对象:通常是指业务领域中的名词。(plain old java object,简单Java 对象)。 2,过程域对象:应用中的业务逻辑或流程。依赖于实体域对象,业务领域中的动词。如发出订单、登陆等。 3,事件域对象:应用中的一些事件(警告、异常)。 1.2.2.域对象间的关系 关联: 类间的引用关系。以属性定义的方式表现。

Hibernate配置文件的DTD

Hibernate中有两个配置文件 映射文件Xxx.hbm.xml 映射文件的的文件头DTD文件内容:

配置文件hibernate.cfg.xml 配置文件的文件头DTD文件内容: org.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver jdbc:mysql://localhost/minmin?characterEncoding=gb2312 root minmin true create

spring4.x + hibernate4.x 配置详解

spring4.x + hibernate4.x 配置详解 关于spring和hibernate的使用以及特征等等,在此不再啰嗦,相信大家也都知道,或者去搜索一下即可。 本篇博文的内容主要是我最近整理的关于spring4.x 和hibernate 4.x 相关配置和使用方式,当然spring3.x以及hibernate4.x也可以借鉴。 首先是配置文件web.xml 增加以下代码即可 contextConfigLocation classpath*:/applicationContext.xml org.springframework.web.context.ContextLoaderListener 然后建立 applicationContext.xml 文件,src下。文件内容如下,注释我尽量写的很详细

hibernate配置数据库连接池的三种方法

?数据库连接池的概念(是什么,做什么用的,有什么好处) ?首先,我们还是老套的讲讲连接池的基本概念,概念理解清楚了,我们也知道后面是怎么回事了。?以前我们程序连接数据库的时候,每一次连接数据库都要一个连接,用完后再释放。如果频繁的数据库操作,就会导致性能很低。连接池的出现,为开发过程提供了一个很好的管理平台。当程序中需要建立数据库连接时,只须从内存中取一个来用而不用新建。同样,使用完毕后,只需放回内存即可。而连接的建立、断开都有连接池自身来管理。同时,我们还可以通过设置连接池的参数来控制连接池中的连接数、每个连接的最大使用次数等等。通过使用连接池,将大大提高程序效率,同时,我们可以通过其自身的管理机制来监视数据库连接的数量、使用情况等。 ?而Hibernate的出现把连接池的使用引入了一个新的利用方式,让你充分享受配置化给开发带来的便利。 1 C3P0 (以验证可用) 只需在hibernate.cfg.xml中加入 omdssd_admin omdssd_hskj jdbc:oracle:thin:@10.142.1.138:1521:omds oracle.jdbc.driver.OracleDriver org.hibernate.dialect.Oracle9Dialect true true oracle10g_112 org.hibernate.connection.C3P0ConnectionProvider 5 //连接池中数据库连接的最小数目 30 //连接池中数据库连接的最大数目 1800 //设定数据库连接的过期时间,以秒为单位 50 //可以被缓存的PreparedStatement实例的最大数目。缓存适量的PreparedStatement实例,能够大大提高Hibernate的性能。 120//在使数据库连接自动生效之前处于空闲状态的时间,以秒为单位

如何根据hibernate的实体类和实体类配置文件生成数据库的表

网络地址: 主题:如何根据hibernate的实体类和实体类配置文件生成数据库的表 内容部分 [c-sharp]view plaincopyprint? 1. 4. 5. 6. jdbc:mysql://12 7.0.0.1/lianxi 7. com.mysql.jdbc.Driver 8. root 9. root 10. org.hibernate.dialect.MySQLDialect 11. true 12. update 13. 14. 15. 16. 17. 18. 19.

Hibernate HQL 语法大全

Hibernate HQL 语法大全HQL: Hibernate查询语言 Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL。但是不要被语法结构上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承、多态 和关联之类的概念。1.大小写敏感性问题 除了Java类与属性的名称外,查询语句对大小写并不敏感。 所以SeLeCT 与 sELEct 以及 SELECT 是相同的,但是 org.hibernate.eg.FOO 并不等价于 org.hibernate.eg.Foo 并且foo.barSet 也不等价于 foo.BARSET。 本手册中的HQL关键字将使用小写字母. 很多用户发现使用完全大写的关键字会使查询语句 的可读性更强, 但我们发现,当把查询语句嵌入到Java语句中的时候使用大写关键字比较难看。 2.from子句 Hibernate中最简单的查询语句的形式如下: from eg.Cat 该子句简单的返回eg.Cat类的所有实例。通常我们不需要使用类的全限定名, 因为 auto-import(自动引入) 是缺省的情况。所以我们几乎只使用如下的简单写法: from Cat 大多数情况下, 你需要指定一个别名, 原因是你可能需要 在查询语句的其它部分引用到Cat from Cat as cat 这个语句把别名cat指定给类Cat 的实例, 这样我们就可以在随后的查询中使用此别名了。关键字as 是可选的,我们也可以这样写: from Cat cat 子句中可以同时出现多个类, 其查询结果是产生一个笛卡儿积或产生跨表的连接。 from Formula, Parameter from Formula as form, Parameter as param 查询语句中别名的开头部分小写被认为是实践中的好习惯, 这样做与Java变量的命名标准保持了一致 (比如,domesticCat)。 3.关联(Association)与连接(Join) 我们也可以为相关联的实体甚至是对一个集合中的全部元素指定一个别

有关Hibernate3.3.2与3.6.10与4.1.10测试

有关Hibernate3.3.2与4.1.10测试 编辑人:星辰樱 1、建立起测试环境 首先导入测试所必需的JAR,必需的JAR包括(Hibernate3和lib\required下的所有JAR,同时还有导入相应版本slf4j-nop.jar。Hibernate3.3.2所对应的是slf4j-nop-1.5.8.jar。Hibernate3.6.10对应的是slf4j-nop-1.6.1.jar。Hibernate4只需要导入lib\required下所有的JAR 就可以了。)我们可以分别自定义三个版本的Hibernate JAR库,如图 第二个把JAR库导入项目,选择自定义的JAR库

最后导入数据库的JAR库。 2、编写测试代码 编写测试代码可以根据Hibernate的说明文档写非常的容易,要注意的是Hibernate的说明文档目前只有英文的。 1.首先我们在数据库中建立一张测试用的表,最好是简单,有主键。 2.建立一个实体类与表中的字段最好是相同,不同也行。

3.创建配置文件(hibernate.cfg.xml). 4.创建实体类与表的映射文件与实体类最好放在一起(UserBean.hbm.xml)。

5.编写测试类(Test)。 这是对Hibernate3的常规测试类。 这是对Hibernate4.1.10编写的测试类

为什么要分两个测试类,其实对Hibernate4也可以用Hibernate的测试类,当我们用Hibernate 的JAR库时,你们会看见有一句代码被线上了删除线,加上了删除线表示这个方法是过时 了的,所以最好是采用新的方法。

MyEclipse中配置Hibernate连接Oracle

1.Window-Preferences-MyEclipse-Database Explorer-Database Drivers-DB Browser 2.在DB Browser窗口中New... (新建Database Driver) Driver name:oracle9 Connection URL:jdbc:oracle:thin:@localhost:1521:HYGJ User name:scott Password:tiger Driver JARs:classes12.jar 此时在DB Browser窗口就会出现你刚新建的驱动oracle9 3. 新建WEB工程:HibernateDemo 4.右键-MyEclipse-Add Hibernate Capabilities... Hibernate 3.1 保持默认就可以--Next--Next-- DataSource: Use JDBC Driver DB Driver:会提供可选择使用的驱动,如刚建好的驱动:oracle9 以下的信息你一看会填写o(∩_∩)o... --Next-- Create SessionFactory class?不选中 --Finish 5.hibernate.cfg.xml中的部分代码如下: ... scott jdbc:oracle:thin:@localhost:1521:HYGJ org.hibernate.dialect.Oracle9Dialect oracle9 oracle.jdbc.driver.OracleDriver tiger 在数据库中创建表: create table login( username varchar(50) not null primary key, password varchar(20) not null );

springmvc框架搭建之xml配置说明(spring4+hibernate4)

SpringMVC框架搭建说明 Spring4.1.4 + hibernate4.3.8 1、web.xml配置 程序运行时从web.xml开始,加载顺序为:context-param -> listener -> filter ->structs (如果使用structs的话)-> servlet 如下为web.xml的配置说明 bmymis2 contextConfigLocation classpath:applicationContext-*.xml org.springframework.web.context.ContextLoaderListener encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true springServlet org.springframework.web.servlet.DispatcherServlet

Struts2+Spring3+Hibernate3 集成方法

Struts2+Spring3+Hibernate3 集成    目 录  1.Struts2集成 ..................................................... 1 1.1. 把Struts提供的jar包拷贝到/WEB-INF/lib/目录下 (1) 1.2. 在web.xml中配置Struts的过滤器 (2) 2.Struts2开发 ..................................................... 2 2.1 编写Struts Action程序,需要继承ActionSupport (2) 2.2 创建struts.xml的Action映射文件 (3) 3.Struts2+Spring集成 .............................................. 3 3.1 按第1步“Struts2集成”方法集成Struts2 (3) 3.2 再把Struts的Spring插件把拷贝到/WEB-INF/lib/目录下 (3) 3.3 把Spring提供的jar拷贝到/WEB-INF/lib/目录下 (3) 3.4 web.xml配置Spring的过滤器 (3) 3.5 创建applicationContext.xml配置文件 (4) 4.Struts2+Spring+Hibernate集成 ..................................... 5 4.1 先按照“Struts2+Spring集成”方法执行 (5) 4.2 导入Apache Commons几个jar包 (5) 4.3 导入Hibernate几个jar包 (5) 4.4 数据库的JDBC驱动 (5) 4.5 在applicationContext.xml中加入如下的配置 (5) 4.6 创建hibernate.cfg.xml文件 (6) 5.Struts2+Spring+Hibernate开发 ..................................... 6 5.1 编写Model类 (6) 5.2 编写Model类的HBM映射文件 (7) 5.3 在applicationContext.xml中指定HBM映射文件路径 (8) 5.4 编写DAO接口和实现类程序,并继承HibernateDaoSupport (8) 5.5 在applicationContext.xml中配置DAO Bean (10) 6.注意事项 ....................................................... 101. Struts2集成 1.1.把Struts提供的jar包拷贝到/WEB-INF/lib/目录下 Struts需要如下几个包: 解压:struts-2.2.3.1-lib.zip 需要: struts2-core-2.2.3.1.jar xwork-core-2.2.3.1.jar ognl-3.0.1.jar

Eclipse下配置和使用Hibernate Tools

Eclipse下配置和使用Hibernate Tools 文章分类:Web前端关键字: hibernate tools eclipse 插件配置 Hibernate Tools可以通过访问已经建立好的数据库以反向工程方式生成POJO文件。 今天就来说一下如何使用Hibernate Tools来生成POJO。 1、首先,要去Hibernate的网站下载这个工具包。一个大约14M的ZIP压缩文件。 https://www.360docs.net/doc/7f6354168.html,/sourceforge/jboss/HibernateTools-3.2.4.Beta1-R200810311334.zip 2、解压缩下载好的文件,释放出features和plugins这两个文件夹和其中的内容。完成后将这两个文件夹复制到Eclipse的目录下(这两个文件夹在Eclipse中是默认存在的,直接复制就行了)。 3、到这步为止HibernateTools的安装就算结束了,下面开始配置和具体使用。一开始选择工程下的SRC 目录,然后右键New->Other->Hibernate->Hibernate Configuration File(cfg.xml),在弹出的窗口中选择Next ,进入到下面的选项中。 注意,这个地方有几项是一定要填写的。他们分别是Database dialect(数据库方言)、Driver class(数据库驱动)、Connection URL(链接字符串)以及Username和Password(访问数据库的用户名和密码)。

上图图中使用的是MySQL5数据库的配置,vane是我机器中已经创建好的数据库。使用其他数据库的时候会略有不同。 填好之后选择Finish。 4、选择Eclipse的下拉菜单Window->Show View->Other->Hibernate->Hibernate Configurations,现在就可以查看Hibernate的配置窗口了。在窗口中单击右键Add Configuration,出现Edit Configuration窗口。 这里需要给Configuration起个名字,然后在Project项目中选择当前工程。 单击OK。 5、如果上一步的配置是正确的,那么在Hibernate的配置窗口中就可以看见Hibernate访问数据库得到的数据信息。

Struts+Hibernate+Spring+三个框架简介

Struts 是一个为开发基于模型(Model)-视图(View)-控制器(Controller)(MVC)模式的应用架构的开源框架,是利用Java Servlet和JSP构建Web应用的一项非常有用的技术。由于Struts能充分满足应用开发的需求,简单易用,敏捷迅速,因而吸引了众多的开发人员的关注。 首先事件是指从客户端页面(浏览器)由用户操作触发的事件,Struts使用Action来接受浏览器表单提交的事件,这里使用了Command 模式,每个继承Action的子类都必须实现一个方法execute。 struts重要的表单对象ActionForm是一种对象,它代表了一种应用,这个对象中至少包含几个字段,这些字段是Jsp页面表单中的input字段,因为一个表单对应一个事件,所以,当我们需要将事件粒度细化到表单中这些字段时,也就是说,一个字段对应一个事件时,单纯使用Struts就不太可能,当然通过结合JavaScript也是可以转弯实现的。 Struts是一个基于Sun J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的。Struts把Servlet、JSP、自定义标签和信息资源(message resources)整合到一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大的节省了时间,所以说Struts是一个非常不错的应用框架。 Struts框架可分为以下四个主要部分: 1、模型(Model),本质上来说在Struts中Model是一个Action类(这个会在后面详细讨论),开发者通过其实现商业逻辑,同时用户请求通过控制器(Controller)向Action的转发过程是基于由struts- config.xml文件描述的配置信息的。 2、视图(View),View是由与控制器Servlet配合工作的一整套JSP定制标签库构成,利用她们我们可以快速建立应用系统的界面。 3、控制器(Controller),本质上是一个Servlet,将客户端请求转发到相应的Action类。

Hibernate配置汇总

Hibernate3的配置参数汇总 2009年09月05日星期六 14:57 SQL方言 1、Hibernate JDBC属性 属性名用途 hibernate.connection.driver_class jdbc 驱动类 hibernate.connection.url jdbc URL https://www.360docs.net/doc/7f6354168.html,ername 数据库用户 hibernate.connection.password 数据库用户密码hibernate.connection.pool_size 连接池容量上限数目 注:使用C3P0的properties样例代码: hibernate.connection.driver_class = org.postgresql.Driver hibernate.connection.url = jdbc:postgresql://localhost/mydatabase https://www.360docs.net/doc/7f6354168.html,ername = myuser hibernate.connection.password = secret hibernate.c3p0.min_size=5 hibernate.c3p0.max_size=20 hibernate.c3p0.timeout=1800 hibernate.c3p0.max_statements=50 hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect 2、Hibernate的数据源属性 属性名用途 hibernate.connection.datasource 数据源JNDI名字 hibernate.jndi.url JNDI提供者的URL (可选) hibernate.jndi.class J NDI InitialContextFactory类 (可选) https://www.360docs.net/doc/7f6354168.html,ername 数据库用户 (可选) hibernate.connection.password 数据库用户密码 (可选) 注:应用程序服务器JNDI数据源的hibernate.properties样例代码: hibernate.connection.datasource = java:/comp/env/jdbc/test hibernate.transaction.factory_class = \ org.hibernate.transaction.JTATransactionFactory hibernate.transaction.manager_lookup_class = \ org.hibernate.transaction.JBossTransactionManagerLookup hibernate.dialect = org.hibernate.dialect.PostgreSQLDialect

Hibernate5用户手册中文版

Hibernate用户手册 Hibernate-纯java的关系型持久层框 Hibernate团队 JBoss可视化设计团队 5.0.0.Final Copyright?2011Red Hat,Inc. 2015-08-20 目录 Hibernate用户手册 (1) Hibernate-纯java的关系型持久层框 (1) Hibernate团队 (1) JBoss可视化设计团队 (1) 序言 (8) 第1章.Architecture(体系架构) (9) 1.1.概述 (10) 1.2.Contextual sessions(session上下文) (11) 第2章.Domain Model(域模型) (12) 2.1.POJO模型 (13) 2.1.1.实现无参构造函数 (13)

2.1.2.提供identifier(标识)属性 (13) 2.1.3.使用非final类 (14) 2.1.4.为持久化属性声明get,set方法 (14) 2.1.5.实现equals()与hashCode()方法 (14) 2.2.Dynamic(动态)模型 (21) 第3章Bootstrap(引导、启动 (22) 3.1.Native(原生、本地)引导 (22) 3.1.1.构建ServiceRegistry (23) 3.1.2.构建Metadata (25) 3.1.3.构建SessionFactory (27) 3.2.JPA引导JPA Bootstrapping (29) 3.2.1.JPA兼容模式的引导 (29) 3.2.2.Proprietary2-phase引导 (30) 第4章持久化Context(上下文) (30) 4.1.实体持久化 (31) 4.2.删除实体 (32) 4.3.获取没有初始化数据的实体 (32) 4.4.获取已经初始化数据的实体 (33) 4.5.通过natural-id(自然ID)获得实体 (33) 4.6.刷新实体状态 (35) 4.7.更改托管态或者持久态 (36) 4.8.使用游离态数据 (36) 4.8.1.复位游离态数据(游离态变成托管态) (37) 4.8.2.合并游离态数据 4.9.验证对象的状态 (38) 4.10.从JPA访问Hibernate (39) 第5章访问数据库 (40) 5.1.ConnectionProvider(连接提供器) (40) 5.1.1.使用DataSources (41) 5.1.2.使用c3p0 (41) 5.1.3.使用proxool连接池 (43) 5.1.4.使用Hikari (44) 5.1.5.使用Hibernate内置的(不支持)的连接池 (45)

Hibernate 3入门

Hibernate 3入門 Hibernate 是「物件/關係對應」(Object/Relational Mapping)的解決方案,簡寫為ORM,簡單的說就是將Java 中的物件與物件關係,映射至關聯式資料庫中的表格與表格之間的關係,Hibernate 提供了這個過程中自動對應轉換的方案。 2001年未Hibernate 第一個版本發表,2003年6月8日Hibernate 2 發表,並於年未獲得Jolt 2004 大獎,後被JBOSS 收納而成為其子項目之一,2005年3月Hibernate 3 正式發表,當中有了一些重大的改變,這份文件將以之前Hibernate 2 時撰寫的文件為基礎,針對Hibernate 3作重新整理的動作,所使用的版本為Hibernate 3.0。 基礎入門 從一個最基本的物件關係映射自動化程式,瞭解Hibernate 組成的基本元素,並進一步瞭解Hibernate 的基礎語義、配置等概念。 ?O/R 映射入門 第一個Hibernate 程式很簡單,將一個物件映射至一個資料表。 o配置Hibernate o第一個Hibernate o第二個Hibernate ?基本配置 瞭解一下配置文件、映射文件中各種元素的意義,在進入物件關係映射的學習之前,這是必備的基本功夫。 o配置文件 o資料庫連結 o簡介快取(Session Level) o簡介事務管理(基於JDBC ) o映射文件 ?基本API 瞭解一下Hibernate 常使用的幾個類別之基本使用方式。 o Session o Session 管理 o Criteria 基本查詢 o Criteria 進階查詢 o DetchedCriteria o Query ?HQL(Hibernate Query Language) 這是Hibernate 官方所推薦的查詢語言,接近SQL 的語法,並提供更多的特性與封裝。 o基本查詢 o where、group by、order by 子句

相关文档
最新文档