servlet----登录页面----一个有冗余代码的登录页面
2010-05-11 18:19
507 查看
package com.adverties.servlet;
import java.sql.*;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.adverties.bean.Login;
public class HandleLogin extends HttpServlet {
private static final long serialVersionUID = 1L;
public void inint(ServletConfig config) throws ServletException {
super.init(config);
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (Exception e) {
e.printStackTrace();
}
}
public String loginInfo(String s) {
byte[] bb;
try {
bb = s.getBytes("gbk");
s = new String(bb);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return s;
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("gbk");
response.setCharacterEncoding("gbk");
response.setContentType("text/html;charset=utf-8");
Login loginBean = null;
HttpSession session = request.getSession(true);
String logname;
String password;
String backNews="";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
loginBean=(Login)session.getAttribute("login");
//-----------------
if(loginBean==null){
loginBean = new Login();
session.setAttribute("login", loginBean);
}
}catch(Exception ee){
loginBean = new Login();
session.setAttribute("login", loginBean);
}
String url = "jdbc:mysql://localhost:3306/adv";
logname=request.getParameter("logname").trim();
password=request.getParameter("password").trim();
boolean ok = loginBean.getSuccess();
logname=loginInfo(logname);
password=loginInfo(password);
if(ok==true&&logname.equals(loginBean.getLogname())){
backNews=logname+"已经登录";
loginBean.setBackNews(backNews);
}else{
boolean boo = (logname.length() > 0) && (password.length() > 0);
try{
conn = DriverManager.getConnection(url, "root", "root");
String sql = "select * from member where logname=? and password=?";
pstmt = conn.prepareStatement(sql);
if (boo) {
pstmt.setString(1, loginInfo(logname));
pstmt.setString(2, loginInfo(password));
rs = pstmt.executeQuery();
boolean m = rs.next();
if (m == true) {
backNews = "登录成功!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(true);
loginBean.setLogname(logname);
loginBean.setPassword(password);
} else {
backNews = "您输入的用户名不存在,或密码不正确!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setLogname(logname);
loginBean.setPassword(password);
}
} else {
backNews = "您输入的用户名不存在,或密码不正确!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setLogname(logname);
loginBean.setPassword(password);
}
pstmt.close();
conn.close();
} catch (SQLException e) {
backNews = "" + e;
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
}
}
RequestDispatcher dispatcher = request
.getRequestDispatcher("showLoginMess.jsp");
dispatcher.forward(request, response);
}
}
import java.sql.*;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import com.adverties.bean.Login;
public class HandleLogin extends HttpServlet {
private static final long serialVersionUID = 1L;
public void inint(ServletConfig config) throws ServletException {
super.init(config);
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (Exception e) {
e.printStackTrace();
}
}
public String loginInfo(String s) {
byte[] bb;
try {
bb = s.getBytes("gbk");
s = new String(bb);
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
return s;
}
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("gbk");
response.setCharacterEncoding("gbk");
response.setContentType("text/html;charset=utf-8");
Login loginBean = null;
HttpSession session = request.getSession(true);
String logname;
String password;
String backNews="";
Connection conn = null;
PreparedStatement pstmt = null;
ResultSet rs = null;
try {
loginBean=(Login)session.getAttribute("login");
//-----------------
if(loginBean==null){
loginBean = new Login();
session.setAttribute("login", loginBean);
}
}catch(Exception ee){
loginBean = new Login();
session.setAttribute("login", loginBean);
}
String url = "jdbc:mysql://localhost:3306/adv";
logname=request.getParameter("logname").trim();
password=request.getParameter("password").trim();
boolean ok = loginBean.getSuccess();
logname=loginInfo(logname);
password=loginInfo(password);
if(ok==true&&logname.equals(loginBean.getLogname())){
backNews=logname+"已经登录";
loginBean.setBackNews(backNews);
}else{
boolean boo = (logname.length() > 0) && (password.length() > 0);
try{
conn = DriverManager.getConnection(url, "root", "root");
String sql = "select * from member where logname=? and password=?";
pstmt = conn.prepareStatement(sql);
if (boo) {
pstmt.setString(1, loginInfo(logname));
pstmt.setString(2, loginInfo(password));
rs = pstmt.executeQuery();
boolean m = rs.next();
if (m == true) {
backNews = "登录成功!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(true);
loginBean.setLogname(logname);
loginBean.setPassword(password);
} else {
backNews = "您输入的用户名不存在,或密码不正确!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setLogname(logname);
loginBean.setPassword(password);
}
} else {
backNews = "您输入的用户名不存在,或密码不正确!";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setLogname(logname);
loginBean.setPassword(password);
}
pstmt.close();
conn.close();
} catch (SQLException e) {
backNews = "" + e;
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
}
}
RequestDispatcher dispatcher = request
.getRequestDispatcher("showLoginMess.jsp");
dispatcher.forward(request, response);
}
}
相关文章推荐
- servlet----注册页面----一个有冗余代码的注册页面
- jsp_首先利用纯HTML写一个简单的登录页面以及后台处理页面【代码】
- Java Servlet【4】一个小的Servlet登录界面+页面跳转
- 【html】【一个简单的用户登录页面代码】
- JavaScript调用App原生代码(iOS、Android)通用解决方案 实际场景 场景:现在有一个H5活动页面,上面有一个登陆按钮,要求点击登陆按钮以后,唤出App内部的登录界面,当登录成功
- 创建并部署一个Servlet,要求在实现用户登录功能,当用户名和密码正确时跳转到欢迎页面,否则提示出错信息
- 一个可以返回前一页并自动刷新页面的ASP代码.
- 登录远程桌面时遇到“由于客户端检测到一个协议错误(代码0x1104)”
- 只有20行Javascript代码!手把手教你写一个页面模板引擎
- 源码推荐(01.07B):MVVM登录页面,一句代码设置UILabel的行距间距
- 在编辑页面布局,点击其中的一个控件时,不自动定位到页面的代码
- 一个request穿越多个jsp(servlet)页面的情况的讨论
- java通过JFrame做一个登录系统的界面完整代码示例
- 在产品详细页面的产看上一个,下一个产品的代码!
- 基于Bootstrap实现下图所示效果的页面,一个白底的带有两个菜单项、一个下拉菜单和一个登录表单的基本导航条
- 希望用ptyhon做一个用户登录页面
- 【Step by Step】编写代码验证一个ASP.NET应用程序和页面的生命周期
- 参考lofter的代码写的一个小html页面
- 简单的html格式的手机页面登录代码