码迷,mamicode.com
首页 > 其他好文 > 详细

第五次作业

时间:2016-05-16 17:07:40      阅读:183      评论:0      收藏:0      [点我收藏+]

标签:

一、  找出函数中存在的问题。以下题目均在Lab05项目中完成。

 

1、 请给MySQLConnBean.java中的类和每个方法都加上注释

2、 package org.easybooks.bookstore.jdbc;

3、  

4、 import java.sql.*;

5、  

6、 public class MySQLConnBean {

7、 private Statement stmt=null;

8、 private Connection conn=null;

9、 private ResultSet rs=null;

10、         

11、         

12、          public void openConn() throws Exception {//连接数据库

13、             Class.forName("com.mysql.jdbc.Driver");

14、             String url="jdbc:mysql://localhost:3306/test";

15、             String user="root";

16、             String password="123456";

17、             conn=DriverManager.getConnection(url, user, password);

18、          }

19、         

20、         

21、          public ResultSet execQuery(String sql){///执行sql语句

22、             rs=null;

23、             try{

24、                 stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);

25、                 rs=stmt.executeQuery(sql);

26、             }catch (SQLException e) {

27、                 System.err.println("Data.executeQuery:"+e.getMessage());

28、             }

29、            

30、             return rs;

31、          }

32、         

33、          public void closeStmt(){// 关闭Statement对象

34、             try{

35、                 stmt.close();

36、             }catch(SQLException e){

37、                 System.err.println("Data.executeQuery:"+e.getMessage());

38、             }

39、          }

40、         

41、          public void closeConn(){//关闭数据库连接对象

42、             try{

43、                 conn.close();

44、             }catch(SQLException e){

45、                 System.err.println("Data.executeQuery:"+e.getMessage());

46、             }

47、          }

48、      }

49、       

50、      找出项目中存在的缺陷,并给出解决的方案(至少3个,不包含下面那个举例)。

说明:这里所说的缺陷不一定都是错误,而是明显需要改进的地方。

如:不可以无限输入密码,容易被暴力破解,存在安全隐患。

解决方案:密码输入3次错误,关闭浏览器。最好再加上验证码。

缺陷:用户可以直接登录welcome.jsp页面。

解决方案:将用户名设置到session 属性中,验证用户的sessionid是否为空。

缺陷:错误页面没有做任何处理

解决方案:设置错误页面的相应处理,跳转回登录页面。

缺陷:没有对输入数据是否为空的验证

解决方案:增加输入数据为空的操作

二、 请按要求对下面的Java代码进行测试。代码的功能是:用折半查找法在元素呈升序排列的数组中查找值为key的元素。 

 

(1)   要求采用基本路径法给出程序控制流图;

       

 

 

(2)   算出环路复杂性

 

16-14+2=4

 

(3)   给出所有的独立路径,以及对应的测试用例和预期结果

   路径1:1-2-3-13-14

测试用例: 满足low>hign 的用例(array[]=3,2,1  key=1)     预期结果:将跳出while语句

 

路径2:1-2-3-4-5-6-7-12-13-14

测试用例:满足 key==array[mid] 的用例 (array[]=1,2,3  key=2)    预期结果:将执行5.6

 

路径3:1-2-3-4-5-8-9-12-13-14

测试用例:满足 key<array[mid] 的用例  (array[]=1,2,3  key=1)   预期结果:将跳出8.9语句

 

路径4:1-2-3-4-5-10-11-12-13-14

测试用例:满足 key>array[mid] 的用例 (array[]=1,2,3  key=2)    预期结果:将跳出10.11语句

 

第五次作业

标签:

原文地址:http://www.cnblogs.com/guan0714/p/5498492.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!