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

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**...

    JavaEE开发的颠覆者SpringBoot实战[完整版].part2

    4.5 Spring MVC 的高级配置 98 4.5.1 文件上传配置 98 4.5.2 自定义HttpMessageConverter 101 4.5.3 服务器端推送技术 106 4.6 Spring MVC 的测试 113 4.6.1 点睛 113 4.6.2 示例 114 第三部分 实战Spring Boot 第5 ...

    JavaEE开发的颠覆者SpringBoot实战[完整版].part3

    4.5 Spring MVC 的高级配置 98 4.5.1 文件上传配置 98 4.5.2 自定义HttpMessageConverter 101 4.5.3 服务器端推送技术 106 4.6 Spring MVC 的测试 113 4.6.1 点睛 113 4.6.2 示例 114 第三部分 实战Spring Boot 第5 ...

    JavaEE开发的颠覆者SpringBoot实战[完整版].part1

    4.5 Spring MVC 的高级配置 98 4.5.1 文件上传配置 98 4.5.2 自定义HttpMessageConverter 101 4.5.3 服务器端推送技术 106 4.6 Spring MVC 的测试 113 4.6.1 点睛 113 4.6.2 示例 114 第三部分 实战Spring Boot 第5 ...

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

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

    spring-mvc-step-by-step

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

    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。这些工具和技术的结合,能够实现前后端分离,提高系统...

Global site tag (gtag.js) - Google Analytics