发表于: 2017-12-06 00:02:17
2 678
今天完成的事:
1. 了解了什么是DAO
DAO就是Data Access Object,就是数据库的操作类,封装了对数据库的数据增删改查的方法。而JDBCTemplate是Spring对jdbc的封装。
2. 配置数据源的方法
<bean id="datasource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
<property name="url" value="jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=utf-8"/>
<property name="username" value="root"/>
<property name="password" value="root" />
</bean>
这里是通过beansXML文件配置的,工程结构如下图:
3、从网上查询了jdbcTemplate的主要方法
(1)execute方法:可以用于执行任何SQL语句,一般用于执行DDL语句;
(2)update方法及batchUpdate方法:update方法用于执行新增、修改、删除等语句;(3)batchUpdate方法用于执行批处理相关语句;
(4)query方法及queryForXXX方法:用于执行查询相关语句;
(5)call方法:用于执行存储过程、函数相关语句。
其中,主要还是update和query、queryforObject的方法,比如:
① 插入:
@Test
public void testInsert() {
String sql = "insert into enrollment(id,name) values (?,?)”;
jdbcTemplate.update(sql, "2”,"张三");
}
② 更新
@Test
public void testUpdate() {
String sql = "update enrollment set name=? ,student_no=? where id=?";
jdbcTemplate.update(sql, "李四","JS-888",1);
}
③ 删除
@Test
public void testDelete() {
String sql = "delete from enrollment where id=?";
jdbcTemplate.update(sql, 1);
④ 查询
@Test//查询记录数,最简单
public void testCount() {
String sql = "select count(id) from Enrollment";
Integer count = jdbcTemplate.queryForObject(sql, Integer.class);
System.out.println(count);
}
@Test//查询单条数据,返回值类型为所查的表对应的实体类型est
public void testQueryForObject() {
String sql = "select * from Enrollment where id=?";
RowMapper<Enrollment> rowMapper = new BeanPropertyRowMapper<>(Enrollment.class);
Enrollment e = jdbcTemplate.queryForObject(sql, rowMapper, 1);
System.out.println(e);
}
遇到的困难:
不知道如何构建一个Spring工程,开始时建错了,建了一个web工程,如下:
查阅资料后,才知道要建java project类型的,下载了相关的jar包。配置了Beans.xml文件。感觉连接数据库还是不知如何下手。
明天计划:
争取成功用jdbcTemplate模板操作数据库,mybatis之前没用过,需要学习下它的使用以及和jdbcTemplate有什么不同。
收获:
1. 了解了DAO、jdbcTemplate的概念,熟悉了jdbcTemplate模板的几个主要方法。
2. 知道了如何在beans.xml中配置数据源。
评论