1、 请给MySQLConnBean.java中的类和每个方法都加上注释
package org.easybooks.bookstore.jdbc;
import java.sql.*;
/**
* 此类是用JDBC来与数据库进行连接
*/
public class MySQLConnBean {
private Statement stmt=null;
private Connection conn=null;
private ResultSet rs=null;
/**
* 创建数据库的连接
*/
public void openConn() throws Exception { //通过驱动、MySQL的用户名密码获取连接
Class.forName("com.mysql.jdbc.Driver");//加载mysql的驱动类
String url="jdbc:mysql://localhost:3306/test"; //提供JDBC连接的URL
//连接MySql数据库,用户名是root和密码是123456
String user="root";
String password="123456";
conn=DriverManager.getConnection(url, user, password);//与数据库的连接
}
/**
* 创建一个Statement,执行SQL语句 ,返回一个结果集
*/
public ResultSet execQuery(String sql){ //得到结果集
rs=null;
try{
stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
rs=stmt.executeQuery(sql);
}catch (SQLException e) {
System.err.println("Data.executeQuery:"+e.getMessage());
}
return rs;
}
public void closeStmt(){ //关闭statement
try{
stmt.close();
}catch(SQLException e){
System.err.println("Data.executeQuery:"+e.getMessage());
}
}
/**
* 关闭数据库连接,释放资源
*/
public void closeConn(){//关闭连接
try{
conn.close();
}catch(SQLException e){
System.err.println("Data.executeQuery:"+e.getMessage());
}
}
}
2、 找出项目中存在的缺陷,并给出解决的方案(至少3个,不包含下面那个举例)。说明:这里所说的缺陷不一定都是错误,而是明显需要改进的地方。如:不可以无限输入密码,容易被暴力破解,存在安全隐患。解决方案:密码输入3次错误,关闭浏览器。最好再加上验证码。
1.jsp不能写java代码,不符合MVC思想,而且给程序的扩展维护,人员的分工合作带来很大的困难,美工只懂HTML代码,而大量的java代码在页面,程序的可读性差。
解决方案:在src下面建立一个org.easybook.bookstore.service包,之后创建一个LoginService去完成在validate.jsp里面那些java代码实现的功能,学会使用jsp中的标签。
2.error页面什么都没有,没有任何的提示。Error页面是个空jsp.
解决方案:在error.jsp中写出提示信息<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>My JSP 'error.jsp' starting page</title>
</head>
<body>
你好!您的账号或者密码输入不正确,请重新输入!
<br>
</body>
</html>
3.在login.jsp中<input type="text" name="password"><br> 中type应该是password,这样输入的密码不会被显示出来,比较安全。
解决方案:<input type="password name="password">