hibernate 入门
来源:互联网 发布:法属圭亚那 知乎 编辑:程序博客网 时间:2024/05/01 22:44
环境复杂,垃圾一大堆:
TOMCAT5.5
hibernate3.2.5
mysql5.0
proxool0.9
要点一:
web.xml中只加入管理信息,不要启动tomcat就运行pool.让hiber自己去运行.
<servlet>
<servlet-name>Admin</servlet-name>
<servlet-class>org.logicalcobwebs.proxool.admin.servlet.AdminServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Admin</servlet-name>
<url-pattern>/Admin</url-pattern>
</servlet-mapping>
要点二:
只需要1个工厂去绑定连接池,所以这个工厂被产生到一个共用的bean中.
如果多个工厂去管理连接池,必然会导致连接池重复调用错误!!!
并为了只有一个工厂,所以工厂代码是static代码,也是为了只有一个工厂实例!!!
要点三:
一个jsp用hibernate的例子
<%@ page import="java.text.*"%>
<%@ page import="java.util.*" %>
<%@ page import="org.hibernate.*" %>
<%@ page import="org.hibernate.cfg.*" %>
<%@ page import="po.*" %>
<%@ page contentType="text/html;charset=GB2312" %>
<jsp:useBean id="db" class="po.HibernateUtil" />
<html>
<head></head>
<body>
<%
try
{
Calendar cal = Calendar.getInstance();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String mDateTime=formatter.format(cal.getTime());
user u1 = new user();
u1.setUser_name(mDateTime);
u1.setUser_pass("6330111");
Session mysession = db.getSessionFactory().openSession();
Transaction tx = mysession.beginTransaction();
mysession.save(u1); //hiber API to PO
tx.commit();
mysession.close();
u1=null; //end
user u2 = new user();
Session mys2 = db.getSessionFactory().openSession();
Transaction tx2 = mys2.beginTransaction();
u2=(user)mys2.get(user.class,new Integer(30)); //hiber API to PO,注意ID的类型,要一致呀!!
tx2.commit();
mys2.close();
out.println(u2.getUser_pass());
u2=null; //end
}
catch(Exception e)
{
e.printStackTrace();
}
%>
</body>
</html>
要点四:
那一个工厂的bean:
package po;
import org.hibernate.*;
import org.hibernate.cfg.*;
public class HibernateUtil
{
public static SessionFactory sessionFactory;
static
{
try
{
Configuration config = new Configuration();
config.addClass(user.class);
sessionFactory = config.buildSessionFactory();
}
catch (Throwable ex)
{
System.err.println("Initial SessionFactory creation failed." + ex);
throw new ExceptionInInitializerError(ex);
}
}
public static SessionFactory getSessionFactory()
{
return sessionFactory;
}
}
- Hibernate 入门
- Hibernate 入门
- Hibernate入门
- Hibernate入门
- Hibernate入门
- Hibernate 入门
- Hibernate入门
- Hibernate入门
- Hibernate 入门
- Hibernate入门
- Hibernate入门
- Hibernate入门
- Hibernate入门
- Hibernate入门
- Hibernate入门
- hibernate 入门
- Hibernate入门
- hibernate入门
- 让Subversion和Visual Studio 2005一起工作
- Dreamweaver 8 smartytags
- 利用MFC实现对象拖放
- js脚本实现子页面向父页面发送信息
- 关于C#和C++
- hibernate 入门
- Acegi 的配置(2)-applicationContext-acegi-security.xml
- tomcat5 hibernate3 mysql5 jsp的实现
- 一步一步学Repast 第一章 概要
- 线程的同步
- hibernate中的LOG4J日志记录
- 2007_08_17(2)炸弹人开发日志
- C#中播放声音
- hibernate3和mysql5第一步