发表于: 2018-01-13 14:59:39
2 774
师兄好!
周五(1/12)因为工作到很晚,后来脑子也动不了了,没有进行任务学习。
这篇日报是补1/12那份的,1/13的日报我晚上会写好
■今天做了什么
1.Dao是干什么的
Dao是用来连接数据库的,所有和数据库增删改查的事情,都应该在Dao里面进行
实际要用数据库里面的数据去做什么,如何加工数据,处理数据,要在业务层去做,一般在spring里面会命名为service类
2.为什么要把数据库相关的放在Dao里面
因为当业务逻辑和数据库的读取粘连在一起的时候,
业务逻辑脉络会相当不清晰,修改也会变得很麻烦。
同时,对于具体的业务来是,不需要知道如何链接DB,指挥Dao去做就好。
把连接数据库的工作都放到Dao里面,方便了数据库读取处理的管理,一个表对应一个Dao,
一个sevice里面可以调用很多Dao
3.为什么Dao要写接口和实现
假定一个软件是需要用很长时间,那么里面具体如何访问数据库的方式会发生改变,
所以如果先写好接口,service里面调用接口而不是调用实现类。
那么当当业务发生变化的时候,就可以无缝切换实现类。
要写好的接口,需要非常好的抽象技术功底,
此外实际业务里面,切换实现类的情况也是比较少的
现在大部分做法是先写实现类,然后在实现类里提取其中的共性,抽象成接口,
有一点为接口而接口的感觉,并没有真的体现接口开发的意义
(需要需要进一步阅读书籍或者文章学习)
4.在pom里面配置spring的依赖,写一个例子程序
4.1在maven里面配置一下jar包的依赖
org.springframework.core--spring的核心包
org.springframework.aop--spring的事务切面相关的包
org.springframework.aspects--方便的将aop的功能集成进IDE中
org.springframework.beans--springIoC依赖注入的基础实现包,生成bean的关键
org.springframework.context--ApplicationContext需要用到
org.springframework.context.support--ApplicationContext一些拓展功能需要用到
org.springframework.jdbc--连接数据库需要的包
org.springframework.tx--数据库控制trasction相关
5.用spring的jdbcTemplate写dao的接口及其实现类
5.0 整个project的结构
5.1 Dao的基本类
5.2 为表student建模型
5.3 单表专用的dao
5.4 单表专用的dao的实现类
5.5 为了使用SpringIoC,配置ApplicationContext文件
5.6 写测试类
■明天要做什么
1.spring和mybatis结合起来,写例子程序
2.思考为什么mybatis不需要实现类
3.用junit把测试类写好
4.阅读师兄给的关于三层模型的文章
5.查看日志,并转成Debug模式,练习调试,学会查看单步执行时的变量值。
■遇到的问题
1.在运行spring的时候,遇到了以下错误
通过网上查询,才知道是jar的版本有问题
idea在我第一次创建maven项目的时候,自动给我加了slf4j,但是版本很老,我查了一下spring5.0用的是slf4j1.7版本
所以我把依赖改成了以下形式,就可以正常log了
■收获
1.对spring如何封装jdbc有了初步的认识
2.对dao如何分层有了初步的认识
3.对springIoC如何运作,有了初步的认识
4.Idea好用到爆,在我写applicationContext.xml的时候,就可以编译报错
评论