发表于: 2019-11-18 20:06:40
0 1043
任务1, Day 2
Q&A:
1、在 sname 字段上加入索引,可以提升的速度为多少?
A:
【由于数据太少(10条),看不出区别,但从理论上,肯定是有索引更快。】
2、JDK和JRE的区别是什么?
A:
1) JDK(Java Development Kit) 面向的是 Java 的开发者,包含了 JRE ,为开发者提供编译工具以及核心的 jar 包。
2) JRE(Java Runtime Environment) 面向于所有的Java程序使用者,提供运行 Java 的核心 jar 包。
3、Maven 配置截图:
A:
4、如何创建一个 Maven 项目?
A:
正式创建 Maven 项目前,有几个前置步骤需要做:
1)
由于 Maven 在配置时的 jar 包会在网络在线下载,因此有必要创建一个本地仓库:
2)
现在需要通过 Maven 根目录下的 conf/setting.xml 文件,将默认的仓库路径更改:
改为指定路径:
3)
如果遇到本地仓库没有的 jar ,还需要更改网络 jar 的下载服务器,现改为国内镜像服务器:
4)
打开 IDEA 配置指定 Maven 路径和仓库
现在开始正式的创建:
1)
2)
3)
一路 next 最后 finish
4)
点击 Import Changes
5)
最终得到一个经典 Maven 项目
进行测试
1)
配置 pom.xml :
2)
运行代码:
3)结果:
下面一个任务有点麻烦em。。。。。。。。
5)如何通过 JDBC 方式编写 DAO ?
该问题由于代码量较大,因此上传 segmentfault
https://segmentfault.com/a/1190000021045857
6)如何通过 MyBatis 编写 DAO?
该问题由于代码量较大,因此上传 segmentfault
https://segmentfault.com/a/1190000021045944
7)在进行 MyBatis 单元测试时,update 和 add 两项操作总是失败,并且没有错误产生,请教了他人,原因是在执行了 SQL 后我没有进行 commit() 操作
但是在 JDBC 中,我也没有 commit() ,却可以执行。
究其原因,我是这样思考的:
数据库事务需要满足四个条件:
1、原子性(Atomicity):事务中的全部操作在数据库中是不可分割的,要么全部完成,要么全部不执行。
2、一致性(Consistency):几个并行执行的事务,其执行结果必须与按某一顺序 串行执行的结果相一致。
3、隔离性(Isolation):事务的执行不受其他事务的干扰,事务执行的中间结果对其他事务必须是透明的。
4、持久性(Durability):对于任意已提交事务,系统必须保证该事务对数据库的改变不被丢失,即使数据库出现故障。
在进行查询操作时,不存在对于数据库的变更,因此也无需 commit() ,但在“增删改”时,则要保证其原子性,因此在什么时候提交需要根据具体的情况,手动提交时更为稳当的选择,但我在 JDBC 没有进行 commit() ,只是自动提交了而已,可以通过 setAutoCommit(false) 设置关闭自动提交,自己编写具体提交时间。
完成至任务1——18
评论