一、Jdbc概念与准备
1、什么是JdbcTemplate
Spring对JDBC进行封装,使用JdbcTemplate方便实现对数据库的操作。
2、准备工作
- 导入相关依赖
- 在spring配置文件中配置数据库连接池
<bean id="dataSource" class="com.alibaba.druid.pool.DruidDataSource"
destroy-method="close">
<property name="url" value="jdbc:mysql:///user_db" />
<property name="username" value="root" />
<property name="password" value="root" />
<property name="driverClassName" value="com.mysql.jdbc.Driver" />
</bean>
- 配置JdbcTemplate对象,注入DataSource
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
</bean>
- 创建Service类,创建dao类,在dao类注入JdbcTemplate对象
*配置文件
<context:component-scan base-package="com.atguigu"/>
- Service
@Service
public class BookService{
//注入dao
@Autuwired
private BookDao bookDao;
}
- Repository
@Repository
public class BookDaoImpl implements BookDao{
//注入JdbcTemplate
@Autowired
private JdbcTemplate jdbcTemplate;
}
实体类
public class User{
private String userId;
private String username;
private String ustatus;
//省略get()&set()&toString()方法...
}
二、JdbcTemplate操作数据库
1、添加操作
- 编写service与dao
(1)在dao进行数据库操作
(2)调用JdbcTemplate对象里面的update方法实现操作
- dao
@Repository
public class UserDaoImpl{
public void addBook(Book book){
String sql = "insert into Book values(?,?,?);
Object[] args = {
book.getUserId(),book.getUsername(),book.getUstatus()};
int insert = jdbcTemplate.update(sql,args);
System.out.println(insert);
}
}
- service
@Service
public class BookService(){
public void addBook(Book book){
bookDao.addBook(book)
}
}
- 编写测试类
public class TestDemo{
@Test
public void testJdbcTemplate(){
ApplicationContext context = new ClassPathXmlApplicationContext("bean.xml");
BookService service = context.getBean("bookService",BookService.class);
Book book = new Book()</