admin管理员组

文章数量:1534339

2024年1月25日发(作者:)

JSP 通过表单向Servlet提交数据

在前面的小节中,介绍了Servlet的概念和生命周期,读者应对Servlet有个大致的了解。为了让读者对Servlet的开发和部署有一个直观的认识,现在创建一个案例,演示在JSP页面中通过表单访问Servlet程序。该案例主要实现Servlet用户登录功能,包含一个登录显示页面和登录处理页面。

1.编写代码

首先编写实现登录显示的页面。打开记事本,创建文件,并输入下面的代码:

<%@ page language="java" pageEncoding="gb2312"%>

登录页面

用户昵称:

用户密码:

上述代码中,form表单的属性action表示表单数据要提交的位置,LoginServlet表示一个Servlet的URL。

打开记事本,创建LoginServlet文件,并输入下面代码:

package test;

import .*;

import t.*;

import .*;

public class LoginServlet extends HttpServlet{

public void init(ServletConfig config) throws ServletException

{(config);}

public void service(HttpServletRequest request,HttpServletResponse response) throws

IOException

{ //获得一个向客户发送数据的输出流:

tentType("text/html;charset=GB2312");//设置响应的MIME类型。

PrintWriter out=ter();

String name=ameter("name1");

String pwd=ameter("name2");

if(().equals("admin") && ("admin")){

n(" ");

n("用户成功登录");

n(" ");

}

else{

n(" ");

n("用户登录失败");

n(" ");

}}

public void destroy(){}

}

在该文件中,引入了一个包,一个t包,包,创建类LoginServlet继承HttpServlet类,HttpServlet类是实现Servlet程序必须要继承的类。该类包含三个方法,init()、service()和destory()方法。其中init方法属于初始化方法,service()方法处理用户请求,destroy()方法销毁资源。在service()方法中,主要负责输出响应字符串。其中代码“tentType()方法表示设置响应网页的编码形式”,代码“PrintWriter out=ter()”表示获得一个输出流对象out。

2.部署和编译文件

上述文件编写完成后,将复制到C:Tomcat 6.0webappsJSPExample目录下,将文件复制到C:Tomcat 6.0webappsJSPExampleWEB-INFclasses目录下。部署完成后,编译文件,打开命令提示符窗口,使用“javac –d . ”命令编译Servlet文件。在classes文件夹下的test文件夹内,会自动生成一个文件。

3.配置

进入C:Tomcat 6.0webappsJSPExampleWEB-INF目录,打开文件,添加代码:

LoginServlet

ervlet

LoginServlet

/LoginServlet

4.运行程序

打开IE浏览器,在地址栏中输入localhost:8080/JSPExample/,单击【转到】,会显示如图5-6所示窗口:

图5-6 用户登录窗口

在上述窗口中输入登录显示,单击【提交】按钮,会将输入信息提交给LoginServlet处理,如果登录成功,则显示如图5-7所示窗口,否则显示如图5-8所示窗口。

图5-7 用户登录成功 图5-8 用户登录失败

本文标签: 文件登录方法打开用户