Spring JDBCTemplate介绍
- (1)JdbcTemplate属于Spring中比较独立的一个模块
- (2)JdbcTemplate是什么?
Spring对数据库的操作在jdbc上面做了深层次的封装
- (3)有什么特点?
》使用spring的注入功能
可以把DataSource注册到JdbcTemplate之中 (spring-jdbc.jar)
》JdbcTemplate 核心处理对象(有对应的增删改查的方法)
update(sql, 实际传递的参数 ); 可以完成增删改
- (4)与原生JDBC,MyBatis区别?
》与MyBatis都是对原生JDBC的封装
》简单的数据库操作使用JdbcTemplate,大型复杂的使用Mybatis
SpringJDBCTemplate的Spring实现
- (1)准备数据库
- (2)依赖配置
- (3)给数据源DriverManagerDataSource设置四大信息
- (4)调用update方法
update(sql, 实际传递的参数 ); 可以完成增删改
pom.xml
<dependency>
<groupId>org.springframeworkgroupId>
<artifactId>spring-jdbcartifactId>
<version>5.2.9.RELEASEversion>
dependency>
<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
<version>5.1.46version>
dependency>
sql
create database springjdbc ;
use springjdbc;
create table `stu` (
`sid` double ,
`sname` varchar (90),
`schoolName` varchar (300),
`score` double
);
insert into `stu` (`sid`, `sname`, `schoolName`, `score`) values('1','赵四','吉大','300');
insert into `stu` (`sid`, `sname`, `schoolName`, `score`) values('17','张三','交大','3000');
insert into `stu` (`sid`, `sname`, `schoolName`, `score`) values('18','熊3','武大','3000');
insert into `stu` (`sid`, `sname`, `schoolName`, `score`) values('19','张飞','交大','3000');
TestJdbcTemplate
public class TestJdbcTemplate {
@Test
public void test01(){
DriverManagerDataSource dataSource= new DriverManagerDataSource();
dataSource.setUrl("jdbc:mysql://localhost:3306/springjdbc");
dataSource.setUsername("root");
dataSource.setPassword("123456");
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
jdbcTemplate.update("insert into stu values(?,?,?,?)",1000,"jack","吉首",100);
}
}
applicationContext.xml
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="url" value="jdbc:mysql://localhost:3306/springjdbc"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
bean>
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<constructor-arg name="dataSource" ref="dataSource"/>
bean>
TestJdbcTemplateSpring
@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration("classpath:applicationContext.xml")
public class TestJdbcTemplateSpring {
@Autowired
JdbcTemplate jdbcTemplate;
@Test
public void test01(){
jdbcTemplate.update("insert into stu values(?,?,?,?)",1000,"rose","吉首",100);
}
@Test
public void test02(){
jdbcTemplate.update("delete from stu where sid = ? ",1000);
}
@Test
public void test03(){
jdbcTemplate.update("update stu set sname = ? where sid= ?","关于",17);
}
}