发表于: 2017-12-07 23:57:52
1 622
今天完成的事:
1、学习log4j;
2、总结任务1,把JdbcTemplate、Mybatis、Mybatis-Spring重新写了一遍。
遇到的困难:
已经跑通的例子,重新写还是会出错;
1、没有提示,jar包并不少,但是我从其他例子上复制过来全名时就是对的,很迷。
2、报错,第一次写的时候就有过这个错误,.beans.factory.BeanCreationException:,肯定是Bean创建factory时的错误,总共就那几行,仔细看,。
原因是将映射文件改为和dao同名时这里没改对,
3、Mybatis出现空指针异常,只有这一个信息;
原因:出现空指针异常,sqlSession声明了两次,导致成员变量和before中的sqlseseion不是 同一个对象。
明天计划:
1、总结任务1,包括spring、远程连接数据库、maven、linus的基本命令。
收获:
收获主要是写这三个例子的一些注意事项,有的是犯过两次的错误,总结如下:
1、JdbcTemplate Dao的实现类继承JdbcDaoSupport,否则在bean配置时无法出现dataSource属性;
2、JdbcTemplate中增删改都是用的JdbcTemplate接口中的update方法;
3、getbean获取对象的时候注意需要类型强转;
4、mapper的namespace指向要映射的类、接口,容易忘记namespace属性;
5、模糊查询, LIKE concat('%', #{ooo}, '%'),concat()是字符串拼接函数;
6、$与#的区别:#是占位符,$是字符串拼接符,字符串拼接符以硬编码的方式将参数掺入sql, 引起sql注入和未使用预编码效率降低;
7、Mybatis对dao的自动查询,底层是selectOne()或者是selectList(),查询出现Map时会默认 为selectOne(),出现错误;
禅道:
http://task.ptteng.com/zentao/my-task.html
评论