201621123042《java程序设计》第十四次作业

1. 本周学习总结

1.1 以你喜欢的方式(思维导图或其他)归纳总结与数据库相关内容。

1240

2. 使用数据库技术改造你的系统

2.1 简述如何使用数据库技术改造你的系统。要建立什么表?截图你的表设计。

2.2 系统中使用到了JDBC中什么关键类?
答:
DriverManager类:用于管理数据库中的所有驱动程序
Connection接口:用于与特定数据库进行连接
PreparedStatement接口:用于动态执行SQL语句
ResultSet接口:用于暂时存放数据库查询操作所获得的结果集

2.3 截图数据库相关模块的关键代码。关键行需要加注释。
图书dao接口
1240

用户dao接口:
1240

判断数据库中是否存在指定表:
1240

创建book表并写入数据:
1240

添加书籍:
1240

移除书籍:
1240

根据ID查询书籍:

1240

2.4 选做:使用JDBCUtil进行改造系统。

参考:实验任务书-题目5

2.5 选做:使用数据库连接池技术改造系统。

参考:实验任务书-题目6
数据连接池参考资料

2.6 选做:使用事务改造系统

参考:实验任务书-题目4
参考:TransactionTest.java

3. 代码量统计

3.1 统计本周完成的代码量

需要将每周的代码统计情况融合到一张表中。

周次总代码量新增代码量总文件数新增文件数
1444422
2213213105
3417204105
5676259177
61071405247
71780709306
81900120355
92335435416
102767432487
113321595579
123601280636
134131531674
144537406736
154957440444

选做:4. 数据库学习指导

1. MySQL数据库基本操作

建立数据库,将自己的姓名、学号作为一条记录插入。(截图,需出现自己的学号、姓名)
在自己建立的数据库上执行常见SQL语句(自己完成,不必截图)

  • 参考:实验任务书-题目1

2. 使用JDBC连接数据库与Statement

2.1 使用Statement操作数据库。完成实验任务书-题目2。截图其中的public static void displayAll()public static int insert(Student stu)的关键代码并出现自己的学号。
2.2 如果要完成根据指定姓名查询学生数据,即完成函数public Student findStuByName(String name),其中的sql语句怎么写?

2.3 你认为使用JDBC操作数据库的套路是什么?

  • 参考:实验任务书-题目2

3. PreparedStatement与参数化查询

3.1 使用PreparedStatement,编写public Student findStuByName(String name),实现根据name进行查找, 。(粘贴关键代码及运行截图,运行截图中需出现学号,比较2.2,说明两种实现的不同)
3.2 如果要实现模糊查找,怎么修改?比如编写public List<Student> findStusByName(String name),可根据name进行模糊匹配,如将姓名中包含zhang的同学都找出来。

  • 参考:实验任务书-题目3

4. 批量更新测试

数据库课程上,需要测试索引对查找的加速作用。然而在几百或几千的数据量上进行操作无法直观地体验到索引的加速作用。现希望编写一个程序,批量插入10万条数据,且该数据中的某些字段的内容可以随机生成。
4.1 截图你的代码(出现学号)、统计运行时间(使用JUint4测试,需要出现时间对比截图)。
4.2 选做:计算插入的速度到底有多快?(以条/秒MB/秒两种方式计算)。并测试你电脑上磁盘的磁盘读写性能,然后进行对比。

5. JDBCUtil与DAO

5.1 完成试验任务-题目5中的第4小点,即编写StudentDao接口及其实现类StudentDaoJDBCImpl
5.2 使用DAO模式访问数据库有什么好处?请使用4.1的代码说明,需对比传统的模式与使用DAO模式访问数据库的代码。
5.3 使用JDBCUtil改造题目3.1。

  • 参考:实验任务书-题目5

6. 事务处理

6.1 使用代码与运行结果证明你确实实现了事务处理功能,并说明事务处理时在编码时需要注意哪些?注意:要比较运行成功与运行失败两种情况下对数据库的更改情况。(粘贴一段你认为比较有价值的代码,出现学号)
6.2 你觉得什么时候需要使用事务处理?

  • 参考:实验任务书-题目4
  • 参考:TransactionTest.java

选做:5.课外阅读

5.1

JDBC(TM) Database Access
5.2

代码结构中Dao,Service,Controller,Util,Model是什么意思,为什么划分
5.3

mysq数据库管理工具navicat基本使用方法

转载于:https://www.cnblogs.com/wwhh/p/8094118.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值