上代码:
login.jsp的代码
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/bootstrapValidator.css">
<link rel="stylesheet" href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="js/bootstrap.min.js">
<link rel="stylesheet" href="css/bootstrapValidator.css">
<script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>验证页面</title>
</head>
<body>
<form method="post" action="HandleLogin">
<div class="form-group ">
<label class="control-label">账号:</label>
<input type="text" class="form-control" id="userid" name="userid" placeholder="请输入您的账号" required />
<span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
<div class="form-group">
<label>密码:</label>
<input type="password" class="form-control" id="passwd" name="passwd" placeholder="请输入您的密码" required />
<span class="glyphicon glyphicon-ok form-control-feedback"></span>
</div>
<input type="reset" class="btn " value="重置" >
<input type="submit" class="btn btn-success" >
</form>
</body>
</html>
Login包的代码
package data;
public class Login {
String userid,username,passwd,backNews,ipaddress="";
boolean success = false;
public void setUserid(String userid) {
this.userid = userid;
}
public String getUserid() {
return userid;
}
public void setUsername(String username) {
this.username = username;
}
public String getUsername() {
return username;
}
public void setPasswd(String passwd) {
this.passwd = passwd;
}
public String getPasswd() {
return passwd;
}
public String getBackNews() {
return backNews;
}
public void setBackNews(String s) {
this.backNews = s;
}
public void setIpaddress(String ipaddress) {
this.ipaddress = ipaddress;
}
public String getIpaddress() {
return ipaddress;
}
public void setSuccess(boolean b) {
this.success = b;
}
public boolean getSuccess() {
return success;
}
}
servlet的代码
package servlet;
import data.*;
import data.Login;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.*;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
@WebServlet(name = "HandleLogin")
public class HandleLogin extends HttpServlet {
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
try{
Class.forName("com.mysql.jdbc.Driver");
}
catch (Exception e){}
}
public String handleString(String s){
try {
byte bb[] = s.getBytes("iso-8859-1");
s=new String(bb);
}
catch (Exception ee){}
return s;
}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
Connection con;
Statement sql;
Login loginBean = null;
String backNews = "";
HttpSession session = request.getSession(true);
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 userid = request.getParameter("userid").trim();
String passwd = request.getParameter("passwd").trim();
boolean ok = loginBean.getSuccess();
userid = handleString(userid);
passwd = handleString(passwd);
if (ok == true && userid.equals(loginBean.getUserid())) {
backNews = userid + "已经登录了";
loginBean.setBackNews(backNews);
} else {
String url = "jdbc:mysql://localhost:3306/hanfu";
boolean boo = (userid.length() > 0) && (passwd.length() > 0);
try {
con = DriverManager.getConnection(url, "root", "");
String condition = "select * from users where userid='" + userid + "'and passwd ='" + passwd + "'";
sql = con.createStatement();
if (boo) {
ResultSet rs = sql.executeQuery(condition);
boolean m = rs.next();
if (m == true) {
backNews = "登陆成功";
loginBean.setBackNews(backNews);
loginBean.setSuccess(true);
loginBean.setUserid(userid);
System.out.println("登陆成功");
} else {
backNews = "用户名或密码错误";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setUserid(userid);
loginBean.setPasswd(passwd);
System.out.println("用户名或密码错误");
}
}
else {
backNews = "用户名或密码错误";
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
loginBean.setUserid(userid);
System.out.println("用户名或密码错误");
}
// else {
// backNews="用户名或密码错误";
// loginBean.setBackNews(backNews);
// loginBean.setSuccess(false);
// loginBean.setUserid(userid);
// loginBean.setPasswd(passwd);
// }
con.close();
}
catch(SQLException exp){
backNews = "" + exp;
loginBean.setBackNews(backNews);
loginBean.setSuccess(false);
}
}
RequestDispatcher dispatcher = request.getRequestDispatcher("hanfu_showlogin.jsp");
dispatcher.forward(request,response);
}
// public String getIpAddr(HttpServletRequest request) {
// String ip = request.getHeader("x-forwarded-for");
// if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
// ip = request.getHeader("Proxy-Client-IP");
// }
// if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
// ip = request.getHeader("WL-Proxy-Client-IP");
// }
// if(ip == null || ip.length() == 0 || "unknown".equalsIgnoreCase(ip)) {
// ip = request.getRemoteAddr();
// }
// if(ip.startsWith("192")){}
// else{ip="";}
// return ip;
// }
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request,response);
}
}
然后loginshow的跳转代码
<%--
Created by IntelliJ IDEA.
User: susheng0508
Date: 2018/6/14
Time: 20:29
To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="data.Login" %>
<html>
<head>
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/bootstrapValidator.css">
<link rel="stylesheet" href="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/css/bootstrap.min.css">
<link rel="stylesheet" href="js/bootstrap.min.js">
<link rel="stylesheet" href="css/bootstrapValidator.css">
<script src="http://cdn.static.runoob.com/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="http://cdn.static.runoob.com/libs/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<title>登录情况</title>
</head>
<body>
<div class="container" style="text-align: center">
<jsp:useBean id="login" type="data.Login" scope="session"/>
<br><jsp:setProperty name="login" property="backNews"/>
<% if (login.getSuccess()==true){
%>
<h3>登陆成功</h3>
<br>登陆账号为:<jsp:setProperty name="login" property="userid"/>
<%--<br>登陆会员名为:<%=getIpAddr(request)%>--%>
<br><input type="submit" class="btn" onclick='location.href=("hanfu_personal.jsp")' value="跳转至个人中心">
<%}
else {%>
<h3>登录失败</h3>
<br>你输入的账号为:<jsp:setProperty name="login" property="userid"/>
<br>你输入的密码为:<jsp:setProperty name="login" property="passwd"/>
<br><input type="submit" class="btn" onclick='location.href=("hanfu_login.jsp")' value="返回登陆界面">
<%}%>
</div>
</body>
</html>
我是才学jsp的小白。。。真的没想到照着书打也会有这么多问题,我真的太笨了
无论我在login输入什么数值,最后loginshow的页面出现的值都为空
添加回答
举报
0/150
提交
取消