这是最简单的使用JSP页面连接MySql数据库实例,代码如下:
注册页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Insert title here</title>
<script>
function check(){
var username = document.getElementById("username").value;
var password = document.getElementById("password").value;
var newword = document.getElementById("newword").value;
if (username==" "){
alert("用户名不能为空");
document.getElementById("username").focus();
return false;
}
if (password==" "){
alert("密码不能为空");
document.getElementById("password").focus();
return false;
}
if (username!=newword){
alert("两次密码不相同,请重新输入");
document.getElementById("newword").focus();
return false;
}
function validate1() {
var flag = addCheck();
if (flag == false)
return false;
return true;
</script>
</head>
<body bgcolor="green">
<center>
<font face="楷体" size="6" color="#000">注册界面</font>
<form action="checkRegister.jsp" method="post" onsubmit="return validate1()">
<table width="300" height="180" border="5" bordercolor="#A0A0A0">
<tr>
<th>用户名:</th>
<td><input type="text" name="username" value="输入16个字符以内" maxlength="16" onfocus="if(this.value == '输入16个字符以内') this.value =''"></td>
</tr>
<tr>
<th>输入密码:</th>
<td><input type="text" name="password" value="输入20个字符以内" maxlength="20" onfocus="if(this.value == '输入20个字符以内') this.value =''"></td>
</tr>
<tr>
<th>确认密码:</th>
<td><input type="text" name="newword" value="请再次输入密码" maxlength="20" onfocus="if(this.value == '请再次输入密码') this.value =''"></td>
</tr>
<tr>
<td colspan="2" align="center"><input type="submit" value="注 册"> <input type="reset" value="重 置"></td>
</tr>
</table>
</form>
</center>
</body>
</html>
检测注册
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<%@page import="java.util.logging.*" %>
<%@page import="java.sql.*" %>
<%@page import="com.mysql.jdbc.Driver" %>
<%@page import="java.util.Date" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String username = new String(request.getParameter("username").getBytes("ISO8859_1"),"utf-8");
String password = new String(request.getParameter("password").getBytes("ISO8859_1"),"utf-8");
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost/userdate?characterEncoding=utf-8";
//将解码后的字节码重新按UTF-8格式编码数据返回给客户端。
String usename = "root";
String psw= "123456";
Connection conn = DriverManager.getConnection(url,usename,psw);
//得到连接
PreparedStatement pStmt = conn.prepareStatement("select * from servlet where username = '" + username + "'");
ResultSet rs = pStmt.executeQuery();
if(rs.next()){
out.println("<script language='javascript'>alert('该用户已存在,请重新注册!');window.location.href='register.jsp';</script>");
}else{
PreparedStatement tmt = conn.prepareStatement("Insert into servlet values('" + username + "','" + password + "')");
int rst = tmt.executeUpdate();
if (rst != 0){
out.println("<script language='javascript'>alert('用户注册成功!');window.location.href='login.jsp';</script>");
}else{
out.println("<script language='javascript'>alert('用户注册失败!');window.location.href='register.jsp';</script>");
}
}
%>
</body>
</html>
登陆页面
<%@ page language="java" contentType="text/html; charset=utf-8"
pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body bgcolor="green">
<center>
<font face="楷体" size="6" color="#000"><p> 登录界面 </p></font>
<hr>
<%String str=(String)request.getAttribute("msg");
if(str!=null){
out.println(str);}
%>
<form action="validate.jsp" method="post">
用户名 <input type="text" name="username" value="输入您的用户名" maxlength="16" onfocus=if(this.value=="输入您的用户名")this.value=""><br><br>
密 码 <input type="password" name="password" maxlength="16"><br><br>
<input type="submit" value="登录">
<input type="reset" value="重置">
<input type="button" onclick="window.open('register.jsp')" value=注册>
<br><br>
</form>
</center>
</body>
</html>
检测登陆
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@page import="java.util.logging.*" %>
<%@page import="java.sql.*" %>
<%@page import="com.mysql.jdbc.Driver" %>
<%@page import="java.util.Date" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String username=new String(request.getParameter("username").getBytes("ISO8859_1"),"utf-8");
String password=new String(request.getParameter("password").getBytes("ISO8859_1"),"utf-8");
String driverClass="com.mysql.jdbc.Driver";
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost/userdate?characterEncoding=utf-8";
String usename = "root";
String psw= "123456";
Connection conn = DriverManager.getConnection(url, usename, psw);
if(conn != null){
String sql = "select * from servlet where username='"+username+"' and password='"+ password + "'";
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
if(rs.next()){
out.println("<script language='javascript'>alert('登录成功!');window.location.href='welcom.jsp';</script>");
}else{
out.println("<script language='javascript'>alert('登录失败!');window.location.href='Login.jsp';</script>");
//密码不对返回到登陆
}
}
%>
</body>
</html>
欢迎页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<p>欢迎</p>
<a herf=login.jsp>重新登录</a>
</body>
</html>