基础应用:Java Web中三层架构配置入门

来源:岁月联盟 编辑:zhuzhu 时间:2007-08-06

一、软件下载:

1、java

这里使用的是jdk1.4.2。

下载地址:http://dlc.sun.com/jdk/j2sdk-1_4_2_07-windows-i586-p.exe;

2、tomcat

这里的tomcat的版本是5.0的,安装版或是解压版都是可以的。

下载地址:http://apache.linuxforum.net/dis ... a-tomcat-5.0.28.exe

3、数据库

推荐使用mysql,but暂时找不到下载地址,此次用sqlserver的,所以下面实践会使用sqlserver(找张安装盘安装)

注:连接sqlserver需要三个jar文件(文件名ms开头),可从这里下载:

http://www.softhouse.com.cn/html ... 11250300001646.html

上面包括完整的配置方法

二、软件安装:

1.双击安装jdk。装完后在我的电脑->属性->高级->环境变量->系统变量中添加以下环境变量:

(假设你的JDK安装在c:/jdk)

JDK_HOME=C:/jdk

classpath=.;%JDK_HOME%/lib/dt.jar;%JDK_HOME%/lib/tools.jar

在PATH(原来就已存在)中添加:%JDK_HOME%/bin

这样jdk环境配置成功。

2.双击安装你的Tomcat。(建议安装在D:/tomcat)

注:tomcat5.0.x版本不需配置环境变量就可以使用,但如果需要编译Servlet则必须将tomcat的两个jar文件也放到环境变量中,具体方法如下:

在我的电脑->属性->高级->环境变量->系统变量中添加:

TOMCAT_HOME=D:/tomcat

修改classpath变成:.;%JDK_HOME%/lib/dt.jar;%JDK_HOME%/lib/tools.jar;%TOMCAT_HOME%/common/lib/servlet-api.jar;%TOMCAT_HOME%/common/lib/jsp-api.jar;

这样已经完整安装完Tomcat了。

建议:在PATH中再添加:%JDK_HOME%/bin;%TOMCAT_HOME%/bin

这样做的目的是在虚拟dos中可以使用tomcat的工具

最后顺便把第一步下载回来的三个jar文件放到tomcat目录下的common/lib目录中

3.测试:

打开开始菜单中的tomcat(小猫图案)的monitor工具,点击start server,显示绿色三角形即为启动,打开浏览器在地址栏输入:http://localhost:8080/可以看到小猫图案说明已经配置成功。

4.安装数据库(sqlserver)

windows xp下必须安装个人版或开发版(个人推荐个人版)。

一直next就可以(微软的东西就是方便),这里注意到域帐户那里选择本机帐户,到验证那里选择混合验证(这点很重要,若选择系统认证以后在程序中就连接不上数据库),为你的sa用户输入一个密码(如果练习用就不用考虑安全性啦,选择“空密码”就可以)

三、正式编程:

1.建立数据库

打开开始菜单找到sqlserver的快捷方式组里面的企业管理器,点开左边的树一般有个localhost连接,如果有个绿色三角形符号证明数据库连接成功。点击邮件新建数据库,在你新建的数据库中再新建个数据表(例如叫test),数据表建立若干字段。

补充:提供另一种建表方法是使用sql脚本建表。首先创建如下文件:

test.sql

create database test    USE test  create table test  (  id int not null identity(1,1),  mark varchar(255),  name varchar(255),  sex varchar(255)  )

然后打开开始菜单中sqlserver快捷方式组中的查询分析器,点击“文件”-》“打开”,选择test.sql,点击运行即可。

2.建立tomcat虚拟目录

在任意你喜欢的地方建立一个文件夹(例如e:/wool),在文件夹中建立WEB-INF文件夹(注意必须大写),WEB-INF文件夹中再建立classes和lib两个文件夹,将第一步下载的三个jar文件(连接数据库用)放入lib文件夹中。(有人可能问:这里为何没有web.xml这个文件,不急,后面会说到)

3.配置文件与连接池

方法1.http://localhost:8080/admin中去配置,我个人觉得那样麻烦而且容易出错),

方法2.下面介绍步骤:

首先,按下面内容建立好两个文件:

wool.xml

<?xml version='1.0' encoding='utf-8'?>  <Context docBase="E:/wool" path="/wool" reloadable="true" workDir="E:/wool/WEB-INF/classes">  <Resource name="jdbc/sqlserver" type="javax.sql.DataSource"/>  <ResourceLink name="jdbc/sqlserver" global="jdbc/sqlserver" type="javax.sql.DataSource"/>  <ResourceParams name="jdbc/sqlserver">  <parameter>  <name>driverClassName</name>  <value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>  </parameter>    <parameter>  <name>url</name>  <value>jdbc:microsoft:sqlserver://localhost;DatabaseName=test</value><!--这里test是第三点中第一小点建立的数据库名-->  </parameter>    <parameter>  <name>username</name>  <value>sa</value>  </parameter>    <parameter>  <name>password</name>  <value></value><!--安装sqlserver时用空密码的话这里什么都不用填(注意连空格都没有)-->  </parameter>    <parameter>  <name>maxActive</name>  <value>4</value>  </parameter>    <parameter>  <name>maxWait</name>  <value>5000</value>  </parameter>  <parameter>  <name>maxIdle</name>  <value>2</value>  </parameter>    </ResourceParams>    </Context>

注意:在帮同学配置的过程发现一个问题,就是上面的配置文件必须把注释部分删除才可以成功运行。暂时不了解什么原因,理论上xml文件中这样的注释是允许的,郁闷。

web.xml

 <?xml version="1.0" encoding="ISO-8859-1"?>  <web-app>  <resource-ref>  <description>connectDB</description>  <res-ref-name>jdbc/sqlserver</res-ref-name>  <res-type>javax.sql.DataSource</res-type>  <res-auth>Container</res-auth>  </resource-ref>  </web-app>

建立完两个文件后,把wool.xml放到tomcat目录下的/conf/Catalina/localhost中;web.xml文件放到E:/wool/WEB-INF目录中。

4.写段程序测试连接

test.jsp

<!--测试数据源-->  <%@ page contentType="text/html; charset=gb2312" %>  <%@ page import="javax.naming.Context" %>  <%@ page import="javax.sql.DataSource"%>  <%@ page import="javax.naming.InitialContext"%>  <%@ page import="java.sql.*"%>  <%  DataSource ds = null;  try{  Context initCtx = new InitialContext();  ds = (DataSource) initCtx.lookup("java:comp/env/jdbc/sqlserver");    if(ds!=null)  {  out.println("已经获得DataSource!");  out.println("<br/>");  Connection conn = ds.getConnection();  Statement stmt=conn.createStatement();  ResultSet rst=stmt.executeQuery("select * from test");    //这里的test是表名  out.println("以下是从数据库中读取出来的数据");  %>    <table width="100%" border="2" cellspacing="0" cellpadding="0">  <tr bordercolor="#FF0000" bgcolor="#CCCCCC" class="style1">  <th>名字</th>  <th>性别</th>  <th>分数</th>  </tr>  <%  while(rst.next())  {%>  <tr bgcolor="orange">  <td><%=rst.getString(1)%></td>  <td><%=rst.getString(2)%></td>  <td><%=rst.getString(3)%></td>  </tr>  <%  }  %>  </table>  <%  conn.close();       //这里很重要,没有这句会导致连接池枯竭  }  else  out.println("连接失败!");    }  catch(Exception ne)  {  out.println(ne);  }  %>
 

将test.jsp文件放到E:/wool即可。

5.启动sqlserver和tomcat,在浏览器输入:

http://localhost:8080/wool/test.jsp