引入约束
连接数据库(重点)
Hibernate中其他配置
引入映射文件(必须)
按照hibernate核心文件配置的顺序是以上的排序。我现在以步骤的重要的先后顺序来按点讲解,顺便也当自己复习和回顾。
连接数据库
现在主要使用三种数据库:MySQL,Oracle,SQL Server。
MySQL
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <hibernate-configuration> <session-factory> <!-- 加载驱动 连接数据库 数据库用户名 数据库密码 --> <property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property> <property name="hibernate.connection.url">jdbc:mysql: <property name="hibernate.connection.username">mysqlusername</property> <property name="hibernate.connection.password">mysqlpassword</property>
</session-factory> </hibernate-configuration>
|
Oracle
1 2 3 4 5 6 7 8 9 10 11
| <hibernate-configuration> <session-factory>
<property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property> <property name="hibernate.connection.url"> jdbc:oracle:thin:@localhost:1521:dataBaseName</property> <property name="hibernate.connection.username">username</property> <property name="hibernate.connection.password">password</property>
</session-factory> </hibernate-configuration>
|
SQL Server
1 2 3 4 5 6 7 8 9 10 11 12 13
| <hibernate-configuration> <session-factory>
<property name="hibernate.connection.driver_class"> com.microsoft.sqlserver.jdbc.SQLServerDriver </property> <property name="hibernate.connection.url">jdbc:sqlserver: </property> <property name="hibernate.connection.username">username</property> <property name="hibernate.connection.password">password</property>
</session-factory> </hibernate-configuration>
|
官方给出配置信息可查看hibernate-release\project\etc内的hibernate.properties文件
引入映射文件
1
| <mapping resource="org/itcast/entity/User.hbm.xml"/>
|
org.itcast.entity:包名。User.hbm.xml:映射文件名。
引入约束
在配置文件头引入dtd约束
1 2 3
| <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
|
Hibernate中其他配置
1 2
| <property name="hibernate.show_sql">true</property> <property name="hibernate.format_sql">true</property>
|
1 2
| <property name="hibernate.hbm2ddl.auto">update</property>
|
1 2 3 4 5 6
| <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.dialect">org.hibernate.dialect.Oracle8iDialect</property>
|
数据库方言:在数据库里面相同的功可能是需要不同的关键字才能实现。比如:实现分页,mysql关键字是limit,oracle是rownum。为了区别并执行你写的底层sql语句,需要配置数据库相应的方言
简单的介绍一下这三种数据库:
MySQL,最初的核心思想主要是开源、简便、易用。经过几次改版之后蜕变成一个成熟的关系型数据库系统,由于MySQL的早期定位,其主要应用场景就是互联网开发。基本上,互联网的爆发成就了MySQL,LAMP架构风靡天下。
Oracle,基于运算架构了一种新型的数据存储模型,基于这种模型Oracle成为了一个非常典型的关系数据库,其主要特点是结构严谨、高性能、高可用。由于诞生的早,使其在传统数据库应用中大杀四方,金融、通信、能源、运输、零售、制造等各个行业的大型公司基本都是用了Oracle。
SQL Server,一般是指MS SQL Server,其最大的优势在于集成了MS公司各类产品及资源,提供了强大了可视化界面、高度集成的管理工具。MS SQL Server是MS公司在软件集成方案中的重要一环,也为WIN系统在企业级应用中的普及做出了很大贡献。