j2ee—框架(2):Servlet+JSP实现基本的登录功能(v2.0)

该部分将逻辑判断在UserBean中进行处理,而且不采用配置的方式去实现,为了区分开两种实现方法的不同,在这里将之前设置的内容只是备注掉,并不会删除,也方便之后将两种方式进行对比。

第一部分 LoginController

 1 //LoginController这部分使用的注解的方法
 2 //因为使用了注解的方法,所以在web.xml中login的acion需要设置为LoginController
 3 //不然找不到用谁来处理login.jsp
 4 /**
 5  * Servlet implementation class LoginController
 6  */
 7 @WebServlet("/LoginController")
 8 public class LoginController extends HttpServlet {
 9     private static final long serialVersionUID = 1L;
10        
11     /**
12      * @see HttpServlet#HttpServlet()
13      */
14     public LoginController() {
15         super();
16         // TODO Auto-generated constructor stub
17     }
18 
19     /**
20      * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
21      */
22     protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
23         // TODO Auto-generated method stub
24         ServletContext servletContext = getServletContext();
25         //将请求转发到UserBean去进行处理
26         RequestDispatcher requestDispatcher = servletContext.getRequestDispatcher("/UserBean");
27         requestDispatcher.forward(request, response);
28 //        String name = request.getParameter("name");
29 //        System.out.println(name);
30 //        String password = request.getParameter("password");
31         
32         //if("ustc".equals(name)&&"oreo".equals(password))
33 //        if(name.equals(password))
34 //        {
35 //            //System.out.println("123");
36 //            requestDispatcher = servletContext.getRequestDispatcher("/login_success.jsp");
37 //        }
38 //        else
39 //        {
40 //            requestDispatcher = servletContext.getRequestDispatcher("/login_fail.jsp");
41 //        }
42         //response.getWriter().append("Served at: ").append(request.getContextPath());
43     }
44 
45     /**
46      * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
47      */
48     protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
49         // TODO Auto-generated method stub
50         doGet(request, response);
51     }
52 
53 }
  • web.xml 由于使用的是注解的方式,所以web.xml的内容不会产生实质性的影响,所以在该部分不需要进行相应的设置,只需要默认即可,但是默认的内容不会产生任何的影响。
 1 <?xml version="1.0" encoding="UTF-8"?>
 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" id="WebApp_ID" version="3.0">
 3   <display-name>Controller</display-name>
 4   <welcome-file-list>
 5     <welcome-file>index.html</welcome-file>
 6     <welcome-file>index.htm</welcome-file>
 7     <welcome-file>index.jsp</welcome-file>
 8     <welcome-file>default.html</welcome-file>
 9     <welcome-file>default.htm</welcome-file>
10     <welcome-file>default.jsp</welcome-file>
11   </welcome-file-list>
12 
13 </web-app>
  • login.jsp 注意在该部分,指定的是LoginController对login.jsp进行处理,所以action的设置和之前是不一样的。
 1 <%@ page language="java" contentType="text/html; charset=utf-8"
 2     pageEncoding="utf-8"%>
 3 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
 4 <html>
 5 <head>
 6 <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
 7 <title>Insert title here</title>
 8 </head>
 9 <body>
10 <form action="LoginController" method="post">
11 <!-- <form action="action/a1" method="post"> -->
12 
13     <label>账号:</label><input type="text" name="name"></br>
14     <label>密码:</label><input type="text" name="password"></br>
15     <input type="submit" value="登录">
16 </form>
17 </body>
18 </html>

login_success.jsp和login_fail.jsp的内容保持不变

具体的执行效果

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏pangguoming

在Servlet的init方法中创建线程

 servlet代码如下: package com.weichat.servlet; import java.io.IOException; import ...

39530
来自专栏个人分享

Redis部分数据结构方法小结

Redis在工程开发中还是比较常用的Nosql内存数据库,简单巩固一下它的各种数据类型与用法~

14930
来自专栏Jack-Cui

第六天、打渔晒网问题

    如果一个渔夫从2011年1月1日开始每三天打一次渔,两天晒一次网,编程实现当输入2011年1月1日以后的任意一天,输出该渔夫是在打渔还是在晒网。 C...

25100
来自专栏拂晓风起

enctype="multipart/form-data"的表单无法获取表单中除了type=file以外的其他参数 commons-fileupload 获取除file外其他参数

18850
来自专栏技术碎碎念

Servlet响应的中文字符集问题

在Servlet中利用response向客户端浏览器输出中文时有时会遇到乱码问题,总结如下: response输出流有两种,一是以字节流输出,一是以字符流输出。...

37880
来自专栏Hongten

java的poi技术读取和导入Excel

http://www.cnblogs.com/hongten/gallery/image/111987.html

24510
来自专栏Hongten

Java Web 网络留言板8

  admin:id,name ,password                  <pk>id

25010
来自专栏Hongten

Java Web 会话编程(Session)

import java.io.IOException; import java.io.PrintWriter; import java.sql.Date; im...

13620
来自专栏黑泽君的专栏

Servlet学习小结

12710
来自专栏闻道于事

JavaWeb项目之电话本,两个版本,以及总结反思

使用技术: Oracle 数据库 前端后台: Servlet + jsp + JDBC + html + css + js 前端界面自定, 但一定实现需要的功能...

56150

扫码关注云+社区

领取腾讯云代金券