测试增删改查功能
1.创建实体类:
package com.mc_74120.springbootjdbc.domain;
public class User {
private Integer id;
private String userName;
private String sex;
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
this.userName = userName;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
2.创建表 掠过
3.controller层
@Controller
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping("/addUser")
public String addUser(User user){
try {
userService.addUser(user);
}
catch ( Exception e){
e.printStackTrace();
return "error";
}
return "redirect:/ok";
}
@RequestMapping("/selectUser")
public String selectUser(Model model){
List<User> users=userService.selectUser();
model.addAttribute("userList",users);
return "selectUser";
}
@GetMapping("/preUpdate")
public String preUpdate(Integer id,Model model){
try {
User user= userService.findUserById(id);
model.addAttribute("user",user);
}
catch ( Exception e){
e.printStackTrace();
return "error";
}
return "updateUser";
}
@PostMapping("/updateUser")
public String updateUser(User user){
userService.updateUser(user);
return "redirect:/ok";
}
@GetMapping("/deleteUser")
public String deleteUser(Integer id){
try {
userService.deleteUser(id);
}
catch ( Exception e){
e.printStackTrace();
return "error";
}
return "redirect:/ok";
}
}
4.service层:
package com.mc_74120.springbootjdbc.service;
import com.mc_74120.springbootjdbc.domain.User;
import java.util.List;
public interface UserService {
void addUser(User user);
List<User> selectUser();
User findUserById(Integer id);
void updateUser(User user);
void deleteUser(Integer id);
}
package com.mc_74120.springbootjdbc.dao.Impl;
import com.mc_74120.springbootjdbc.dao.UserDao;
import com.mc_74120.springbootjdbc.domain.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
@Repository
public class UserDaoImpl implements UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
public void InsertUser(User user) {
String sql = "insert into user(userName,sex) value(?,?)";
jdbcTemplate.update(sql, user.getUserName(), user.getSex());
}
@Override
public List<User> selectUser() {
String sql = "select * from user";
List<User> users = jdbcTemplate.query(sql, new RowMapper<User>() {
@Override
public User mapRow(ResultSet resultSet, int i) throws SQLException {
String userName= resultSet.getString("userName");
String sex=resultSet.getString("sex");
Integer id=resultSet.getInt("id");
User user=new User();
user.setId(id);
user.setSex(sex);
user.setUserName(userName);
return user;
}
});
return users;
}
@Override
public User findUserById(Integer id) {
String sql="select * from user where id=?";
User user=new User();
Object[] objs=new Object[]{id};
jdbcTemplate.query(sql,objs, new RowCallbackHandler() {
@Override
public void processRow(ResultSet resultSet) throws SQLException {
user.setId(resultSet.getInt("id"));
user.setUserName(resultSet.getString("userName"));
user.setSex(resultSet.getString("sex"));
}
});
return user;
}
@Override
public void updateUser(User user) {
String sql="update user set sex=?,userName=? where id=?";
jdbcTemplate.update(sql,user.getSex(),user.getUserName(),user.getId());
}
@Override
public void deleteUser(Integer id) {
String sql="delete from user where Id=?";
jdbcTemplate.update(sql,id);
}
}
5.dao层
package com.mc_74120.springbootjdbc.dao;
import com.mc_74120.springbootjdbc.domain.User;
import org.springframework.stereotype.Repository;
import java.util.List;
public interface UserDao {
void InsertUser(User user);
List<User> selectUser();
User findUserById(Integer id);
void updateUser(User user);
void deleteUser(Integer id);
}
package com.mc_74120.springbootjdbc.dao.Impl;
import com.mc_74120.springbootjdbc.dao.UserDao;
import com.mc_74120.springbootjdbc.domain.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.core.RowCallbackHandler;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.stereotype.Repository;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;
@Repository
public class UserDaoImpl implements UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
@Override
public void InsertUser(User user) {
String sql = "insert into user(userName,sex) value(?,?)";
jdbcTemplate.update(sql, user.getUserName(), user.getSex());
}
@Override
public List<User> selectUser() {
String sql = "select * from user";
List<User> users = jdbcTemplate.query(sql, new RowMapper<User>() {
@Override
public User mapRow(ResultSet resultSet, int i) throws SQLException {
String userName= resultSet.getString("userName");
String sex=resultSet.getString("sex");
Integer id=resultSet.getInt("id");
User user=new User();
user.setId(id);
user.setSex(sex);
user.setUserName(userName);
return user;
}
});
return users;
}
@Override
public User findUserById(Integer id) {
String sql="select * from user where id=?";
User user=new User();
Object[] objs=new Object[]{id};
jdbcTemplate.query(sql,objs, new RowCallbackHandler() {
@Override
public void processRow(ResultSet resultSet) throws SQLException {
user.setId(resultSet.getInt("id"));
user.setUserName(resultSet.getString("userName"));
user.setSex(resultSet.getString("sex"));
}
});
return user;
}
@Override
public void updateUser(User user) {
String sql="update user set sex=?,userName=? where id=?";
jdbcTemplate.update(sql,user.getSex(),user.getUserName(),user.getId());
}
@Override
public void deleteUser(Integer id) {
String sql="delete from user where Id=?";
jdbcTemplate.update(sql,id);
}
}