通过Servlet验证登录信息并录入登录信息

来源:互联网 发布:程序员人才需求 编辑:程序博客网 时间:2024/06/05 11:19

Servlet的基本信息可以去看(http://blog.csdn.net/csdmo/article/details/74357723)中的相关内容

在上篇内容中编写了JDBC关联数据库并操纵数据库的内容,本篇则在上篇的基础上了解通过Servlet验证登录信息并录入登录信息的操作


首先创建两个Servlet——LongServlet与ZhuCeServlet

package com.yy.servlet.web.servlet;import java.io.IOException;import java.io.PrintWriter;import java.util.HashMap;import java.util.Map;import javax.servlet.ServletException;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import com.yy.servlet.dao.UserDao;import com.yy.servlet.po.User;public class LongServlet extends HttpServlet{
@Overrideprotected void doGet(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {doPost(request, response);//获取的doGet跳转到doPost方法中运行,因为doPost方法更安全}@Overrideprotected void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");String username = request.getParameter("username");//获取页面的usernameString password = request.getParameter("password");//获取页面的passwordresponse.setCharacterEncoding("utf-8");//配置编码器PrintWriter out = response.getWriter();//配置打印设施out.print("username"+username);//在网页打印usernameout.print("<br/>");out.print("password"+password);//在网页打印passwordUserDao userdao =UserDao.getInstance();//实例化UserDao类并获取getInstance()方法Map<String, String> map = new HashMap<String, String>();//准备好存放数据的Mapmap.put("username",username);//获取查询到的usernamemap.put("password",password);//获取查询到的passwordUser user =userdao.getMap(map);//把map存储的数据付给Userif(user!=null){//如果user不为空表示数据库中有对应数据则登录成功out.print("登录成功");}else{//user为空打印注册页面out.print("登录失败,请注册");out.print(" <form method='get' action='ZhuCeServlet'><br>");//点击注册跳转到ZhuCeServlet中去out.print("用户名:<input type='text' name='username'/><br>");out.print("密码:<input type='password' name='password'><br>");out.print("<input type='submit' value='注册'>");out.print("</form>");    }out.flush();//刷新页面out.close();//关闭}}

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 com.yy.servlet.dao.UserDao;import com.yy.servlet.po.User;public class ZhuCeServlet extends HttpServlet{@Overrideprotected void service(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {response.setContentType("text/html");response.setCharacterEncoding("UTF-8");String username = request.getParameter("username");String password= request.getParameter("password");PrintWriter out =response.getWriter();User user = UserDao.getInstance().getUserByusername(username);//查询数据库内容if(user!=null){//如果user不为空表示数据库有相应信息注册失败,在页面打印注册表out.print("用户名已存在,请重新输入<br>");out.print(" <form method='get' action='ZhuCeServlet'><br>");out.print("用户名:<input type='text' name='username'/><br>");out.print("密码:<input type='password' name='password'><br>");out.print("<input type='submit' value='注册'>");out.print("</form>");}else{User user2 = new User();user2.setUsername(username);user2.setPassword(password);//把注册信息传输到User中boolean flag =UserDao.getInstance().saveUser2(user2);//通过JDBC添加注册内容if(flag){out.print("注册成功");}else{out.print("注册失败");//注册失败,很有可能数据库出错}}}


然后通过WebRoot中WEB-INF下的web.xml配置相关内容

<?xml version="1.0" encoding="UTF-8"?><web-app version="2.5" 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_2_5.xsd"><!-- 配置LongServlet --><servlet><servlet-name>LongServlet</servlet-name><servlet-class>com.yy.servlet.web.servlet.LongServlet</servlet-class></servlet><servlet-mapping><servlet-name>LongServlet</servlet-name><url-pattern>/LongServlet</url-pattern></servlet-mapping><!-- 配置LongServlet --><servlet><servlet-name>ZhuCeServlet</servlet-name><servlet-class>com.yy.servlet.web.servlet.ZhuCeServlet</servlet-class></servlet><servlet-mapping><servlet-name>ZhuCeServlet</servlet-name><url-pattern>/ZhuCeServlet</url-pattern></servlet-mapping>  <welcome-file-list>    <welcome-file>MyJsp.jsp</welcome-file>//首页的JSP  </welcome-file-list>  </web-app>



别忘了在JSP文件中编写首页表格


<h1>通过Servlet验证登录信息并录入登录信息</h1>    <form method="get" action="LongServlet">//action表示关联到LongServlet类    用户名:<input type="text" name="username"/><br>    密码:<input type="password" name="password"><br>    <input type="submit" value="登录">    </form>  </body>


通过Servlet验证登录信息并录入登录信息的相关内容告一段落,但是Servlet的学习并没有结束