1.采用jdbcTemplate进行操作开始需要进行配置。在前一篇以save为例进行了演示。这里直接贴上增删改查的所有操作。
2.首先是User表的创建,以及对应实体类的创建
package com.example.demo.damain;
public class User {
private Integer id;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
2.是UserDao类:实现对增删改查方法的实现:这里提供了保存,通过id查询,查询所有,以及删除
package com.example.demo.dao;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.support.rowset.SqlRowSet;
import org.springframework.stereotype.Repository;
import com.example.demo.damain.User;
//dao层,写对数据库的操作
//交给springboot管理的注解
@Repository
public class UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
//根据用户名插入数据
public void save(User use) {
// TODO Auto-generated method stub
jdbcTemplate.update("insert into user (name) values(?)", use.getName());
}
//查询用户通过id
public User search(int id){
SqlRowSet queryForRowSet = jdbcTemplate.queryForRowSet("select * from user where id = ?",id);
User use = new User();
if(queryForRowSet.next()) {
use.setId(queryForRowSet.getInt("id"));
use.setName(queryForRowSet.getString("name"));
}
return use;
}
//查询所有
public List<User> search(){
SqlRowSet queryForRowSet = jdbcTemplate.queryForRowSet("select * from user ");
List<User> list = new ArrayList<User>();
while(queryForRowSet.next()) {
User use = new User();
use.setId(queryForRowSet.getInt("id"));
use.setName(queryForRowSet.getString("name"));
list.add(use);
}
return list;
}
//根据id删除用户
public void delete(int id) {
jdbcTemplate.update("delete from user where id = ?",id);
}
}
3.service层,接口和接口的实现
1.Userservice接口:
package com.example.demo.service;
import java.util.List;
import com.example.demo.damain.User;
public interface Userservice {
//保存
void save(User use);
//查询通过id
User search(int id);
//查询所有
List<User> search();
//删除
void delete(int id);
}
2.UserserviceImpl接口的实现
package com.example.demo.service;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.example.demo.damain.User;
import com.example.demo.dao.UserDao;
@Service
public class UserserviceImpl implements Userservice{
@Autowired
private UserDao dao;
@Override
public void save(User use) {
// TODO Auto-generated method stub
dao.save(use);
}
@Override
public User search(int id) {
// TODO Auto-generated method stub
return dao.search(id);
}
@Override
public List<User> search() {
// TODO Auto-generated method stub
return dao.search();
}
@Override
public void delete(int id) {
// TODO Auto-generated method stub
dao.delete(id);
}
}
4.接着就是控制器类中提供对外的方法的接口:
package com.example.demo.Usercontroller;
import java.util.ArrayList;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import com.example.demo.damain.User;
import com.example.demo.service.UserserviceImpl;
@RestController("/user")
public class UserController {
@Autowired
private UserserviceImpl userservice;
@RequestMapping("/save")
public String save(String name) {
User use = new User();
use.setName(name);
userservice.save(use);
return "save successfully!";
}
@RequestMapping("/search")
public User search(int id) {
User use = new User();
use = userservice.search(id);
return use;
}
@RequestMapping("/searchAll")
public List<User> searchAll(){
List<User> list = new ArrayList<User>();
list = userservice.search();
return list;
}
@RequestMapping("/delete")
public String delete(int id) {
userservice.delete(id);
return "delete successfully";
}
}
5.最后我们进行测试:
1.保存数据:这里使用postman进行测试,可以看到显示成功。我们进入数据库中查看一下
以下是我插入多条
2.查询数据:id为15的用户
3.查询所有的用户:
4.删除id为15的用户:
我们在数据表中看一下是否已删除:
以上!