增加登录ajax用户名判断

This commit is contained in:
F嘉阳
2018-01-20 12:56:45 +08:00
parent 4697251148
commit e580496e4d
7 changed files with 211 additions and 56 deletions

View File

@@ -1,54 +1,66 @@
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://xmlns.jcp.org/xml/ns/javaee" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd" id="WebApp_ID" version="3.1">
<display-name>Scorpion king Information consulting company</display-name>
<servlet>
<servlet-name>CheckLoginServlet</servlet-name>
<servlet-class>com.skic.servlet.CheckLoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CheckLoginServlet</servlet-name>
<url-pattern>/CheckLoginServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>CheckRegisterServlet</servlet-name>
<servlet-class>com.skic.servlet.CheckRegisterServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>LogoutServlet</servlet-name>
<servlet-class>com.skic.servlet.LogoutServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CheckRegisterServlet</servlet-name>
<url-pattern>/CheckRegisterServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LogoutServlet</servlet-name>
<url-pattern>/LogoutServlet</url-pattern>
</servlet-mapping>
<filter>
<filter-name>CheckLoginFilter</filter-name>
<filter-class>com.skic.filter.CheckLoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CheckLoginFilter</filter-name>
<url-pattern>/page/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>vipPermissionFilter</filter-name>
<filter-class>com.skic.filter.AdminPermissionFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>vipPermissionFilter</filter-name>
<url-pattern>/page/adminPage/*</url-pattern>
</filter-mapping>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
id="WebApp_ID" version="3.1">
<display-name>Scorpion king Information consulting company</display-name>
<servlet>
<servlet-name>CheckLoginServlet</servlet-name>
<servlet-class>com.skic.servlet.CheckLoginServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CheckLoginServlet</servlet-name>
<url-pattern>/CheckLoginServlet</url-pattern>
</servlet-mapping>
<servlet>
<servlet-name>CheckRegisterServlet</servlet-name>
<servlet-class>com.skic.servlet.CheckRegisterServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>LogoutServlet</servlet-name>
<servlet-class>com.skic.servlet.LogoutServlet</servlet-class>
</servlet>
<servlet>
<servlet-name>CheckNameServlet</servlet-name>
<servlet-class>com.skic.servlet.CheckNameServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>CheckRegisterServlet</servlet-name>
<url-pattern>/CheckRegisterServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>LogoutServlet</servlet-name>
<url-pattern>/LogoutServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>CheckNameServlet</servlet-name>
<url-pattern>/CheckNameServlet</url-pattern>
</servlet-mapping>
<filter>
<filter-name>CheckLoginFilter</filter-name>
<filter-class>com.skic.filter.CheckLoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>CheckLoginFilter</filter-name>
<url-pattern>/page/*</url-pattern>
</filter-mapping>
<filter>
<filter-name>vipPermissionFilter</filter-name>
<filter-class>com.skic.filter.AdminPermissionFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>vipPermissionFilter</filter-name>
<url-pattern>/page/adminPage/*</url-pattern>
</filter-mapping>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.jsp</welcome-file>
<welcome-file>default.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.jsp</welcome-file>
</welcome-file-list>
</web-app>

View File

@@ -45,6 +45,7 @@
<!-- <link rel="stylesheet" type="text/css" href="css/normalize.css" /> -->
<link rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.97.1/css/materialize.min.css">
<script src="https://cdn.bootcss.com/jquery/3.2.1/jquery.min.js"></script>
<style type="text/css">
html, body {
height: 100%;
@@ -72,6 +73,41 @@ body {
<!--[if IE]>
<script src="http://apps.bdimg.com/libs/html5shiv/3.7/html5shiv.min.js"></script>
<![endif]-->
<script type="text/javascript">
function ine(data) {
if (data == 1) {
document.getElementById("userName").setAttribute("class", "validate invalid");
document.getElementById("userNamelab").setAttribute("data-error", "不能为空");
} else if (data == 2) {
document.getElementById("userName").setAttribute("class", "validate invalid");
document.getElementById("userNamelab").setAttribute("data-error", "用户名已存在");
} else if (data == 3) {
document.getElementById("userNamelab").setAttribute("data-success", "该用户名可用");
} else {
document.getElementById("userName").setAttribute("class", "validate invalid");
document.getElementById("userNamelab").setAttribute("data-error", "未知错误");
}
}
function checkUser() {
var name = $('#userName').val();
var s = 0;
$.ajax({
type : "post",
url : '<%=request.getContextPath()%>/CheckNameServlet',
data : "name=" + name,
success : function(data) {
ine(data);
}
});
}
$(document).ready(function() {
$("#userName").blur(function() {
checkUser();
});
})
</script>
</head>
<body class=" cyan darken-1">
<div id="login-page" class="row">
@@ -89,8 +125,8 @@ body {
<div class="row margin">
<div class="input-field col s12">
<i class="mdi-social-person-outline prefix"></i> <input
name="userName" type="text" class="validate"> <label
for="username" class="center-align">Username</label>
name="userName" id="userName" type="text" class="validate">
<label for="username" id="userNamelab" class="center-align">Username</label>
</div>
</div>
<div class="row margin">
@@ -110,7 +146,7 @@ body {
<div class="row margin">
<div class="input-field col s12">
<i class="mdi-action-lock-outline prefix"></i> <input type="tel"
name="tel" class="validate"> <label for="username"
name="tel" class="validate"> <label for="tel"
class="center-align">PhoneNum</label>
</div>
</div>

View File

@@ -15,4 +15,6 @@ public interface UserDAO {
public ResultSet showAll(Connection conn, UserDTO user) throws SQLException;
public ResultSet checkUserNameExist(Connection conn, UserDTO user) throws SQLException;
}

View File

@@ -74,4 +74,13 @@ public class UserDAOimpl implements UserDAO {
return pre.executeQuery();
}
@Override
public ResultSet checkUserNameExist(Connection conn, UserDTO user) throws SQLException {
PreparedStatement pre = conn
.prepareStatement(
"SELECT col_userName FROM tb_skicvip WHERE col_userName=?");
pre.setString(1, user.getUserName());
return pre.executeQuery();
}
}

View File

@@ -28,7 +28,7 @@ public class CheckLoginService {
}else {
flagTypeMap.put("login_status",0);
}
System.out.println("login_status"+flagTypeMap.get("login_status")+"adminflag = "+flagTypeMap.get("adminflag")+"vipflag = "+flagTypeMap.get("vipflag")+"rootflag = "+flagTypeMap.get("rootflag"));
//System.out.println("login_status"+flagTypeMap.get("login_status")+"adminflag = "+flagTypeMap.get("adminflag")+"vipflag = "+flagTypeMap.get("vipflag")+"rootflag = "+flagTypeMap.get("rootflag"));
} catch (SQLException e) {
System.out.println("获取查询结果失败");
e.printStackTrace();

View File

@@ -0,0 +1,46 @@
package com.skic.service;
import java.sql.*;
import com.skic.DAO.UserDAO;
import com.skic.DAO.impl.UserDAOimpl;
import com.skic.DTO.UserDTO;
import com.skic.util.ConnectionFactory;
public class CheckNameService {
private UserDAO userdao = new UserDAOimpl();
public boolean CheckName(UserDTO USERDTO) {
Connection conn = null;
try {
conn = ConnectionFactory.getInstance().makeConnection();
conn.setAutoCommit(false);
ResultSet resultSet1 = userdao.checkUserNameExist(conn, USERDTO);//调用数据库查询
conn.commit();
if (resultSet1.next()) {//查询用户名是否存在
return true;//存在则返回true
}
} catch (SQLException e) {
System.out.println("获取查询结果失败");
e.printStackTrace();
try {
System.out.println("更新数据失败,数据库回滚");
conn.rollback();
} catch (SQLException e1) {
System.out.println("数据库回滚失败");
e1.printStackTrace();
}
} finally {
if (conn != null) {
try {
conn.close();
} catch (SQLException e) {
System.out.println("数据库关闭失败");
e.printStackTrace();
}
}
}
return false;
}
}

View File

@@ -0,0 +1,50 @@
package com.skic.servlet;
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.skic.DTO.UserDTO;
import com.skic.service.CheckNameService;
public class CheckNameServlet extends HttpServlet {
private static final long serialVersionUID = -4871016110718914020L;
private CheckNameService cns = new CheckNameService();
public CheckNameServlet() {
super();
}
public void destroy() {
super.destroy();
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
response.setContentType("text/html");
request.setCharacterEncoding("utf-8");
//System.out.println("checkNameServlet开始执行");
PrintWriter out = response.getWriter();
String userName = request.getParameter("name");
UserDTO user = new UserDTO();
user.setUserName(userName.trim());
boolean rsName = cns.CheckName(user);
if (userName.trim().equals("")) {
out.print(1);
} else if (rsName) {
out.print(2);
} else {
out.print(3);
}
}
public void init() throws ServletException {
}
}