Request应用之用户登陆失败信息回显

3 篇文章 0 订阅
1 篇文章 0 订阅

代码如下

public class LoginServlet1 extends HttpServlet {

	public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

		request.setCharacterEncoding("UTF-8"); //防止post提交方式乱码
		//要清楚用户登陆业务第一个是获取用户名以及密码
		String username = request.getParameter("username");
		String password = request.getParameter("password");
		
		//通过用户名user来判断user是否登陆成功 即没成功则为null
		User user = null;
		try {
			//业务方法 来判断用户是否登陆成功
			user = login(username,password);
			
			if(user!=null) {
				
				//这里要知道为什么用了重定向 没用转发
				response.sendRedirect(request.getContextPath()+"/index.jsp");
			}else {
				//设置域属性 在html页面中使用jsp调用显示
				request.setAttribute("LoginInfo", "登录失败,用户名或密码错误");
				//使用转发 要明白为什么要用请求转发
				request.getRequestDispatcher("login.jsp").forward(request, response);
			}
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		
	}
	
	public User login(String username,String password) throws SQLException {
		
		//C3P0连接池基础操作
		QueryRunner qr = new QueryRunner(C3P0Utils.getDataSource());
		
		String sql = "select * from user where username=? and password=?";
		
		User user = qr.query(sql, new BeanHandler<User>(User.class), username,password);
		
		
		return user;
		
	}

	public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		doGet(request, response);
	}
}
//jsp中的显示回显信息代码
<%= request.getAttribute("LoginInfo")==null?"":request.getAttribute("LoginInfo") %>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值