hibernate , proxool

Hibernate 3.3.2版本
proxool 0.9.1
1.所需jar
hibernate
required文件夹下所有jar

hibernate3.jar
antlr-2.7.6.jar
dom4j.jar
javassist.jar
jta.jar
commons-collections.jar
slf4j-api.jar(最好跟slf4j-simple.jar版本一致)
slf4j-simple.jar(需另外下)

proxool

proxool.jar
proxool-cglib.jar
commons-loggin.jar(需另下)



2.编写config
src/config/hibernate/hibernate.cfg.xml
src/config/proxool.xml

proxool.xml(名字随便)
位置这里放在类路径下

<?xml version="1.0" encoding="UTF-8"?>
<proxool>
<alias>stone-proxool</alias>
<driver-url>jdbc:mysql://localhost:3306/stone</driver-url>
<driver-class>com.mysql.jdbc.Driver</driver-class>
<driver-properties>
<property name="user" value="aguu"/>
<property name="password" value="nopass"/>
</driver-properties>
<maximum-connection-count>10</maximum-connection-count>
<house-keeping-test-sql>select CURRENT_DATE</house-keeping-test-sql>
</proxool>

hibernate.cfc.xml(也在类路径下)

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

<hibernate-configuration>
<!-- hibernate自带连接池
<session-factory>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>

<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/stone</property>

<property name="hibernate.connection.username">aguu</property>
<property name="hibernate.connection.password">nopass</property>
<property name="show_sql">true</property>
<mapping resource="config/hibernate/Sort.hbm.xml"/>

</session-factory>
-->

<!--proxool连接池配置-->
<session-factory>

<!-- proxool连接池加载的类-->
<property name="hibernate.connection.provider_class">org.hibernate.connection.ProxoolConnectionProvider</property>

<!--连接池的别名,即配置连接池时起的别名-->
<property name="hibernate.proxool.pool_alias">stone-proxool</property>

<!--连接池文件的地址-->
<property name="hibernate.proxool.xml">config/proxool.xml</property>
<!--是否将运行期生成的SQL输出到日志以供调试-->
<property name="show_sql">true</property>

<mapping resource="config/hibernate/Sort.hbm.xml" />
</session-factory>
</hibernate-configuration>


3.hibernate 工具类
hibernateUtil.java

package com.aguu.core;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

public class HibernateUtil {

private static final SessionFactory sessionFactory;
private static final ThreadLocal session=new ThreadLocal();

static {
try {
// Create the SessionFactory from hibernate.cfg.xml
sessionFactory = new Configuration().configure("config/hibernate/hibernate.cfg.xml").buildSessionFactory();
} catch (Throwable ex) {
// Make sure you log the exception, as it might be swallowed
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}

public static SessionFactory getSessionFactory() {
return sessionFactory;
}

//取得当前线程的session
public static Session currentSession(){
Session s = (Session) session.get();
if(s==null){
s=sessionFactory.openSession();
session.set(s);
}
return s;
}

public static void closeSession(){
Session s = (Session)session.get();
if(s!=null){
s.close();
session.set(null);
}
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值