Resin全攻略(Win2000 Server +JDK1.3 + Resin 2.0.1 + Apache 1.20 + MySQl 3.23)
一、软件下载
JDK 1.3 http://java.sun.com
Resin 2.0.1 http://www.caochu.com
Apache 1.3.20 http://www.apache.org
MySQL 3.23 http://www.mysql.org
JDBC2.0 for MySQL http://www.mysql.org
DBTools 1.0.12(可选) http://www.dbtools.com.dr
二、软件安装
1、JDK 1.3 //JDK1.4也可以
从网站上下 JDK 1.3 for windows版本,是一个ZIP/EXE文件,双击执行就进行安装,这里示例安装目录为D:/JDK1.3。如果装有其他的比较大的Java服务器或开发工具可能带有JDK 1.3,例如JBuilder5/6、WebLogic6.x都带有JDK 1.3,可以直接使用这些而无需另外安装JDK 1.3。
2、Resin 2.0.1
下载Resin 2.0.1 for windows版本,是一个ZIP文件,解压缩到一个目录下即可,这里示例解压缩目录为D:/Resin-2.0.1,可以将Resin装为Win2000的一个服务,在命令行执行“D:/Resin-2.0.1/bin/httpd -install”,如果想将Resin服务从系统服务中删除,在命令行执行“D:/Resin-2.0.1/bin/httpd - remove”。
3、Apache 1.3.20 //Apache2好像不能很好的和resin 配合。
我下载的是这个文件(apache_1.3.20-win32-no_src-r2.msi),在Win2000下直接双击即可执行,如果在Win98下,还需要安装一个升级软件才能执行.msi安装文件。这里示例安装目录为D:/Apache,可以将Apache装为Win2000的一个服务,在命令行执行“D:/Apache/apache -k install”,如果想将Apache从系统服务中删除,在命令行执行“D:/Apache/apache -k uninstall”。
4、MySQL 3.23
从网站下载应该是一个ZIP文件包,解开执行Setup.exe,无需设置,这里示例安装目录为D:/MySQL,系统自动将MySQL安装为一个系统服务,在“服务”中能找到。
5、JDBC2.0 for MySQL
从网站下载文件名为mm.mysql-2.0.4-bin.jar,拷贝到D:/Resin-2.0.1/lib目录即可。
6、DBTools 1.0.12(可选)
从网站下载是一个EXE文件,直接双击进行安装,示例安装目录为D:/DBTools1012。
三、环境配置
1、JAVA_HOME
右击我的电脑->属性->高级->环境变量->系统变量栏,点击“新建...”,变量名栏填入“JAVA_HOME”,变量值栏填入“D:/JDK1.3”,点击“确定”。
2、Resin_HOME
重复1,新建一个变量“Resin_HOME”,值为“D:/Resin-2.0.1”。
3、CLASSPATH
还在这个系统变量设置窗口,在系统变量栏找到CLASSPATH,点击“编辑...”,如果没有这个变量,就点“新建...”,在变量值后面加上“D:/JDK1.3/lib/tools.jar;D:/JDK1.3/lib/dt.jar;.”,点击“确定”。
四、测试
1、测试JDK
编写一个最简单的Hello JSP程序,清单如下:
//////////////////////////////////////////////////
public class HelloJSP
{
public static void main(String[] arg)
{
System.out.println("Hello JSP!");
}
}
//////////////////////////////////////////////////
另存为HelloJSP.java文件,在命令行进行编译:
javac HelloJSP.java
执行成功,在当前目录下应该生成HelloJSP.class文件
执行HelloJSP程序,在命令行执行:
java HelloJSP
执行成功,应该显示:
Hello JSP!
如果能到这一步,证明JDK环境OK。
2、测试Resin
启动Resin服务,如果将Resin安装为Win2000的系统服务,则在“服务”中找到“Resin Web Server”,启动即可,如果没有安装为系统服务,运行“D:/Resin-2.0.1/bin/httpd”,这样将有一个DOS窗口和一个控制窗口停留,在DOS窗口中能看到运行时的各种系统输出。启动成功后在浏览器中敲入:http://localhost:8080/将看到Resin的默认启动页面,执行:http://localhost:8080/snoop将看到当前Resin服务器的一些环境变量,执行:http://localhost:8080/examples/basic/hello.jsp将看到一个显示“Hello World”的页面。
如果以上步骤都能顺利执行,表明Resin服务已经安装成功,到次为止已经可以进行简单JSP的程序开发了。
3、测试Apache
启动Apache服务,如果将Apache安装为Win2000的系统服务,则在“服务”中找到“Apache”,启动即可,如果没有安装为系统服务,运行“D:/Apache/apache”,这样将有一个DOS窗口停留,显示“Apache/1.3.20..... Running...”字样,表示启动成功。在浏览器中敲入:http://localhost将出现Apache的默认页面。
4、测试MySQL
启动MySQL服务,从“服务”中找到MySQL,启动即可,默认是系统启动时就自动启动的。运行DBTools,点击右边的“Server Manager”,添加一个Server,Server Name随便填,是显示用的,为了自己好认,填上“localhost”,HostName添上“localhost”,Port Number默认为“3306”,User ID填上“root”,Password为空,或者你设置的root用户密码。保存即可,进行连接,如果能连接成功,你将看到有两个数据库,mysql和test,这就是MySQL系统自带的两个数据库,其他有关MySQL的只是请参阅相关网站。
五、配置Apache+Resin
Apache是有名的老牌WebServer,处理HTML的能力无人能及,虽说Resin也能处理HTML,但比起Apache还是差了不少,因此我们将Apache和Resin连接起来,各取所长。
1、修改Apache配置文件D:/Apache/conf/httpd.conf
在文件最后加上:
///////////////////////////////////////////////////////////////////////
LoadModule caucho_module D:/resin-2.0.1/srun/win32-1.3.6/mod_caucho.dll
AddModule mod_caucho.c
CauchoHost localhost 6802
AddHandler caucho-request jsp
<Location /servlet/*>
SetHandler caucho-request
</Location>
///////////////////////////////////////////////////////////////////////
2、修改Resin配置文件D:/Resin-2.0.1/conf/Resin.conf
找到这一行:<app-dir>doc</app-dir>
改成:<app-dir>D:/Apache/htdocs</app-dir>
保存即可
3、重启Apache和Resin
在浏览器中运行http://localhost/test.jsp将出现找不到页面的错误。
在D:/Apache/htdocs/目录下新建一个文件test.jsp,内容如下:
////////////////////////////////////////
2+2=<%=2+2%>
////////////////////////////////////////
保存后,刷新刚才的浏览器,应该看到如下结果
////////////////////////////////////////
2+2=4
////////////////////////////////////////
OK,Apache+Resin配置完成。
4、一些Apache+Resin配置的相关知识
为使Resin能相应Apache的请求,需要启动端口为6802的srun,在Resin.conf中可以找到这一行:
<srun host='127.0.0.1' port='6802'/>
可以对它进行修改,例如你的Resin想单独使用,不和Apache配合,那么可以将这一行删除,这样单独启动Resin时就不会监听6802端口。
如果也有人象我这样,需要几个不同的服务,一个和Apache配合,一个和IIS配合,一个还需要单独启动,那么可以这样来实现
将resin.conf另存为resin_apache.conf、resin_iis.conf,分别修改各自的配置文件,例如需要虚拟目录,或者只要最简单的JSP支持等等,启动时运行“D:/Resin-2.0.1/bin/httpd -conf D:/Resin-2.0.1/conf/resin_apache.conf”即可启动相应配置的Resin服务,同时可以将这样将其安装为系统服务“D:/Resin-2.0.1/bin/httpd -install -conf D:/Resin-2.0.1/conf/resin_apache.conf”,但在系统服务中只能安装一种模式,其他的可以用快捷方式来实现或在DOS窗口进行。
六、连接数据库的JSP程序
如果要进行数据库的程序开发,以下代码是建立连接的模式。假设在MySQL数据库种建立一个数据库db_cnjsp,表名为user:
//////////////////////////////////////////////////////////////////////////////////////////////
<%@page language="java" import="java.sql.*" contentType="text/html;
charset=gb2312" %>
<%//可以修改的参数
String ls_username = "root";
//数据库用户名
String ls_password = "xxxxxx";
//密码
String ls_server = "localhost";
String ls_dbname = "db_cnjsp";
Connection con = null;
try
{
//注册JDBC连接驱动
Class.forName("org.gjt.mm.mysql.Driver");
//与数据库建立连接
con = DriverManager.getConnection("jdbc:mysql://"+ls_server+"/"+ls_dbname,ls_username,ls_password);
}
catch(Exception e)
{
System.out.println(e.toString());
}
%>
<html>
<head>
<title>测试数据库连接</title>
<meta http-equiv="Content-Type" content="text/html;
charset=gb2312">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<%
int li_count = 0;
String ls_sql = "select count(*) from user";
try
{
Statement Stmt = con.createStatement();
ResultSet rs = Stmt.executeQuery(ls_sql);
if(rs.next())
li_count = rs.getInt(1);
if(rs != null)
rs.close();
if(Stmt != null)
Stmt.close();
}
catch(Exception e)
{
out.println("<br>2" + e.toString() + "<br>");
}
out.println("共" + li_count +"条记录<p>测试成功!");
%>
</body>
</html>
<%
try
{
if(con != null)
con.close();
}
catch(SQLException sqle)
{
System.out.println(sqle.toString());
}
%>
//////////////////////////////////////////////////////////////////////////////////////////////
以上程序能正确运行,则可以进行数据库程序的开发。