打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Linux平台jsp环境搭建(Tomcat4+jdk+postgreSQL7.4)

Linux平台jsp环境搭建(Tomcat4+jdk+postgreSQL7.4)  

2008-11-04 10:53:15|  分类: 应用环境配置 |  标签: |字号 订阅

Linux平台jsp环境搭建(Tomcat4+jdk+postgreSQL7.4)
环境:RedHat as3
jdk安装路径:/usr/java/jdk
Tomcat安装路径:/usr/local/tomcat/

总共分为以下几个步骤:
一、安装配置jdk
二、安装配置Tomcat
三、安装PostgreSQL
四、Tomcat测试
五、连接数据库

所需要的软件:
j2sdk-1_4_2-linux-i586-rpm.bin
jakarta-tomcat-4.1.30.tar.gz
postgresql-7.4.1-1PGDG.i386.rpm
postgresql-jdbc-7.4.1-1PGDG.i386.rpm
postgresql-server-7.4.1-1PGDG.i386.rpm
postgresql-libs-7.4.1-1PGDG.i386.rpm

这些软件全部在/download留个备份
#mkdir /download

1 安装配置jdk
下载地址:http://java.sun.com/j2se/1.4.2/download.html
下载其中的rpm包,其实是个.bin文件
#chmod u+x j2sdk-1_4_2-linux-i586-rpm.bin
#./j2sdk-1_4_2-linux-i586-rpm.bin
#rpm -ivh j2sdk-1_4_2-linux-i586-rpm
#cd /usr/java/
#ln -s j2sdk1.4.2/ jdk/

设置环境变量:
这里不要写到/etc/profile中去了。那样会导致每个用户启动都可以使用jdk。
因为要使用tomcat,所以写到tomcat的home目录去.
#vi /home/tomcat/.bashrc(也可以是.bash_profile)
export JAVA_HOME=/usr/java/jdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=$JAVA_HOME/lib

su到tomcat用户,看是否可以使用
#su - tomcat
$javac
$java
有显示吗?如果有,那么jdk配置成功。
重新su到root

2 配置tomcat Tomcat我是由tomcat这个用户来启动的,请注意:)
因为我下载的是binary版本,所以不需要再进行编译。
#cp /download/jakarta-tomcat-4.1.30.tar.gz /usr/local
#tar zxvf jakarta-tomcat-4.1.30.tar.gz
#rm -f jakarta-tomcat-4.1.30.tar.gz
#cd jakarta-tomcat-4.1.30

添加环境变量:
#vi /home/tomcat/.bashrc
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/tomat

可以测试Tomcat能否正常启动了:
#bin/startup.sh
你会看到这些东东:
Using CATALINA_BASE:   /usr/local/tomcat
Using CATALINA_HOME:   /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JAVA_HOME:       /usr/java/jdk

然后打开浏览器,输入http://localhost:8080,如果您能看到一只变态的小猫望着你的话,那么恭喜您
,tomcat也成了

3 安装PostgreSQL
既然已经下载了postgresql的安装包,而且是rpm的,安装起来就很方便啦:)到http://www.postgresql.org去下
当然,有很多mirror,我到台湾的一个mirror站点下的for as3的包,您也去找找吧,下载到/download目录
#cd /download
#rpm -ivh --nodeps postgresql*.rpm         一定要加上--nodeps,放心,装上后使用没有问题
完成以后,您可以使用
#service postgresql start     来启动pgsql,
如果您看见了
Starting postgresql service:                               [ 确定 ]
那么,pgsql也可以运行了,当然,可以看看默认的设置
#su - postgres
#psql
当然,记得先要initdb.

现在,我们开始测试servlet,jsp,以及jsp连接PostgreSQL


首先,我们先测试jsp,因为这个比较简单.
#cd /usr/local/tomcat/webapps
#mkdir -p myapp/WEB-INF                    注意大小写
#cp ROOT/WEB-INF/web.xml myapp/WEB-INF
#vi myapp/index.jsp
<html><body>
<%= new java.util.Date() %>
</body></html>
这样通过http://localhost:8080/myapp/index.jsp是不能访问的,还需要给tomcat增加一个context
vi ../conf/server.xml
查找< Context path=
然后该段后面添上<Context path="/myapp" docBase="myapp" />
重新启动tomcat,在浏览器中输入http://localhost:8080/myapp/index.jsp
如果正常,那么恭喜您,这个也成功了

其次,测试servlet
先写一个最简单的servlet。
package test;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class Test extends HttpServlet {
protected void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out=response.getWriter();
out.println("<html><body><h1>This is a servlet test.</h1></body></html>");  
}
}
把上述文件存为Test.java,然后用javac进行编译,把产生的Test.class文件copy到/usr/local/tomcat/webapps/myapp/WEB-INF/classes/test/

修改myapp/WEB-INF/web.xml,改后大概是这个样子
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<description>
A application for test.
</description>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>test.Test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
</web-app>
重新启动tomcat4,打开浏览器输入http://localhost:8080/myapp/Test,应该是显示This is a servlet test.
若出现错误,404错误,表示没找到文件,应该是server.xml中没写Context,如果是500错误,那么是程序有问题:)
其他错误请自行解决。

5 连接数据库
 这个需要postgresql的jdbc,我们开始rpm -ivh post*.rpm的时候,已经都安装了,使用rpm -qa | grep post
找出该jdbc的包的名称
ostgresql-7.4.1-1PGDG
postgresql-jdbc-7.4.1-1PGDG
postgresql-libs-7.4.1-1PGDG

找它的路径.
#rpm -ql postgresql-jdbc-7.4.1-1PGDG
发现在/usr/share/pgsql/中,文件列表如下:
/usr/share/pgsql/pg74.1jdbc1.jar
/usr/share/pgsql/pg74.1jdbc2.jar
/usr/share/pgsql/pg74.1jdbc2ee.jar
/usr/share/pgsql/pg74.1jdbc3.jar

这个jdbcX.jar表示分别对应与jdbc版本,我使jdbc2.0,于是这么做
#cp pg74.1jdbc2.jar pg74.1jdbc2.jar.bak
#mv pg74.1jdbc2.jar postgresql.jar
把该postgresql.jar放到/usr/java/jdk/jre/lib/ext/中,也可以添加到CLASSPATH中。
写一个简单的jsp脚本进行测试连接数据库
pgsql.jsp
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%
Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://127.0.0.1:5432/postgres" ;     /postgres为该server上的db
String user="postgres";                                       数据库用户
String password="YourPass";                  该用户密码
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from weather";     //我的数据库中有个表是weather,您也可以使用自己创建的表
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

把这个文件存到myapp/下,然后http://localhost:8080/myapp/pgsql.jsp,应该是没有问题,我都测试通过。

恭喜您,简单的一个开发环境搭建完毕 。

目前网上关于Tomcat 5.5的数据库连接池的配置比较少,仅有的一篇 http://blog.csdn.net/nethermit/archive/2004/11/26/194451.aspx 还被到处拷贝粘贴,而且还不能用。
现在介绍一下真正的配置,以PostgreSQL数据库为例(MySQL配置是一样的)。
1、从http://jakarta.apache.org/commons/dbcp/下载commons-dbcp-1.2.1.jar,然后拷贝放到Tomcat 5.5/common/lib下
2、从http://jdbc.postgresql.org/download.html下载PostgreSQL的JDBC驱动程序,MySQL的JDBC驱动从http://dev.mysql.com/downloads/connector/j/3.1.html下载,然后把相应的JDBC的驱动程序(jar文件)拷贝到Tomcat5.5/common/lib下
2、编辑Tomcat 5.5/conf/tomcat-users.xml,配置如下
<tomcat-users>
<role rolename="tomcat"/>
<role rolename="role1"/>
<role rolename="manager"/>
<role rolename="admin"/>
<user username="tomcat" password="tomcat" roles="tomcat,manager,admin"/>
</tomcat-users>
3、编辑Tomcat 5.5/conf/server.xml,在
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">后添加连接描述
<Context path="/mytest" docBase="mytest" debug="5" reloadable="true" crossContext="true">
<Resource name="mytest_ds" auth="Container"
type="javax.sql.DataSource" driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://127.0.0.1:5432/mytest_db"
username="postgres" password="" maxActive="20" maxIdle="10" maxWait="-1"/>
</Context>说明:mytest是你的war包名称或者是你在webapps/创建的目录名称
mytest_ds是连接数据源名称
mytest_db是数据库名称
至此Tomcat部分配置完成,下面是JSP部分程序
<%@page contentType="text/html; charset=GBK"%>
<%@ page import="java.sql.*"%>
<%@ page import="javax.naming.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Test of connection pool</title>
</head>
<body>
<%
out.print("Start<br/>");
try{
InitialContext ctx = new InitialContext();
javax.sql.DataSource connectionPool = (javax.sql.DataSource) ctx.lookup("java:comp/env/mytest_ds");
Connection conn = connectionPool.getConnection();
out.print("DB connection pool run OK!");
conn.close();
}
catch(Exception ex){
out.print(ex.getMessage());
ex.printStackTrace();
}
%>
</body>
</html>

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
JSP+Servlet+JDBC+Mysql实现的天才会议管理系统
JSP 开发环境搭建
JSP的环境引擎--Tomcat
Tomcat应用部署及详解
我的通过eclipse来调试jsp的过程
[WIKI]使用Confluence安装和配置WIKI说明
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服