`
zpt
  • 浏览: 3489 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

idea 4.5 + tomcat 4

阅读更多
0、拷贝tomcat5.0的common/lib/下的文件到tomcat4.1的common/lib/下
commons-dbcp-1.2.jar
commons-el.jar
commons-pool-1.2.jar

1、Hibernate 整到Module Libraries中去
cglib-full-2.0.1.jar
commons-collections-2.1.jar
commons-lang-1.0.1.jar
commons-logging-1.0.3.jar
dom4j-1.4.jar
ehcache-0.7.jar
hibern8ide.jar
hibernate-tools.jar
hibernate2.jar
jdom.jar
jta.jar
odmg-3.0.jar
oscache-2.0.jar

2、ojdbc14.jar 整到JDK的Classpath中去(Hibernate中的Clob字段)
(http://otn.oracle.com/software/tech/java/sqlj_jdbc/content.html)
(http://otn.oracle.com/software/tech/java/sqlj_jdbc/htdocs/jdbc9201.html)
并且要拷贝到tomcat4.1的common/lib/目录中

1、Blob和BLOB的问题

java.sql.Blob
oracle.sql.BLOB

这两个blob仅仅是大小写不同,但是差异很大,java.sql.Blob是一个接口,而oracle.sql.BLOB是一个实现java.sql.Blob的类,并且还有很多扩展的属性和方法,注意不要搞混了。


2、JDBC2.0和JDBC3.0的问题

classes12.zip实现了JDBC2.0(JDK1.3),而JDBC2.0对于Blob的操作只有读,没有写,所以classes12.zip只好自己扩展了一套对Blob进行写的API,我的例子就是用了这套API。

ojdbc14.jar实现了JDBC3.0(JDK1.4),JDBC3.0已经包括了对Blob写的操作,而ojdbc14.jar也实现了该API。

jconn2d.jar sybaseJDBCDriver

//3、zpt.jar 整到Module Libraries中去(Hibernate)
其中要包含javax/transaction/Synchronization
(取至weblogic.jar)
3、jta.jar 从oracle\ora90\jlib\下整到Module Libraries中去(Hibernate)
其中要包含javax/transaction/Synchronization

4、DataSource DataSource ds=(DataSource)new InitialContext().lookup("java:comp/env/jdbc/pmis");
配置tomcat4.1的conf/server.xml文件,加入如下:

         
<Context path="/pmis" docBase="pmis">
              <Resource name="jdbc/pmis" scope="Shareable" type="javax.sql.DataSource"/>
              <ResourceParams name="jdbc/pmis">
                  <parameter>
                      <name>factory</name>
                      <value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
                      </parameter>
                  <!-- DBCP database connection settings -->
                  <parameter>
                      <name>url</name>
                      <value>jdbc:oracle:thin:@10.161.161.135:1521:oradb</value>
                  </parameter>
                  <parameter>
                      <name>driverClassName</name>
                      <value>oracle.jdbc.driver.OracleDriver</value>
                  </parameter>
                  <parameter>
                      <name>username</name>
                      <value>pmis</value>
                  </parameter>
                  <parameter>
                      <name>password</name>
                      <value>pmiswh</value>
                  </parameter>
                  <!-- DBCP connection pooling options -->
                  <parameter>
                      <name>maxWait</name>
                      <value>3000</value>
                  </parameter>
                  <parameter>
                      <name>maxIdle</name>
                      <value>100</value>
                  </parameter>
                  <parameter>
                      <name>maxActive</name>
                      <value>10</value>
                  </parameter>
              </ResourceParams>
          </Context>


5、Clob

           
public void add(Cat obj); throws Exception{
                Session sess=HibernateUtil.currentSession();;
                Transaction tx=sess.beginTransaction();;
        
                obj.setMes(Hibernate.createClob(" "););;
                sess.save(obj);;
                sess.flush();;
        
                sess.refresh(obj, LockMode.UPGRADE);;
                CLOB clob=(CLOB);obj.getMes();;
                Writer pw=clob.getCharacterOutputStream();;
                pw.write(obj.getMesString(););;
                pw.flush();;
                pw.close();;
                sess.flush();;
        
                tx.commit();;
                HibernateUtil.closeSession();;
            }
            public void add1(Cat obj); throws Exception{
                Context ctx=new InitialContext();;
                DataSource ds=(DataSource);ctx.lookup("java:comp/env/jdbc/pmis");;
                Connection conn=ds.getConnection();;
                conn.setAutoCommit(false);;
                Statement stmt=conn.createStatement();;
                stmt.executeUpdate("update cat set mes=empty_clob(); where id=2079");;
                ResultSet rs=stmt.executeQuery("select mes from cat where id=2079 for update");;
                if(rs.next(););{
                    //CLOB clob=((OracleResultSet);rs);.getCLOB("mes");;
                    CLOB clob=(CLOB);rs.getClob("mes");;
                    Writer pw=clob.getCharacterOutputStream();;
                    pw.write(obj.getMesString(););;
                    pw.flush();;
                    pw.close();;
                }
                rs.close();;
                stmt.close();;
                conn.commit();;
                conn.close();;
            }
            public List lists(); throws Exception{
                Session sess=HibernateUtil.currentSession();;
                Query query=sess.createQuery("from Cat");;
                List list=query.list();;
                HibernateUtil.closeSession();;
                for(int i=0; i<list.size();; i++);{
                    Cat obj=(Cat);list.get(i);;
                    obj.setMesString(obj.getMes();==null?null:obj.getMes();.getSubString(1, (int);obj.getMes();.length();););;
                }
                return list;
            }



package pmis.common.hibAccess;

import net.sf.hibernate.*;
import net.sf.hibernate.cfg.*;

public class HibernateUtil {

    private static final SessionFactory sessionFactory;

    static 
    {
        try 
        {
            sessionFactory = new Configuration();.configure();.buildSessionFactory();;
        } 
        catch (HibernateException ex); 
        {
            throw new RuntimeException("Exception building SessionFactory: " + ex.getMessage();, ex);;
        }
    }

    public static final ThreadLocal session = new ThreadLocal();;

    public static Session currentSession(); throws HibernateException 
    {
        Session s = (Session); session.get();;
        // Open a new Session, if this Thread has none yet
        //if (s == null); 
        {
            s = sessionFactory.openSession();;
            session.set(s);;
        }
        return s;
    }

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



package test;

import pmis.common.hibAccess.HibernateUtil;

import javax.sql.DataSource;
import javax.naming.InitialContext;
import javax.naming.Context;
import java.sql.ResultSet;
import java.sql.Statement;
import java.sql.Connection;
import java.io.Writer;

import net.sf.hibernate.Session;
import ammeter.valueObject.TsBmRelation;
import oracle.sql.CLOB;

/**
 * Created by IntelliJ IDEA.
 * User: zpt
 * Date: 2005-1-26
 * Time: 9:03:54
 * To change this template use File | Settings | File Templates.
 */
public class test {
    public test(); throws Exception{
        t2();;
    }
    private void t1(); throws Exception{
        Context iniContext=new InitialContext();;
        Context envContext=(Context);iniContext.lookup("java:comp/env");;
        DataSource ds=(DataSource);envContext.lookup("jdbc/pmis/oracle");;
        Connection conn=ds.getConnection();;
        Statement stmt=conn.createStatement();;
        ResultSet rs=stmt.executeQuery("select name from Cat");;
        String s="";
        while(rs.next(););{
            s+=rs.getString("name");;
        }
        rs.close();;
        stmt.close();;
        conn.close();;
    }
    private void t2(); throws Exception{
        Session sess=HibernateUtil.currentSession();;
        TsBmRelation obj=(TsBmRelation);sess.get(TsBmRelation.class, new Long(1971););;
        HibernateUtil.closeSession();;
    }
    private void t3(); throws Exception{
        net.sf.hibernate.HibernateException
        Context iniContext=new InitialContext();;
        Context envContext=(Context);iniContext.lookup("java:comp/env");;
        DataSource ds=(DataSource);envContext.lookup("jdbc/pmis/oracle");;
        Connection conn=ds.getConnection();;
        conn.setAutoCommit(false);;
        Statement stmt=conn.createStatement();;
        stmt.executeUpdate("update cat set mes=empty_clob(); where id=2148");;
        ResultSet rs=stmt.executeQuery("select mes from cat where id=2148 for update");;
        if(rs.next(););{
            //CLOB clob=((OracleResultSet);rs);.getCLOB("mes");;
            CLOB clob=(CLOB);rs.getClob("mes");;
            Writer pw=clob.getCharacterOutputStream();;
            pw.write("asdfasdf");;
            pw.flush();;
            pw.close();;
        }
        rs.close();;
        stmt.close();;
        conn.commit();;
        conn.close();;
    }
    private void t4(); throws Exception{
        Session sess=HibernateUtil.currentSession();;

        HibernateUtil.closeSession();;
    }
}
分享到:
评论

相关推荐

    intelJ_IDEA设置多模块配置使用

    - 如果未安装 Tomcat, 可以通过 IDEA 的 “Preferences” -&gt; “Build, Execution, Deployment” -&gt; “Application Servers” 添加并配置 Tomcat。 **2.2 配置参数** - 在 “Run” -&gt; “Edit Configurations” 中...

    idea相关配置.docx

    IntelliJ IDEA,通常简称为Idea,是Java开发者广泛使用的集成开发环境(IDE),以其高效、智能的代码辅助和强大的功能而闻名。本文档将详细介绍如何配置Idea以优化开发体验。 首先,我们来讨论如何添加JDK。在Idea...

    intellij idea 的基本使用大全

    - **配置 Tomcat**:在 IntelliJ IDEA 中,可以通过配置服务器选项来整合 Tomcat。 - **运行 Web 应用**:配置完成后,可以轻松地运行和调试 Web 应用程序。 #### 六、创建 Web 项目并且部署 - **6.1 创建 Web ...

    JavaWeb的学生成绩管理系统 代码+报告+数据库.zip

    1.5 **Eclipse/IntelliJ IDEA**:常用的Java开发集成环境,提供代码编辑、调试等支持。 1.6 **Tomcat**:应用服务器,部署和运行JavaWeb应用程序。 **2. 数据库设计** 2.1 **MySQL**:关系型数据库管理系统,用于...

    基于ssm+mysql的银行帐目管理系统源码数据库论文.doc

    - 开发工具:Eclipse或IntelliJ IDEA等Java集成开发环境 - 构建工具:Maven或Gradle,用于项目管理和依赖管理 - 版本控制:Git,用于代码版本控制 - 数据库管理:MySQL Workbench,用于数据库设计与管理 - 测试工具...

    JSP 程序设计从入门到精通 PDF 教程

    ##### 4.5 用Java Servlets代替CGI - 这部分讨论了使用Java Servlets替代传统CGI程序的优势。 ##### 4.6 JSP/Servlet中的汉字编码问题 - 这部分讨论了如何处理JSP/Servlet中的汉字编码问题。 ##### 4.7 图解...

    基于ssm+mysql决策树算法的大学生就业预测系统源码数据库.docx

    2. **决策树算法**:选择合适的决策树算法(如CART、ID3、C4.5等),并调整参数以优化预测结果。 3. **接口设计**:定义清晰的API接口规范,确保前后端之间数据交互的准确性。 4. **性能优化**:针对大数据量的查询...

    基于JavaWeb的在线考试系统的设计与实现.doc

    开发环境包括Eclipse或IntelliJ IDEA,服务器端使用Tomcat。 4. 系统分析 4.1 现状分析 当前的在线考试系统存在功能单一、安全性差、用户体验不佳等问题。本项目旨在解决这些问题,打造一个稳定、安全、易用的在线...

    jsp作业实验提

    根据提供的文件信息,这里主要涉及的是JSP基础知识与实验操作,但需要注意的是,文件内容中提到了“ASP.NET4.5网站的建立及运行”,这实际上与JSP无关,因此,接下来将重点围绕JSP的基础知识及其应用进行展开。...

    Axis使用Stub方式开发Webservice只要看这个

    - Eclipse或IntelliJ IDEA等集成开发环境 #### 四、开发步骤详解 ##### 4.1 创建服务端代码 首先,我们创建一个简单的服务端类`SayHello`,该类包含一个方法`getName`,用于返回问候信息。 ```java package server...

    jfinal-3.0-manual

    - **启动方式**:通过IDEA内置的Tomcat服务器或者独立部署的Tomcat服务器启动项目。 - **热部署支持**:部分IDE如IntelliJ IDEA支持热部署功能,有助于开发过程中的调试。 **1.6 开启浏览器看效果** - **测试URL**...

    spring-mvc-step-by-step

    这通常可以通过IDE(如IntelliJ IDEA或Eclipse)完成,也可以手动使用Maven或Ant构建工具来实现。 **1.4 检查应用是否正常工作** 启动Tomcat服务器后,通过浏览器访问应用的URL来检查应用是否可以正常运行。这一...

    基于Web的校园网二手商品交易系统的设计与实现论文1.doc

    4.6 开发环境包括Java开发工具(如Eclipse或IntelliJ IDEA)、数据库管理系统(如MySQL)和应用服务器(如Tomcat),论文中详细介绍了这些工具的配置方法。 5. 系统分析与设计 5.1 需求分析阶段,明确了系统的基本...

    Jfinal-3.2手册

    在 IntelliJ IDEA 中开发 JFinal 项目时,可以直接利用 IDEA 的 Maven 集成功能来管理 JFinal 依赖,并通过内置的 Tomcat 服务器进行调试。 **1.9 特别声明** 作者特别指出了一些关于 JFinal 使用上的注意事项,...

    springboot204在线考试系统.zip

    5.1 环境配置:安装JDK、Maven、IDEA等开发工具,配置SpringBoot项目结构。 5.2 数据库设计:根据系统需求设计合理的数据库表结构,编写SQL脚本。 5.3 编码实现:使用SpringBoot相关技术实现各功能模块,遵循面向...

    基于JSP的图书管理网站的设计与实现.pdf

    本设计采用的开发工具主要包括JSP、Servlet、HTML、CSS和JavaScript,数据库选用MySQL,开发环境为Eclipse或IntelliJ IDEA,服务器平台可能选择Apache Tomcat。这些工具和技术的结合,能够实现前后端分离,提高系统...

    参考论文8-基于SSH在线拍卖系统设计与实现.doc

    3.2 **开发环境**:通常包括JDK、Eclipse或IntelliJ IDEA等开发工具,Tomcat或Jetty等应用服务器,以及MySQL或Oracle等数据库。 3.3 **可行性分析**:考虑到现有的技术和市场需求,建立在线拍卖系统是可行的,且...

    hibernate教程

    - **创建项目**:使用 Eclipse 或 IntelliJ IDEA 创建一个新的 Java Web 项目。 ##### 1.2 第一个持久化类 - **定义实体类**:例如 `User` 类,包含基本属性如 id、name、email 等。 - **编写 getter 和 setter ...

    基于JSP的超市管理系统的设计与实现毕业设计.pdf

    本系统开发需选用合适的开发环境,如Eclipse或IntelliJ IDEA,搭配JDK和Tomcat服务器。同时,还需要数据库管理系统,如MySQL,用于存储和处理超市相关数据。 2.2 功能分析 系统需具备用户登录、注册、商品信息管理...

Global site tag (gtag.js) - Google Analytics