RedHat8.0 + JDK1.4.2 + Tomcat5 + Postgresql7.4

来源:互联网 发布:千峰java培训怎么样 编辑:程序博客网 时间:2024/04/25 08:50

环境:RedHat 8.0
jdk安装路径:/usr/java/jdk
Tomcat安装路径:/usr/local/tomcat/

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

所需要的软件:
j2sdk-1_4_2-linux-i586-rpm.bin                    http://java.sun.com/j2se/1.4.2/download.html   
jakarta-tomcat-5.1.20.tar.gz                           http://www.apache.org
postgresql-7.4.3.tar.gz                                    http://www.postgresql.org



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


1?安装配置jdk
下载其中的rpm包,其实是个.bin文件

#chmod u+x j2sdk-1_4_2-linux-i586-rpm.bin               //设置包的属性

#./j2sdk-1_4_2-linux-i586-rpm.bin                               //看协议并解成rpm包                    
 
#rpm -ivh j2sdk-1_4_2-linux-i586-rpm                        //进行安装

#cd /usr/java/                                                                  //进入安装好的目录

#ln -s j2sdk1.4.2 jdk                                                   //做个jdk的目录连接到j2sdk.1.4.2


 

设置环境变量:
写到/etc/profile中去了。那样会使系统启动时就加载jdk。

#vi  /profile
export JAVA_HOME="/usr/java/jdk"
export PATH="$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin"
export CLASSPATH="$JAVA_HOME/lib:$JAVA_HOME/jre/lib"

 

2  配置tomcat
因为我下载的是binary版本,所以不需要再进行编译。

#cp  /download/jakarta-tomcat-5.1.20.tar.gz  /usr/local                           //tomcat直接复制到期/usr/local

#tar  zxvf   jakarta-tomcat-5.1.20.tar.gz                                                    //解包

#rm  -f    jakarta-tomcat-5.1.20.tar.gz                                                      //删除文件

#ln  -s  jakarta-tomcat-5.1.20    tomcat5                               //做个tomcat的目录连接到jakarta-tomcat-5.1.20

#cd tomcat5

#cp   common/lib/servlet-api.jar    /usr/java/jdk/jre/lib/ext               //把servlet包复制到jre的lib下ext下 


添加环境变量:
# vi   /profile
export  CATALINA_HOME="/usr/local/tomcat5"

可以测试Tomcat能否正常启动了:

#  cd /usr/local/tomcat5
# 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 不能以 root 用户运行,所以必须建立对应的用户和组。

# useradd postgre (自动建立 postgre 组)

安装的过程并不复杂和其他源码版本的安装方法类似:
解压到 /usr/local/src:
# tar xvfz postgresql-7.4.3.tar.gz

# cd postgresql-7.4.3

# ./configure --prefix=/usr/local/pgsql

# make

# make install

# chown -R postgre.postgre /usr/local/pgsql

这样安装完毕后,并不是万事大吉了,还有一些收尾工作要做:
# vi  ~postgre/.bash_profile
添加:
#################################################
PGLIB=/usr/local/pgsql/lib
PGDATA=$HOME/data
PATH=$PATH:/usr/local/pgsql/bin
MANPATH=$MANPATH:/usr/local/pgsql/man
export PGLIB PGDATA PATH MANPATH
#####################################################

以 postgres 用户登录,
# su - postgre
建立数据库目录:
$ mkdir data

 


启动数据库引擎:

初始化数据库
[postgre@www postgre]$ initdb
你会看到以下信息:

This database system will be initialized with username "postgre".
This user will own all the data files and must also own the server process.

Fixing permissions on pre-existing data directory /home/postgre/data
Creating database system directory /home/postgre/data/base
Creating database XLOG directory /home/postgre/data/pg_xlog
Creating template database in /home/postgre/data/base/template1
Creating global relations in /home/postgre/data/base
Adding template1 database to pg_database

Creating view pg_user.
Creating view pg_rules.
Creating view pg_views.
Creating view pg_tables.
Creating view pg_indexes.
Loading pg_description.
Vacuuming database.

Success. You can now start the database server using:

/usr/local/pgsql/bin/postmaster -D /home/postgre/data
or
/usr/local/pgsql/bin/pg_ctl -D /home/postgre/data start

起动数据库
$ postmaster -i -D ~/data &
[1] 22603
[postgre@www postgre]$ DEBUG: Data Base System is starting up at Thu Jan 31 02:00:44 2002
DEBUG: Data Base System was shut down at Thu Jan 31 01:57:58 2002
DEBUG: Data Base System is in production state at Thu Jan 31 02:00:44 2002

这样 PostgreSQL 使用位于 /usr/local/pgsql/data 的数据库,允许 Internet 用户的连接( -i ) ,并在后台运行。


建立数据库
$createdb mydb
PostgreSQL 会返回 “ CREATED DATABASE”的信息,表明数据库建立完成。
$psql mytest
进入交互 psql 工具,建立表:

CREATE TABLE aaa (
name varchar(20),
tel varchar(30));

建立完成后,会得到一条 “CREATED” 的信息,表示建立成功。现在插入一条数据:

INSERT INTO aaa values('wayne', '13186975732');

psql 返回 INSERT 18732 1,查询插入是否成功:

SELECT * FROM aaa;

退出 psql ,用 /q 命令。



要让网上别的机子都可以访问则要修改以下东西

$vi  /home/postgre/data/pg_hba.conf
在底下加入
local      all                                        trust    #允许通过本地的所有机子
host       all        0.0.0.0     0.0.0.0      trust    #允许网内所有机子
host       all         192.168.0.96  255.255.255.255    trust                   #允许网内192.168.0.96的机子


$vi /home/postgre/data/postgresql.conf
#tcpip_socket = false     修改成 tcpip_socket = true

 

$ pg_ctl start         #启动数据库
$ pg_ctl restart     #重启数据库
$ pg_ctl stop         #关闭数据库

 



 

4首先,我们先测试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,在浏览器中输入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/

#javac test/Test.java

修改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>

#########################################################
重新启动tomcat5,
打开浏览器输入http://localhost:8080/myapp/Test,
应该是显示This is a servlet test.

若出现错误,404错误,表示没找到文件,应该是server.xml中没写Context,如果是500错误,那么是程序有问题:) 其他错误请自行解决。

 

5 连接数据库
 这个需要postgresql的jdbc,
可以去http://jdbc.postgresql.org里下载一个pg72.jdbc2.jar文件



#cp   pg72.jdbc2.jar    pg72.jdbc2.jar.bak

#mv    pg72.jdbc2.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/mytest";
String user="postgres";
String password="12345";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from aaa";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString("name")%>
您的第二个字段内容为:<%=rs.getString("tel")%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>


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

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

 


原创粉丝点击