初次结束jsp,好多东西都不懂,不过马马虎虎将实验完成,尽管花的时间有点长,但也是学到了基础,以下作为学习笔记。
1.login.jsp
这里是主页界面,只是一些简单的html文档。
用户登录
用户名 | |
密 码 |
<%@ 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=UTF-8">
<title>用户登录</title>
</head>
<body>
<div style="border:1px solid silver;width:250px;height:200px;margin:50px auto;text-align:center;">
<form action="loginprogress.jsp" method ="post">
<table>
<tr>
<td>用户名</td>
<td><input type="text" name="username" style="width:150px;"/></td>
</tr>
<tr>
<td>密 码</td>
<td><input type="password" name="psw" style="width:150px;"/></td>
</tr>
</table>
<br/><br/><br/>
<input type="submit" name="submit" value="登录"/>
<input type="reset" name="reset" value="重置"/>
</form>
</div>
</body>
</html>
2.
此处是登录验证处。
<%@ page import= "cn.hpu.edu.LoginService"%>
<%@ 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=UTF-8">
<title>Insert title here</title>
</head>
<body>
<%
String name = request.getParameter("username");
String pass = request.getParameter("psw");
LoginService ls = new LoginService();
boolean flag = ls.login(name, pass);
if(flag){
System.out.print("<h3>恭喜登陆成功</h3>");
out.write("<h3>恭喜登陆成功</h3>");
}else{
System.out.print("<h3>对不起,输入错误</h3>");
out.write("<h3>对不起,输入错误</h3>");
}
%>
</body>
</html>
注意:这个页面用到的自定义的java(数据库访问)类,需要在本页头部到时类的所在包.类名,否则找不到,提示错误
3.LoginService.java
package cn.hpu.edu;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class LoginService {
public boolean login(String username, String password)
{
boolean flag = false;
/*if(username.equals("sandy") && password.equals("123"))
{
flag = true;
}*/
//数据库连接对象
Connection conn = null;
//Statement对象
Statement st = null;
//结果集对象
ResultSet rs = null;
//驱动
String driver = "com.mysql.jdbc.Driver";
//连接数据库的URL
String url = "jdbc:mysql://localhost/jsp_db?user=root&password=guo941102";
//发送给数据库的SQL语句
String sql = "select * from users where user='"+username+"' and pass='"+password+"'";
try
{
//加载和注册驱动
Class.forName(driver);
//获得数据库连接
conn = DriverManager.getConnection(url);
//获得Statement对象
st = conn.createStatement();
//执行SQL语句,返回结果集
rs = st.executeQuery(sql);
//判断是否有数据,若有,返回true
if(rs.next())
{
flag = true;
}
//关闭ResultSet对象
rs.close();
//关闭Statement对象
st.close();
//关闭connection对象
conn.close();
}catch(Exception ex)
{
ex.printStackTrace();
}
return flag;
}
public static void main(String[] args) {
LoginService ls = new LoginService();
boolean flag = ls.login("playnet", "ddfdf");
System.out.println("flag="+flag);
}
}
对于这个类,需要加载数据库访问驱动,需要将驱动放到WEN-INF->lib中网上自行下载