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

2.代码结构如下:

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.效果图:

  返回界面:

总结调用路径:


引用出处:http://www.bkjia.com/ASPjc/995763.html

Servlet实现表单提交(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(一)的更多相关文章

  1. Servlet实现数据库查询(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(三)

    1.MyEclipse | New Web Project :TestServlet01,修改index.jsp的代码: <%@ page language="java" i ...

  2. Java EE之servlet处理表单提交的请求

    1.在源包下新建一个Servlet页,取名为LoginServlet: package weinidingServlet;                            //该Servlet所 ...

  3. 表单提交数据量大于2m,java 后台接受不到表单传递过来的数据

    一般来说 post请求提交的数据无大小限制,但是tomcat 设置默认的表单传输数据大小不能2m,这时候当数据大于2m后台接收达不到表单的数据,需要修改tomcat的server.xml的的maxPo ...

  4. JSP_DAO方式实现数据库查询(MyEclipse10,Tomcat7.0,JDK1.7,)——Java Web练习(四)

    1.项目结构: 2.创建数据库.表.插入记录 create database TestDao; use TestDao; create table student( stuid int, userna ...

  5. JSP表单提交与接收

    JSP表单提交与接收 在Myeclipse中新建web project,在webroot中新建userRegist1.jsp,代码如下 <%@ page contentType="te ...

  6. JSP怎么将表单提交到对应的servlet

    昨天学习了这些内容,今天做一下分享吧,个人感觉挺乱的....呵呵,其实没事,慢慢就好了.难的不会,会的不难嘛!努力+认真就可以了,相信大家都可以的!加油!!! 下面的图是我用myeclipse建立的项 ...

  7. Servlet的5种方式实现表单提交(注册小功能)

    Servlet的5种方式实现表单提交(注册小功能),后台获取表单数据   用servlet实现一个注册的小功能 ,后台获取数据. 注册页面: 注册页面代码 : <!DOCTYPE html> ...

  8. Servlet作业2-将表单提交的商品信息输出到页面中

    1,表单页面 shangpin.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...

  9. Swift3.0服务端开发(二) 静态文件添加、路由配置以及表单提交

    今天博客中就来聊一下Perfect框架的静态文件的添加与访问,路由的配置以及表单的提交.虽然官网上有聊静态文件的访问的部分,但是在使用Perfect框架来访问静态文件时还是有些点需要注意的,这些关键点 ...

随机推荐

  1. 理解Javascript__undefined和null

    在 ECMAScript 的原始类型中,是有Undefined 和 Null 类型的. 这两种类型都分别对应了属于自己的唯一专用值,即undefined 和 null. alert(undefined ...

  2. deep learning 学习资料

    http://deeplearning.net/tutorial/lenet.html

  3. URL 路由访问报错

    错误: 错误分析:    控制器的文件名命名有问题(index.php)    在TP中控制器命名规范(IndexController.class.php) 相信许多PHP开发者在使用ThinkPHP ...

  4. 关于DateTime和String转换的容易犯得错误

    字符串转换成DateTime 在开发中,常常会有DataTime类型和String类型的互相转换的要求,比较常用的写法是var date = Convert.ToDateTime("2012 ...

  5. opencv 构造训练器

    D:/face   构造face训练器为例 一:样本创建 训练样本分为正例样本和反例样本,其中正例样本是指待检目标样本,反例样本指其它任意图片. 负样本可以来自于任意的图片,但这些图片不能包含目标特征 ...

  6. PinchEvent QML Type

    PinchEvent类型在QtQuick 1.1中被添加进来.center, startCenter, previousCenter属性保存了两个触摸点之间的中心位置.scale and previo ...

  7. smali 语法之if语句

    # virtual methods .method public onClick(Landroid/view/View;)V .locals 3 .parameter "v" .p ...

  8. RPC通信编程

    使用 RPC 编程是在客户机和服务器实体之间进行可靠通信的最强大.最高效的方法之一.它为在分布式计算环境中运行的几乎所有应用程序提供基础. RPC 是什么? RPC 的全称是 Remote Proce ...

  9. 面试cookie

    cookie : 存储数据,当用户访问了某个网站(网页)的时候,我们就可以通过cookie来像访问者电脑上存储数据 1.不同的浏览器存放的cookie位置不一样,也是不能通用的 2.cookie的存储 ...

  10. Start of Something New

    Hi Guys This will be the blog of SCaffrey for some time before he creates his own site:) Have a nice ...