电话:0731-83595998
导航

MVC用户认证web应用部分二

来源: 2017-12-22 09:43

 百度广告

我们由展示层提交上来的HttpServletRequest,到底该怎么处理?
好了,先让我们看一下CheckServlet.java的代码,再去理解它为什么要这样去写。
CheckServlet.java
package com.teach.servlet;

import javax.servlet.*;

import com.teach.bean.*;

import java.io.*;

public class CheckServlet extends HttpServlet
 private static final long serialVersionUID = 1L; //为保持版本兼容性附给对象的唯一标识符

 // 在这里初始化全局变量
   
   public void doGet(HttpServletRequest request, HttpServletResponse response)
   {
       request.getParameter("password") != null)
     String userName = request.getParameter("username");
     
     UserBean ub=db.checkUsersLogin(userName, userPwd);
     request.getSession().setAttribute("user",ub);
    }||| 

   //  处理HTTP的POST请求
    throws
   {
   }

   //在这里清理资源
}
从这里我们可以得知我们checkservlet首先从HttpServletRequest中取出两个元素一个是用户名"username",一个是密码"password",取出这两个元素之后下一步需要做的就是进行验证,思路很简单将这两个元素与我们所建立的数据库里面所存储的纪录进行比较,如果数据库中含有请求的两个元素的纪录则用户为合法的,反之则为非法用户,对于非法用户之后的处理我们这个例子先不涉及,以后会逐渐的完善的。


首先呢,我们需要访问new_db这个数据库,步骤是规定好的。
第二步就是建立与数据库的连接。
第四步调用SQL语句。
最后一步一次关闭ResultSet,statement,Connection对象。
我们把连接数据库德步骤和判断用户合法性的方法封装在一个Bean里面,取名叫作SQLBean.java
SQLBean.java

 

package com.teach.bean;

import java.sql.Connection;
import java.sql.SQLException;


 
   private ResultSet rs = null;

   
  try
  //连接MySQL数据库的字符串
  //装载MySQL数据库的驱动程序
  //创建连接
  }
  catch(Exception ex){ System.out.println(ex.getMessage());}

 }

   public UserBean checkUsersLogin(String userName, String userPwd) //登陆验证
    UserBean ub = null;
    {
     userPwd = "null";
    try
     String sql =
     pstmt = conn.prepareStatement(sql);
     pstmt.setString(2, userPwd);
     if (rs.next())
       if (rs.getInt(1) > 0)
         ub = this.getUser(userName);
       else
p;     {
       }
    }
    {
     e.printStackTrace();
    return ub;

   public boolean checkParameter(String para) //过滤非法字符
    int flag = 0;
    flag += para.indexOf(";") + 1;
    flag += para.indexOf("|") + 1;
    if (flag != 0)
     System.out.println("提交了非法字符!!!");
    }
   }
   public UserBean getUser(String userName) //提取登陆用户信息
    UserBean ub = new UserBean();
";
    {
     pstmt.setString(1, userName);
     while (rs.next())
       ub.setUserName(rs.getString("username"));
       ub.setUserId(rs.getString("userid"));
       ub.setUserType(rs.getString("usertype"));
    }
    {
    }

    return ub;
   
 public void close()  
   try{ 
  if(pstmt!=null) pstmt.close();
   }catch(SQLException e){ System.err.println(e.getMessage());}

编辑推荐:

下载Word文档

温馨提示:因考试政策、内容不断变化与调整,长理培训网站提供的以上信息仅供参考,如有异议,请考生以权威部门公布的内容为准! (责任编辑:长理培训)

网络课程 新人注册送三重礼

已有 22658 名学员学习以下课程通过考试

网友评论(共0条评论)

请自觉遵守互联网相关政策法规,评论内容只代表网友观点!

最新评论

点击加载更多评论>>

精品课程

更多
10781人学习

免费试听更多

相关推荐
图书更多+
  • 电网书籍
  • 财会书籍
  • 其它工学书籍
拼团课程更多+
  • 电气拼团课程
  • 财会拼团课程
  • 其它工学拼团
热门排行

长理培训客户端 资讯,试题,视频一手掌握

去 App Store 免费下载 iOS 客户端