Eclipse3.2+Tomcat5.5.17+Oracle9配置

 
Java Web 开发环境布置向来很烦琐,还记得在做本科毕业设计时配置 JBuilder2005+Weblogic8.1+SQL2k 整合环境时的痛苦经历,近来整合配置 Eclipse3.2+Tomcat5.5.17+Oracle9i 环境又累了 N 小时,这可不得不怪 B/S 结构的 苦了开发者,方便千万用户 舍己为人精神,以及各种工具版本纷杂带来的不便与不少不负责任网友的胡乱指引。下面小弟把自己的成功经验向大家汇报,希望有需要的友人能少走弯路。具体步骤如下:
   1. 安装 Java 开发环境 Eclipse3.2 ,安装 Oracle9i 数据库
  首先安装 SUN JDK1.4 以上版本的 Java 基础开发环境,配置 Java 系统变量(这个太基础,不具体展开了)。接着下载解压安装 Eclipse3.2 开发环境,根据个人需要安装语言包、 MyEclipse 等插件扩充功能(也可以先不安装)。
  安装 Oracle9i 数据库,创建测试数据库: NBZJU DBA LUHAO/11111 ,建立表空间: LUHAO 和测试表: USER_INF 。其中 USER_INF 表具有 USER_ID USER_NAME USER_TEL 字段属性,并添如若干测试记录。
   2. 安装 Tomcat 及其插件
  下载并解压 Tomcat 启动插件 tomcatPluginV31.zip ,将其下目录文件拷入 eclipse/plugins 目录下(这步若成功执行, eclipse 运行后将发现多了 Tomcat 菜单项及其启动、停止、重启等快捷按钮。若看不到,可能通过删除 eclipse/configuration 目录下除 config.ini 外所有文件,再重启 eclipse 来解决)。
  下载 Tomcat 标准程序 apache-tomcat-5.5.17.zip admin 控制台程序 apache-tomcat-5.5.17-admin.zip (将后者解压入前者的解压目录下可以获得登陆 admin 图形管理界面的功能,这将方便后面的数据源配置,不用直接在 server.xml 中自己输入参数,即通过图形界面配置生成相应的标准 XML 参数。否则手动输入参考来的配置容易出错,因为不同版本 tomcat XML 标记语法解析不同,例如 5.1 版的参数放入 5.5 版是无效的。因此,强烈建议用图形界面配置数据源!)
  配置系统变量 “TOMCAT_HOME” ,其值为关联到 apache-tomcat-5.5.17 目录的路径。打开 apache-tomcat-5.5.17/conf/tomcat-users.xml 文件,在< tomcat-users >< /tomcat-users >标记元素中加入:< user username="luhao" password="12345" roles="admin,manager"/ >,即加入角色身份为 admin manager 的管理员 luhao ,我们之后需要以 manager 角色上传 Web 应用程序和以 admin 角色配置数据员。再打开 apache-tomcat-5.5.17/conf 目录下 server.xml 文件,将< Connector 元素后 port="8080" 的属性改为 port="8008" (注意:由于 oracle 已占用了 Tomcat 默认的 8080 访问端口,必须更改其它未被占用的空闲端口,此处假设为 8008 )。
  接下来运行 eclipse 程序,配置 Tomcat 属性。打开菜单 窗口 / 首选项 ,打开 “Java/ 已安装的 JRE” 选项,将运行环境参数位置定位于 JDK 目录下的 JRE 目录。打开 “Tomcat” 选项, Tomcat Version 选择 5.x Tomcat Home 定位到 apache-tomcat-5.5.17 目录,其余默认关联即可。打开 “Tomcat/JVM Settings” “Tomcat/Source Path” 选项, JRE 选择刚配置的已安装的 JRE Automatcially compute source path 打勾。再打开 “Tomcat Manager App” 选项, url 输入 http://localhost:8008/manager username password Tomc 
at 中新加入的 luhao 12345 (这步可以保证将 Web 应用程序发布到 Tomcat ,项目 Reload 也不会出错)。
   3. 获取 Oracle9i 相应的 JDBC 驱动程序,配置 Data Sources Context
  拷贝 Oracle9i 安装目录下 ora90/jdbc/lib/classes12.jar 驱动文件到 Tomcat 目录下 common/lib 公共文件夹下。
  然后在 eclipse 中启动 Tomcat (点击那个猫的图标即可),以 luhao/12345 身份登陆 http://localhost:8008/admin 后新建数据源。其中 JNDI Name jdbc/Oracle (此数据源 JNDI 名字可以随意取,但不可重复), Data Source URL jdbc:oracle:thin:@localhost:1521:NBZJU 1521 Oracle 访问端口, NBZJU 为要访问的数据库名称), JDBC Driver Class oracle.jdbc.driver.OracleDriver (可打开 classes12.jar 文件查看到相应的路径,否则驱动有误), Username luhao Password 11111 (填 NBZJU 数据库有访问权限的用户即可),其余选项默认即可。数据源保存及递交后, conf 目录下 server.xml 文件的全局命名资源 GlobalNamingResources 元素内将多一项 Resource 属性:
Resource
name="jdbc/Oracle"
type="javax.sql.DataSource"
password="11111"
driverClassName="oracle.jdbc.driver.OracleDriver"
maxIdle="2"
maxWait="5000"
username="luhao"
url="jdbc:oracle:thin:@localhost:1521:NBZJU"
maxActive="4"/
  数据源配置完成后,还须配置相关的上下文信息 context ,来使程序获得 JDNI 初始化引用,从而定位数据源。由于之前定义的是全局资源,我们可在 apache-tomcat-5.5.17/conf/context.xml 文件中的 Context 元素中加入关联属性:
ResourceLink global="jdbc/Oracle" name="jdbc/Oracle" type="javax.sql.DataSource"/
   4. 创建测试 Web 程序
  运行 eclipse ,新建一个 Tomcat 项目到任意的当前工作空间,此处项目取名 quickstart 。当项目一经创建,我们就可以发现 apache-tomcat-5.5.17/conf 目录下 server.xml 文件的 Host 元素内自动增加了以下属性内容(用来关联发布 Web 应用程序的工作目录):
Host
appBase="webapps"
name="localhost"
>< Context path="/quickstart" reloadable="true" docBase="E:/luhao/workspace/quickstart" workDir="E:/luhao/workspace/quickstart/work" /

/Host

新建 JSP 测试页面 index.jsp quickstart 工程目录下( JSP 页面编辑需要有支持 Web 开发功能的 eclipse 插件支持,如 MyEclipse WTP 等插件),代码如下:

%@ page contentType="text/html; charset=gb2312" %
%@ page import="javax.naming.*" %
%@ page import="javax.sql.*" %
%@ page import="java.sql.*" %
html><head><titleOracle JDBC Test/title></head
body
%
Connection conn=null;
Statement stmt=null;
ResultSet rs=null;
ResultSetMetaData md=null;
try{
 Context initCtx=new InitialContext();
 //获得JNDI初始化上下文信息,即获取目录上下文的引用
 DataSource ds=(DataSource)initCtx.lookup("java:comp/env/jdbc/Oracle");
 //定位数据源jdbc/Oracle
 if(ds!=null){
  out.println("已经获得DataSource");
  out.println(ds.toString());
  conn=ds.getConnection();
  if(conn!=null){
   out.println("create connection sucess!");
   stmt=conn.createStatement();
   out.println("createStatement Success!");
   rs=stmt.executeQuery("select * from LUHAO.USER_INF");
   md=rs.getMetaData();
   out.println("table border=1");
   out.println("tr");
   for(int i=0;imd.getColumnCount();i++){
    out.println("td"+md.getColumnName(i+1)+"/td");
   }
   while(rs.next()){
    out.println("tr");
    out.println("td"+rs.getString(1)+"/td");
    out.println("td"+rs.getString(2)+"/td");
    out.println("td"+rs.getString(3)+"/td");
    out.println("td");
   }
   out.println("/table");
   conn.close();
  }
 
 

  }
}catch(Exception e){
  out.println(e.toString());
  System.out.println(e.toString());
}
%

/body
/html
   5. 启动数据库,运行测试程序
  运行测试页面前必须先启动后台数据库。办法是打开 Oracle SQL Plus ,用 DBA 身份连接入 NBZJU 数据库: conn luhao/11111 as sysdba ,再用命令: startup 完成启动数据库( shutdown 可以关闭数据库)。
  保存工程,启动 Tomcat ,打开 http://localhost:8008/quickstart/ 页面。若能看到各种连接成功的消息及完整的 USER_INF 测试表内容,那么表明整个 Web 测试程序运行成功了!
  总结:
  实际的整合配置过程,除上述全局化配置方法可行外,还可以采用局部化配置方法(某些版本 Tomcat 可能行不通)。局部化配置方法较全局化配置方法区别仅在于将数据源 jdbc/Oracle Resource 属性内容加入工程所在 quickstart 目录下的 META-INF/context.xml 文件的 Context 元素中去,而不用改变 Tomcat 目录的 conf 子目录下的 server.xml context.xml 文件。

来源:网络

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值