DynimaicWeb应用构建入门指导.docx
《DynimaicWeb应用构建入门指导.docx》由会员分享,可在线阅读,更多相关《DynimaicWeb应用构建入门指导.docx(18页珍藏版)》请在冰豆网上搜索。
DynimaicWeb应用构建入门指导
JavaDynamicWebproject构建
1、手动构建web应用
本节主要讲解如何手动构建一个javaWeb应用。
熟悉客户端请求到服务器端响应的完整过程。
下图便是一个完整的数据交互的web应用的请求至响应的过程:
图一、请求流程
注意:
图一中的http服务器(apache)也可以不要,tomcat也具备处理静态页面的能力。
Servlet作为中央控制器也可以不请求DAO,如果没有数据交互的化。
接下来我们就动手实现一个用户注册的功能。
客户端在页面的输入框中输入用户名和密码,然后点击注册。
Servlet接收数据,并将得到的数据持久化到数据库中,之后返回servlet并响应给客户端,提示注册成功。
图二、注册首页
图三、注册成功响应页面
1.1、所需工具
手动编写一个动态的Web应用,基本需要如下工具,其中包括文本编辑工具和servlet容器,即web应用服务器。
还有就是jdk。
还有mysql安装文件及驱动文件。
图四、所需工具
1.2、工具安装
以下介绍工具安装过程。
Uedit32文本编辑工具的安装和jdk的安装在此省略,不再累述。
Mysql安装也省略。
主要介绍servlet容器tomcat的安装与配置。
将下载下来的tomcat6.0版本的zip文件直接解压缩在当前文件夹。
解压之后的结果如下图所示。
图五、tomcat解压后的HOME路径目录
1.3、配置环境变量
Tomcat解压之后,还是不能正常运行。
要想正常运行首先要配置环境变量“java_home”。
如果不配置该环境变量,启动tomcat批处理文件“startup.bat”将会一闪而过。
因为tomcat是由java开发的,tomcat的启动会依赖jdk类库。
Java_home环境变量的值对应的就是jdk安装的根目录。
本文jdk的根目录为“D:
\project\Java\jdk1.6.0_12”。
图六、jdk的home目录
图七、java_home配置
1.4、tomcat启动测试
以上配置完毕之后。
就可以启动tomcat进行测试了。
首先找到tomcat根目录下的bin目录,找到startup.bat文件。
双击,弹出下图。
图八、tomcat启动成功
1.5、通过IE访问tomcat服务器
Tomcat已经正常启动了。
然后打开浏览器输入:
http:
//localhost:
8080弹出如下窗口表示成功访问tomcat服务器。
图九、tomcat访问成功页面
1.6、配置环境变量classpath
配置该环境变量的主要目的是,在编译servlet时能正常通过。
该环境变量值主要有servlet编译和mysql驱动的jar文件路径,以及当前目录也作为classload加载查询目录。
Servlet编译所依赖的jar包在tomcat的安装根目录下的lib文件夹中可以找到。
Mysql的驱动包在本文的目录是:
“D:
\study\mysql-connector-java-5.0.8-bin.jar”;servlet编译依赖的jar包在本文的目录是:
“D:
\study\apache-tomcat-6.0.32\lib\servlet-api.jar”。
图十、classpath环境变量配置
1.7、创建应用
以下会分为多个步骤来构建这个Web应用。
跟着做。
让你的程序运行起来,然后再从头捋一遍。
就可以掌握一次请求到相应的完整过程。
1.7.1、创建应用目录
首先要创建一个web应用根目录“minproject”,在该目录下有两个htm页面,分别是rejest.htm和success.htm。
然后一定要有一个文件目录“WEB-INF”,在“WEB-INF”目录下要有一个classes目录、一个lib目录和一个web.xml文件。
图一、web应用目录结构
1.7.2、创建html页面
Rejest.htm
注册页面
用户名:
密 码:
Success.htm
注册成功
注册成功
1.7.3、创建数据库表
在mysql的test数据库存储区中创建user表
usetest;
#droptableuser;
createtableuser(
idintprimarykeyauto_increment,
usernamevarchar(19)notnull,
passwordvarchar(8)notnull
);
1.7.4、创建数据库连接类
在目录“D:
\study\minproject\WEB-INF\classes”下新建一个java文件。
JDBCHelper.java
packagecom.test.util;
importjava.sql.*;
publicclassJDBCHelper{
privatestaticfinalStringMYSQL_URL="jdbc:
mysql:
//localhost:
3306/test";
privatestaticfinalStringMYSQL_DRIVER="com.mysql.jdbc.Driver";
privatestaticfinalStringUSER_NAME="root";
privatestaticfinalStringPASSWORD="root";
publicstaticConnectiongetConnection(){
Connectioncon=null;
try{
Class.forName(MYSQL_DRIVER);
con=DriverManager.getConnection(MYSQL_URL,USER_NAME,PASSWORD);
}catch(Exceptione){
e.printStackTrace();
}
returncon;
}
/*测试连接是否成功。
publicstaticvoidmain(String[]args){
System.out.println(getConnection());
}
*/
}
1.7.5、创建servlet
RegestServlet.java
packagecom.test.servlet;
importjavax.servlet.*;
importjavax.servlet.http.*;
importjava.io.*;
importjava.sql.*;
importcom.test.util.*;
publicclassRegestServletextendsHttpServlet{
publicvoiddoGet(HttpServletRequestreq,
HttpServletResponseresp)throwsIOException,
ServletException{
req.setCharacterEncoding("gbk");
StringuserName=req.getParameter("username")==null?
"admin":
req.getParameter("username");
Stringpassword=req.getParameter("password")==null?
"admin":
req.getParameter("password");
Connectioncon=JDBCHelper.getConnection();
PreparedStatementps=null;
try{
Stringsql="insertintouservalues(null,?
?
)";
ps=con.prepareStatement(sql);
ps.setString(1,userName);
ps.setString(2,password);
ps.execute();
resp.sendRedirect("success.htm");
}catch(SQLExceptione){
e.printStackTrace();
}finally{
try{
if(ps!
=null)
ps.close();
if(con!
=null)
con.close();
}catch(SQLExceptione){
e.printStackTrace();
}
}
}
}
1.7.6、在web.xml中为RejestServlet类映射
打开“D:
\study\minproject\WEB-INF”下的web.xm文件
Web.xm
xmlversion="1.0"encoding="ISO-8859-1"?
>
xmlns:
xsi="http:
//www.w3.org/2001/XMLSchema-instance"
xsi:
schemaLocation="
version="2.5">
rejestServlet
com.test.servlet.RegestServlet
rejestServlet
/rejest
1.7.7、为应用添加依赖jar包
因为servlet是由tomcat实例化的,RejestServlet类需要依赖mysql的启动jar包。
Web应用依赖的jar包要存放在“应用目录/WEB-INF/lib”目录下。
1.7.8、在tomcat中部署应用
找到tomcat安装目录下的conf目录下的server.xml文件,打开,在host节点下添加如下内容:
\study\minproject”reloadable=”true”/>
Server.xml
unpackWARs="true"autoDeploy="true"
xmlValidation="false"xmlNamespaceAware="false">
/study/minproject"reloadable="true"/>
1.7.9、重新启动tomcat、访问应用
重新启动tomcat,查看日志,如果没有错误信息。
就可以打开浏览器,输入:
http:
//localhost:
8080/demo/rejest.htm地址,显示如图内容:
然后在用户名和密码输入框中分别输入:
admin和123;之后点击注册按钮。
如果成功则弹出如下页面:
1.7.10、打开数据库查看注册信息
打开mysql数据库客户端,切换到test数据库下,执行select*fromuser;
表中如果有如上信息,表示数据录入成功。
至此整个请求至响应过程完成。
2、利用eclipse工具构建web应用
首先我们要登录到www.eclipse.org下载支持javaEE的eclipse工具。
解压并启动。
创建相应的工作空间。
2.1、环境配置
Eclipse启动后,首先要做的是配置eclipse工作环境。
主要是让eclipse工具和之前安装的tomcat进行集成。
点击eclipse的菜单栏window,选择级联菜单下的preference,弹出如下窗口:
然后选择server下的RuntimeEnvironments。
再点击右侧的“Add”按钮。
弹出下图:
选择本机已安装的tomcat版本,本机以6.0版本为例。
点击“Next”按钮,弹出下图:
再点击右侧的“Browse”按钮,弹出下图:
在弹出图中,选中本机tomcat的安装根目录。
点击“确定”按钮。
之后窗口一律确定。
2.2、打开server视图、创建tomcat6.0实例
环境配置成功后,我们还有打开server视图。
并在eclipse的server视图下创建一个tomcat实例。
点击eclipse的window菜单中的showview,在级联菜单中选择other。
弹出下图:
选择server节点下的servers,并点击“ok”按钮。
最大化server视图,如下:
在该视图中点击鼠标右键,在弹出菜单中选择“new”,在级联菜单中点击“server”,弹出下图:
Servername:
的输入框中,可以修改默认tomcat名称,如修改为tomcat6。
点击“finash”。
弹出如下视图:
鼠标指向tomcat6点击鼠标右键,点击start启动tomcat。
在console视图中显示如下下图,表示tomcat6启动成功。
2.3、构建web应用
接下来就可以在project视图中点击鼠标右键,创建web应用了。
弹出如下窗口:
在projectname中输入demo。
点击finish。
一个web应用构建成功:
此时就可以在webContent下构建html或者是jsp等页面了。
可以在src目录下创建java源文件,包括Servlet文件。
在lib目录下,通过import导入依赖的第三方jar包,比如数据库连接的jar包,log4j的jar包等等。