日期:2014-05-16  浏览次数:20408 次

JSP复习笔记——第10章 连接数据库 之 使用JSP基于数据库完成用户登陆程序
使用JSP基于数据库完成用户登陆程序
使用Statement存在安全问题:SQL注入漏洞
select * from person where name="darkness" and password="wind" or "1"="1"
密码:wind" or "1"="1

Java代码
1.---------------person.sql----------------------  
2.DROP TABLE person ;  
3. 
4.CREATE TABLE person   
5.(  
6.    id varchar(20) not null primary key ,  
7.    name varchar(20) not null ,  
8.    password varchar(20)   
9.) ;  
10. 
11.INSERT INTO person (id,name,password) VALUES ('darkness','wind','ffffff') ;  
12.INSERT INTO person (id,name,password) VALUES ('cloud','sky','wind') ;  
13. 
14.-- 提交事务  
15.commit ; 
---------------person.sql----------------------
DROP TABLE person ;

CREATE TABLE person
(
id varchar(20) not null primary key ,
name varchar(20) not null ,
password varchar(20)
) ;

INSERT INTO person (id,name,password) VALUES ('darkness','wind','ffffff') ;
INSERT INTO person (id,name,password) VALUES ('cloud','sky','wind') ;

-- 提交事务
commit ;


Java代码
1.--------------------login.jsp-------------  
2.<%@page contentType="text/html;charset=gb2312"%>  
3.<html>  
4.<head>  
5.    <title>登陆</title>  
6.</head>  
7.<body>  
8.<center>  
9.    <h1>登陆范例——用户名及密码固定</h1>  
10.    <hr>  
11.    <br>  
12.    <br>  
13.    <form action="login_conf.jsp" method="post">  
14.    <table>  
15.        <tr>  
16.            <td colspan="2">用户登陆</td>  
17.        </tr>  
18.        <tr>  
19.            <td>用户名:</td>  
20.            <td><input type="text" name="uname"></td>  
21.        </tr>  
22.        <tr>  
23.            <td>密&nbsp;&nbsp;码:</td>  
24.            <td><input type="password" name="upassword"></td>  
25.        </tr>  
26.        <tr>  
27.            <td colspan="2">  
28.            <input type="submit" value="登陆">  
29.            <input type="reset" value="重置">  
30.            </td>  
31.        </tr>  
32.    </table>  
33.    </form>  
34.</center>