zoukankan      html  css  js  c++  java
  • 基于javabean的B/S程序数据库连接解决方案

    基本思路,建立一个全局数据库session,共所有javabean使用。


    建立一个公共的类,如main.class,设置成application。
    import org.hibernate.cfg.*;
    import org.hibernate.Query;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.jbpm.JbpmConfiguration;
    public class main
    {
    public static Session session,oracleSession;
    public static SessionFactory sessionFactory,oracleSessionFactory;
    public String INIT;
    public String getINIT()
    {
    openSession();
    return this.INIT;
    }

    public static void openSession()
    {
    try
    {
    //Hibernate Configuration
    if(configuration == null)
    {
    configuration = new Configuration().configure("hibernate.cfg.xml");
    }
    if(sessionFactory == null || sessionFactory.isClosed())
    {
    sessionFactory = configuration.buildSessionFactory();
    }

    if(session == null || !session.isOpen())
    {
    session = sessionFactory.openSession();
    Transaction tx= main.session.beginTransaction();
    session.createSQLQuery("SET NAMES utf8").executeUpdate();
    tx.commit();
    }
    }
    catch(Exception ex){ex.printStackTrace();}
    }
    }

    其它javabean在使用数据库连接Session时,直接使用main.session即可。
    例如Query query = main.session.getNamedQuery("you sql");

    你需要在xhtml页面中放置#{main.INIT}代码,用以第一次调用main javabean。

    针对mysql,你需要配置c3p0,但不需要修改上去代码。
  • 相关阅读:
    [oracle] linux Oracle 安装配置
    [dns] linux dns 安装配置
    [apache] linux Apache 编译安装
    [yum] linux yum 配置本地和ftp源
    [ftp] linux ftp 安装配置
    [ssh 无密码访问]linux ssh公匙密匙无密码访问
    [php ] linux php 搭建
    [mysql ] linux mysal 修改字符集
    [ mysql ] linux mysql 忘记root密码重置
    国安是冠军
  • 原文地址:https://www.cnblogs.com/liuzhengdao/p/1630023.html
Copyright © 2011-2022 走看看