发表于: 2017-12-18 21:06:03

2 569


今天完成的事情:

今天在师兄的帮助下,理清楚了关于jdbctamplate的知识。

晚上研究了一下关于mybatis的

jdbctemplateobject基本的流程大概如下:

首先在数据库中建立好数据库和表,不需要多复杂,字段一两个,主键一个就好。


建立好数据库,就再建立一个maven项目,在pom文件中搭建好依赖文件,最好搭配junit的依赖文件。这里不知道为什么,我直接准备的依赖文件明明都是对的,偏偏就是喜欢依赖文件缺失。后来师兄帮我重新下载了依赖文件后,问题就解决了。


建立好了依赖以后,先在resource文件夹下创建applicationContext.xml,然后在其中打入配置数据源。这里和上面的依赖一样,建议提前准备可复制代骂存储在txt文件或者特定的项目中,需要的时候直接复制就好。没必要在这些事情上浪费时间去百度。


在maven项目的目录中,先把表的实体类建立在java/model文件夹下,在把实体类的接口建立在相应的dao文件夹下,再对接口建立一个实现类。


在实现类中,选一个方法作为目标,在其中编写好写入数据库的操作。到这里,也没有什么关于spring的代码。


首先,上面的jdbctemplateobject先要在方法上面写好,然后添加@Autowired对将jdbctemplate注入到spring容器中,然后ctrl+shift+t对该方法进行测试。

@ContextConfiguration(locations = {"classpath:applicationContext.xml"})
@RunWith(SpringJUnit4ClassRunner.class)
public class StudentTemTest {
@Autowired
   StudentTem studentTem;

@Test
   public void addStudent() throws Exception {

studentTem.addStudent("老夫子", "男", "1349646", "流星", "ll", "999");
}
}


首先在测试类中添加接口实现的声明,然后对进行注入。并在该测试类上方,添加好applicationContext.xml的预加载路径。

最后,还要接口实现类进行注册,并在applicationContext.xml添加相应pack的命名空间CONTEXT,

<context:component-scan base-package="test"/>

以便Spring容器能够找到并对该类进行实时扫描。

而每一个注入成功的方法或者类,其左边的行数表边都会出现相应的绿色的标记。没有标记则是注入不成功。


明天计划的事情:完成jdbctemplateobject版本的DAO编写。尝试使用mybatis的研究。如果顺利,就尝试着先完成

  • 20.编写单元测试的代码,注意,你也可以尝试一下,先写单元测试的代码,再写接口,再写实现类。
  • 21.查看日志,并转成Debug模式,练习调试,学会查看单步执行时的变量值。



遇到的问题:

1.jdbctemplate的update方法的参数传递。

一开始,是把实体类的每一个字段直接写在了update里,程序没有提示错误,但每次运行都会抛出超出索引范围的异常。后来终于明白异常的意思之后

jdbcTemplateObject.update(Name, Sex, QQ, Graduate, Number, AutoGraph);

我就去搜索了一下,有看了看源码,才明白update的参数传递是通过数组完成的。我按照数组重新写了代码,依旧报错,仔细看看,才发现Object需要new才能够使用。这样程序最后完成了数据库语句的执行。

jdbcTemplateObject.update(sql, new Object[]{Name, Sex, QQ, Graduate, Number, AutoGraph});

2.

收获:

spring的真正运用方法和相关注解的意义与作用。

还有IOC控制反转在代码编写的过程中是如何构筑的。


进度:

任务一17步的jdbctemplate已经完成,剩下就是mybatis了。应该可以在两天之内完成。


返回列表 返回列表
评论

    分享到