當前位置:首頁 » 數據倉庫 » hibernate怎麼配置的
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

hibernate怎麼配置的

發布時間: 2022-01-13 04:40:50

『壹』 hibernate 怎麼配置自增。。。。。。。

步驟如下:
1,新建一個資料庫
-- Create table
create table TBL_SCHEDULE_TEMPLATE
(
ID VARCHAR2(100) not null,
NAME VARCHAR2(4000) not null,
PROJECT VARCHAR2(100) not null,
) //

2,假設已經有個java實體和hibernate的配置文件

需要在資料庫中建立一個序列 sequence

-- Create sequence

create sequence SEQ_TEMPLATE
minvalue 1
maxvalue 999999999999999999999999999
start with 1
increment by 1
cache 20;

3,修改hibernate配置文件

Java代碼
<id name="id" type="string">
<column name="ID" precision="16" scale="0" />
<generator class="sequence">
<param name="sequence">SEQ_TEMPLATE</param>
</generator>
</id>

『貳』 怎麼創建hibernate配置文件

在src目錄下創建名為hibernate.cfg.xml的配置文件:以下為配置內容:

<!DOCTYPEhibernate-configurationPUBLIC"-//Hibernate/Hibernate
ConfigurationDTD3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!--資料庫URL-->
<propertyname="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:orcl</property>
<!--用戶-->
<propertyname="connection.username">tempuser</property>
<!--密碼-->
<propertyname="connection.password">accp</property>
<!--驅動-->
<propertyname="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<!--指定getCurrentSession()方法所得到的Session由當前線程來跟蹤管理-->
<property
name="current_session_context_class">thread</property>
<!--資料庫方言-->
<propertyname="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<!--輸出運行期生成的sql語句到控制台-->
<property
name="show_sql">true</property>
<!--將SQL語句格式化後輸出到控制台-->
<property
name="format_sql">true</property>

<!--映射配置文件-->
<mappingresource="com/zk/po/student.hbm.xml"/>
</session-factory>
</hibernate-configuration>

『叄』 hibernate配置文件hibernate.cfg.xml怎麼操作

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>

<session-factory>
<property name="connection.url">jdbc:oracle:thin:@127.0.0.1:1521:orcl</property>
<property name="connection.username">username</property>
<property name="connection.password">password</property>
<!-- 資料庫JDBC驅動類名 -->
<property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
<!-- 資料庫方言 -->
<property name="dialect">org.hibernate.dialect.Oracle10gDialect</property>
<!-- ddl語句自動建表 -->
<property name="hbm2ddl.auto">none</property>
<property name="show_sql">true</property>
<property name="format_sql">true</property>

<!-- 連接池配置 -->
<property name="hibernate.connection.provider_class">
org.hibernate.service.jdbc.connections.internal.C3P0ConnectionProvider
</property>
<!-- 連接池中JDBC連接的最小數量。Hibernate默認為1 -->
<property name="hibernate.c3p0.min_size">5</property>
<!-- 連接池中JDBC連接的最大數量。Hibernate默認為100 -->
<property name="hibernate.c3p0.max_size">20</property>
<!-- 何時從連接池中移除一個空閑的連接(以秒為單位)時。Hibernate默認為0,永不過期 -->
<property name="hibernate.c3p0.timeout">300</property>
<!-- 被緩存的預編譯語句數量。用來提高性能。Hibernate默認為0,緩存不可用-->
<property name="hibernate.c3p0.max_statements">100</property>
<!-- 一個連接被自動驗證前的閑置時間(以秒為單位)。Hibernate默認為0 -->
<property name="hibernate.c3p0.idle_test_period">3000</property>

<!-- 注冊ORM映射文件 -->
<mapping class="com....." />

</session-factory>
</hibernate-configuration>

『肆』 hibernate怎麼讀取配置文件

Hibernate載入配置文件的兩種方法:
(一):configuration.configure();(默認載入src下的hibernate.cfg.xml文件)
代碼:
private static SessionFactory sf = null; static{

Configuration configuration = new Configuration();

configuration.configure();

sf = configuration.buildSessionFactory();

}

如果使用了這種載入方法那麼在hibernate.cfg.xml文件中就需要mapping XX.hbm.xml文件了
代碼:
<session-factory>
<mapping resource="domain/Students.hbm.xml"/>

<mapping resource="domain/Techer.hbm.xml"/></session-factory>

第二種方法使用的是con.addClass(class);方法
在test類中代碼:
private static SessionFactory sf = null; static{

Configuration configuration = new Configuration();

configuration.configure();

configuration.addClass(Techer.class);

configuration.addClass(Students.class);

sf = configuration.buildSessionFactory();

}

『伍』 Hibernate配置

none:不做任何操作

create:啟動服務後,先drop刪掉表,然後通過映射文件自動創建資料庫表,每次啟動都會刪了表然後重建(當心使用)
create-drop: 也表示創建,只不過再系統關閉前執行一下drop
update: 這個操作啟動的時候會去檢查schema是否一致,如果不一致會做scheme更新
validate: 啟動時驗證現有schema與你配置的hibernate是否一致,如果不一致就拋出異常,並不做更新

『陸』 如何修改hibernate配置

一、hql方式,可以動態修改配置文件、修改pojo類,但是hql怎麼寫?

你把hql語句寫在properties文件當中,是可以實現配置文件,但是不能實現動態啊,tomcat只是在初始化的時候才載入它的,但是可以通過插件方式實現,可以google下

二、sql方式,用hibernate如何實現?
不知道樓主用沒用過回掉這個東東
我給你個例子,你看看吧,看不明白可以拍磚

例子:
這是使用spring中hibernateTemplate的

Java代碼
getHibernateTemplate().execute(new HibernateCallback() {
public Object doInHibernate(Session session)
throws HibernateException {
String sql = "DELETE FROM UserRole ur WHERE ur.user=:user";
Query query = session.createQuery(sql);
query.setParameter("user", session.get(User.class, tempId));
return query.executeUpdate();
}
});

如果沒用spring的話,可以直接使用:

Java代碼
String sql = "DELETE FROM UserRole ur WHERE ur.user=:user";
Query query = session.createQuery(sql);
query.setParameter("user", session.get(User.class, tempId));
之後execute就行啦

注意,不用spring的話,記得加事物

『柒』 如何安裝配置hibernate

打開Eclipse 開發工具

菜單 help,選擇 Eclipse marketplace

選擇search 選項卡,搜索 hibernate 關鍵字

選擇最新的安裝版本(eclipse version)的Hibernate Tools點擊install ,彈出選擇界面,選擇如圖:

confirm確認安裝。
配置使用hibernate Tools

選擇 window 菜單中的Customize Perspective ,界面如圖

選擇 hibernate code generation,如圖

將在Eclipse界面工具欄生成命令按鈕,如圖

點擊,選擇Hibernate code generation Configuration,new 一個新的配置。

可以配置,生成java code 文件等

『捌』 怎麼新建hibernate配置文件

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
<session-factory>
<!-- 1. 配置連接資料庫的基本信息 -->
<property name="connection.username">root</property>
<property name="connection.password">123456</property>
<property name="connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="connection.url">jdbc:mysql:///test</property>

<!-- 2. 配置hibernate 的基本信息 -->
<!-- hibernate 所使用的資料庫方言 -->
<property name="hibernate.dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>

<!-- 執行操作時是否在控制台列印SQL -->
<property name="show_sql">true</property>

<!-- 是否對SQL 進行格式化 -->
<property name="format_sql">true</property>

<!-- 指定自動生成數據表的策略 -->
<property name="hbm2ddl.auto">update</property>

<!-- 指定關聯的 .hbm.xml 文件 -->
<mapping resource="com/home/hibernate/User.hbm.xml"/>

</session-factory>
</hibernate-configuration>

『玖』 hibernate環境配置與怎麼配置hibernate環境

首先啟動myeclipse

新建一個java project——》這里舉例命名為hibernate_27_test

選中項目——》右鍵——》myeclipse——》add hibernate capabilities

這是時候彈出hibernate的jar包選中,一般只選核心包和annotationb包——》next

下邊是創建hibernate.cfg.xml,next

選中一個資料庫,next

下一步,創建一個存放sessionFactory的包

最後finish即可

9
添加完成即可見hibernate環境有了,還自動創建了hibernate.cfg.xml和sessionFactory

『拾』 Hibernate怎麼利用配置文件配置HQL/SQL

<?xml version="1.0"?>

<!DOCTYPE hibernate-mapping PUBLIC
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">

<hibernate-mapping>

<typedef class="org.jbpm.db.hibernate.StringMax" name="string_max" />

<!-- related to ProcessDefintion -->
<!-- ########################### -->
<!-- HQL -->
<query name="QueryUser">
<![CDATA[
FROM User u
WHERE u.username = :username
]]>
</query>
<!--SQL-->
<sql-query name="SqlQueryUser">
<![CDATA[
SELECT
{u.*}
FROM
user u
WHERE
u.user_name = :userName
]]>
<return alias="u" class="com.test.entity.User"/>
</sql-query>

</hibernate-mapping>
hibernate.cfg.xml
---------------------
<?xml version="1.0"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>
<session-factory>

<mapping resource="User.hbm.xml"/>

<mapping resource="hibernate.queries.hbm.xml"/>

</session-factory>
</hibernate-configuration>

String username = "";
Session session = ;
Query query = session.getNamedQuery("QueryUser");
//Query query = session.getNamedQuery("SqlQueryUser");
query.setString("username", username);
List userList = query.list();