Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)

时间:2023-03-08 21:15:08

1.MyEclipse|File|New|Project|Web Project    填写Project Name:exServlet,点选Java EE 6.0(配套Tomcat7.0)

2.代码结构如下:

Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)

3.修改index.jsp页面,完整代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>火车票订票系统</title>
<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
-->
</head> <body>
<!-- 界面布局 -->
<div align="center">
<div class="style">
<table width="1024" height="150" cellpadding="0" cellspacing="0" >
<!-- 动态首页订票界面 同时获取年月日和动态滚动消息 -->
<tr>
<td colspan="2">
<img src="./images/logo.jpg" alt="logo" width="1024" height="149">
</td>
</tr>
<tr>
<td width="205" bgcolor="#b7d7ec">
<p align="center">
<!-- 注意:方法today.getYear()已经过时,需要添加1900 -->
<script language=JavaScript>
today = new Date();
function initArray(){
this.length=initArray.arguments.length;
for(var i=0;i<this.length;i++)
this[i+1]=initArray.arguments[i]; }
var d=new initArray(
"星期日","星期一","星期二","星期三","星期四", "星期五","星期六");
document.write("<font color=##ff0000 style='font-size:12pt;font-family: 宋体'> ",
today.getYear()+1900,"年",today.getMonth()+1,"月",today.getDate(),"日 ",d[today.getDay()+1],
"</font>" );
</script>
</p>
</td>
<td width="819" bgcolor="#b7d7ec">
<marquee direction="left" onmouseover=this.stop() onmouseout=this.start() scrollAmount=3 scrollDelay=100>
<FONT style="FONT-SIZE: 18px"color=blue>欢迎使用火车票订票系统管理系统 ,如有不足,敬请指导!</FONT>
</marquee>
</td>
</tr>
</table>
</div> <table width="100%" height="75%" border="0" align="center">
<tr>
<td width="40%" height="20%"> </td>
<td width="20%" >
<!-- 中间登录部分布局 提交表单 配置web.xml -->
<form action="loginAction.do">
<table width="500" height="80%" border="2" bordercolor="#12A0F5" bgcolor="#dfeaf1">
<tr>
<td></td>
<td align="center"><br />系统管理员登录 <br/><br/>
用户名:<input type="text" name="userid" size="19" maxlength="19" /><br/><br/>
密 码:<input type="password" name="password" size="20" maxlength="19" /><br /><br />
<input type="submit" name="Submit" value="登录"/>
<input type="reset" name="Submit" value="重置" /><br/>
</td>
<td></td>
</tr>
</table>
</form>
</td>
<td width="40%"></td>
</tr>
<tr><td height="67" colspan="3">
<!-- 底部版权所有界面 -->
<TABLE class=wrapper border=0 cellSpacing=0 cellPadding=0 width="100%" align=center>
<TBODY>
<TR>
<TD style="LINE-HEIGHT: 150%" align="center">
<HR style="WIDTH: 96%; HEIGHT: 4px; COLOR: #02457c">
<font size="2"> <SCRIPT language=javascript src=""></SCRIPT>
<!-- target=_blank开启新的网页 -->
<BR><A href="aboutme.jsp" target=_blank>关于我们</A> | <A href="wzsm.jsp">网站声明</A>
<BR>版权所有&copy;2014-2015 北京理工大学 Eastmount <BR>京ICP备10009636号 </font>
</TD>
</TR>
</TBODY>
</TABLE>
</td>
</tr>
</table>
</div>
</body>
</html>

4.新建图片、样式文件夹,并导入图片,书写样式文件代码,代码如下:

.main {
width: 1024px;
text-align:left;
}
.font {
font-family: "Trebuchet MS";
font-size: 14px;
font-weight: bold;
color: #FFFFFF;
}
.div {
margin: 0px;
padding: 0px;
width: 1014px;
}
.tdBgColor{
background-color:#6b1101;
}
a{
font-family: "Trebuchet MS";
font-size: 14px;
font-weight: bold;
color: #FFFFFF;
line-height:50px;
text-decoration:none; }
a.hover{
font-family: "Trebuchet MS";
font-size:14px;
font-weight: bold;
color:#0000FF;
line-height:50px;
text-decoration:underline;
padding-bottom:1px; }
a.visited{
font-family: "Trebuchet MS";
font-size:14px;
font-weight: bold;
color:#000066;
line-height:50px;
text-decoration:none;
}
a.active{
font-family: "Trebuchet MS";
font-size:14px;
font-weight: bold;
color:#0000FF;
line-height:50px;
text-decoration:none;
padding-bottom:1px;
}

5.新建package、java代码文件(此处即为Servlet),代码如下:

package servlet;

import java.io.IOException;
import java.sql.*; //导入数据库处理所有库
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.swing.JOptionPane; //用户登录处理Servlet 系统登录主页处理表单
public class HomePageAction extends HttpServlet { private Connection cn=null; //定义数据库连接对象
private String driverName=null; //数据库驱动器
private String url=null; //数据库地址URL //初始化方法,取得数据库连接对象
public void init(ServletConfig config) throws ServletException
{
super.init(config);
driverName=config.getInitParameter("driverName");
url=config.getInitParameter("url"); try {
Class.forName(driverName);
cn=DriverManager.getConnection(url);
} catch(Exception e) {
System.out.println("取得数据库连接错误:"+e.getMessage());
}
} //处理GET请求方法
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
//取得用户注册表单提交的数据
String userid=request.getParameter("userid");
String password=request.getParameter("password");
//判断登录账号为空,则自动跳转到注册页面
if(userid==null||userid.trim().length()==0) {
response.sendRedirect("index.jsp");
JOptionPane.showMessageDialog(null, "User name or password can't be empty!");
}
//判断登录密码为空
if(password==null||password.trim().length()==0) {
response.sendRedirect("index.jsp");
JOptionPane.showMessageDialog(null, "User name or password can't be empty!");
}
//查询数据库和跳转到登录主界面
try {
//查询数据库操作 //跳转到主界面
response.sendRedirect("success.jsp");
} catch(Exception e) {
System.out.println("错误:"+e.getMessage());
response.sendRedirect("index.jsp");
}
} //处理POST请求方法
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
doGet(request,response);
} //销毁方法
public void destroy() {
super.destroy();
try {
cn.close();
}catch(Exception e) {
System.out.println("关闭数据库错误:"+e.getMessage());
}
}
}

6.修改配置文件web.xml,使index.jsp页面可以定位到java文件(Servlet),代码如下:(主要是<servlet>标签和<servlet-mapping>标签,其他标签无关紧要)

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
<display-name></display-name>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list> <servlet>
<servlet-name>HomePageAction</servlet-name>
<servlet-class>servlet.HomePageAction</servlet-class>
<init-param>
<param-name>driveName</param-name>
<param-value>sun.jdbc.odbc.JdbcOdbcDriver</param-value>
</init-param>
<init-param>
<param-name>url</param-name>
<param-value>jdbc:odbc:cityoa</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>HomePageAction</servlet-name>
<url-pattern>/loginAction.do</url-pattern>
</servlet-mapping>
</web-app>

7.新建Servlet调用的返回页面success.jsp,代码如下:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>验证成功界面</title> <meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">
<!--
<link rel="stylesheet" type="text/css" href="styles.css">
--> </head> <body>
界面表单提交跳转成功 <br>
<a href="index.jsp">返回</a>
</body>
</html>

8.效果图:

Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)

  返回界面:

Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)

总结调用路径:

Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)
引用出处:http://www.bkjia.com/ASPjc/995763.html