实验四 Servlet的应用(JSP) 下载本文

实验四 Servlet的应用

实验内容和要求:

用Servlet来完成实验三的所有任务,即先登录,然后留言,再显示留言。采用JSP+JavaBean+Servlet开发模式。

实验步骤如下:

1. 创建登录页面login.jsp

<%@ page language=\ import=\ pageEncoding=\%>

用户名:
口 令:

2. 创建处理登录的Servlet:DoLogin.java,过程如下:

选择项目中src文件夹,New?Servlet,弹出Create a new Servlet对话框,设置如下(05为项目名称)

单击next后,见下图,只对Servlet/Jsp Mapping URL :作如下修改,单击finish.

此时,web.xml中应存在如下Servlet配置信息:

ServletExample firstServlet DoLogin

servlet.DoLogin

DoLogin /DoLogin

其中,/DoLogin行表明,该Servlet可以用这个URL访问,

http://localhost:8080/05/DoLogin

DoLogin.java代码如下

package servlet;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession;

public class DoLogin extends HttpServlet {

//因为登录表单是以get方式提交的,所以重写doGet方法,运行时调用此方法 public void doGet(HttpServletRequest request, HttpServletResponse response) }

throws ServletException, IOException {

String userName=request.getParameter(\);//获取用户名 HttpSession session = request.getSession();

session.setAttribute(\,userName); //用户名写入session,显示留String passWord=request.getParameter(\);//获取口令 if(userName.equals(\)&&passWord.equals(\)) //用户名和 response.sendRedirect(\); //重定向到留言页面 else

言时(showMessage.jsp)需要

密码正确

response.sendError(500,\登陆错误,用户名或密码不正确!\); }

3. 创建留言页面messageBoard.jsp

<%@ page contentType=\%>

留言标题:
留言内容:

4. 创建值JavaBean:Message.java同代码3-5 5. 创建工具JavaBean:Mytools.java同代码3-6 6. 创建处理留言的Servlet:DoMessage.java,如下图:

DoMessage.java代码如下:

package servlet;

import java.io.IOException; import java.io.PrintWriter;

import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse;

public class DoMessage extends HttpServlet {

//因为留言信息是以post方式提交的,所以重写doPost方法,运行时调用此方法 public void doPost(HttpServletRequest request, HttpServletResponse response) }

}

throws ServletException, IOException {

bean.valuebean.Message message=new bean.valuebean.Message(); message.setTitle(request.getParameter(\));//保存留言标题 message.setContent(request.getParameter(\));//保存留言request.setAttribute(\, message);//将对象message保存到//下面2行实现转发到showMessage.jsp RequestDispatcher

dispatcher.forward(request, response);

内容 request中

dispatcher=request.getRequestDispatcher(\);

7. 创建显示留言页面showMessage.jsp

<%@ page contentType=\%> <%@ page import=\ %> <%@page import=\%>

<%Message message=(Message)request.getAttribute(\); %>

显示留言信息

留言者:<%=session.getAttribute(\) %>

留言标题:<%=MyTools.change(message.getTitle()) %>
留言内容:<%=MyTools.change(message.getContent()) %>