JQuery + Ajax + mysql
2015-12-16 22:12
591 查看
输入用户名密码登陆
jsp页面
Login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript" src="jquery-1.11.1.js"></script>
<script type="text/javascript">
//页面启动之后执行
$(function(){
//jQuery选择元素id用#
$("#btn").click(function(){
if($("#name").val().length == 0){
$("#msg").html("请输入用户名");
return;
}
if($("#pwd").val().length == 0){
$("#msg").html("请输入密码");
return;
}
$.post("CheckLogin",
{"name":$("#name").val(),
"pwd":$("#pwd").val()},
function(data){
//用字符串的方式串
if(data == "0"){
$("#msg").html("用户名密码错误,登陆失败!");
}else{
location.href="welcome.jsp"
}
});
});
});
</script>
</head>
<body>
<form>
用户名:<input type="text" name="name" id="name"/><br/>
密码:<input type="password" name="pwd" id="pwd"/><br/>
<input type="button" value="登录" id="btn">
</form>
<div id="msg"></div>
</body>
</html>
welcome.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
欢迎登陆!
</body>
</html>
javabean -- User.java
package usermanager;
public class User {
private int id;
private String name;
private String pwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
数据库连接 -- DBLib.java
package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBLib {
public static Connection getConn() throws ClassNotFoundException, SQLException{
//驱动
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库名,这里为login
String url = "jdbc:mysql://localhost:3306/login";
// MySQL配置时的用户名
String user = "root";
// MySQL配置时的密码
String password = "1234";
// 加载驱动程序
Class.forName(driver);
// 连续数据库
Connection conn = DriverManager.getConnection(url, user, password);
/*Class.forName("com.mysql.jdbc.Driver");
String urll = "jdbc:mysql://localhost/login?user=root&password=1234";
Connection cnn = DriverManager.getConnection(urll);*/
return conn;
}
}
数据库交互 -- UserDAO.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import db.DBLib;
import usermanager.User;
public class UserDAO {
public boolean isUserOk(User user) throws ClassNotFoundException, SQLException{
String sqlString = "select count(*) from login.User where name = ? and pwd = ?";
Connection conn = DBLib.getConn();
PreparedStatement ps =
conn.prepareStatement(sqlString);
ps.setString(1, user.getName());
ps.setString(2, user.getPwd());
ResultSet rs = ps.executeQuery();
rs.next();//开始指向头
int i = rs.getInt(1);
conn.close();//连接是宝贵的资源,不用的时候要关掉
boolean flag = false;
if (i == 1) {
flag = true;
}
return flag;
}
}
servlet -- CheckLogin.java
package web;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
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 dao.UserDAO;
import usermanager.User;
/**
* Servlet implementation class CheckLogin
*/
@WebServlet("/CheckLogin")
public class CheckLogin extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public CheckLogin() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
User user = new User();
user.setName(name);
user.setPwd(pwd);
UserDAO dao = new UserDAO();
PrintWriter out = response.getWriter();
try {
boolean flag = dao.isUserOk(user);
if (flag) {
out.print(1);
}else{
out.print(0);
}
} catch (ClassNotFoundException | SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);//也是执行doGet方法
}
}
jsp页面
Login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
<script type="text/javascript" src="jquery-1.11.1.js"></script>
<script type="text/javascript">
//页面启动之后执行
$(function(){
//jQuery选择元素id用#
$("#btn").click(function(){
if($("#name").val().length == 0){
$("#msg").html("请输入用户名");
return;
}
if($("#pwd").val().length == 0){
$("#msg").html("请输入密码");
return;
}
$.post("CheckLogin",
{"name":$("#name").val(),
"pwd":$("#pwd").val()},
function(data){
//用字符串的方式串
if(data == "0"){
$("#msg").html("用户名密码错误,登陆失败!");
}else{
location.href="welcome.jsp"
}
});
});
});
</script>
</head>
<body>
<form>
用户名:<input type="text" name="name" id="name"/><br/>
密码:<input type="password" name="pwd" id="pwd"/><br/>
<input type="button" value="登录" id="btn">
</form>
<div id="msg"></div>
</body>
</html>
welcome.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
欢迎登陆!
</body>
</html>
javabean -- User.java
package usermanager;
public class User {
private int id;
private String name;
private String pwd;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPwd() {
return pwd;
}
public void setPwd(String pwd) {
this.pwd = pwd;
}
}
数据库连接 -- DBLib.java
package db;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBLib {
public static Connection getConn() throws ClassNotFoundException, SQLException{
//驱动
String driver = "com.mysql.jdbc.Driver";
// URL指向要访问的数据库名,这里为login
String url = "jdbc:mysql://localhost:3306/login";
// MySQL配置时的用户名
String user = "root";
// MySQL配置时的密码
String password = "1234";
// 加载驱动程序
Class.forName(driver);
// 连续数据库
Connection conn = DriverManager.getConnection(url, user, password);
/*Class.forName("com.mysql.jdbc.Driver");
String urll = "jdbc:mysql://localhost/login?user=root&password=1234";
Connection cnn = DriverManager.getConnection(urll);*/
return conn;
}
}
数据库交互 -- UserDAO.java
package dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import db.DBLib;
import usermanager.User;
public class UserDAO {
public boolean isUserOk(User user) throws ClassNotFoundException, SQLException{
String sqlString = "select count(*) from login.User where name = ? and pwd = ?";
Connection conn = DBLib.getConn();
PreparedStatement ps =
conn.prepareStatement(sqlString);
ps.setString(1, user.getName());
ps.setString(2, user.getPwd());
ResultSet rs = ps.executeQuery();
rs.next();//开始指向头
int i = rs.getInt(1);
conn.close();//连接是宝贵的资源,不用的时候要关掉
boolean flag = false;
if (i == 1) {
flag = true;
}
return flag;
}
}
servlet -- CheckLogin.java
package web;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
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 dao.UserDAO;
import usermanager.User;
/**
* Servlet implementation class CheckLogin
*/
@WebServlet("/CheckLogin")
public class CheckLogin extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public CheckLogin() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
String name = request.getParameter("name");
String pwd = request.getParameter("pwd");
User user = new User();
user.setName(name);
user.setPwd(pwd);
UserDAO dao = new UserDAO();
PrintWriter out = response.getWriter();
try {
boolean flag = dao.isUserOk(user);
if (flag) {
out.print(1);
}else{
out.print(0);
}
} catch (ClassNotFoundException | SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);//也是执行doGet方法
}
}
相关文章推荐
- JQuery1——基础($对象,选择器,对象转换)
- MySQL中的integer 数据类型
- MySQL存储过程
- mysql中int、bigint、smallint 和 tinyint的区别与长度
- mysql load data 导出、导入 csv
- source命令执行SQL脚本文件
- JavaScript演示排序算法
- 2015-2016网页设计趋势分析 Web Design of Trends
- MySQL创建用户及权限控制
- MySQL管理数据表
- linux下mysql添加用户
- mysql procedure
- mysql触发器
- jQuery Ajax 跨域调用
- 移动端的长按事件
- jquery教程靠边站,一分钱不花让你免费学会jquery
- JQuery+Strusts1.x无刷新登录
- MySQL 备份和恢复策略
- mac下安装mysql(转载)