快速搭建springboot框架
选择springboot版本和对应依赖https://start.spring.io/
下载demo文件,只保留src和pom.xml文件
配置数据库连接application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=GMT%2B8&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=123
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
entity:实体类,与数据库实体一一对应
User.java
package com.example.demo.entity;
import lombok.Data;
/**
* @author pengyang
* @date 2022-06-30 14:37
*/
//使用Data注解简化生成getter和setter方法
@Data
public class User {
private Integer id;
private String name;
private String address;
private Integer age;
private String sex;
private String phone;
}
mapper:后台接口,数据库数据交互
UserMapper.java
package com.example.demo.mapper;
import com.example.demo.entity.User;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
public interface UserMapper {
@Select("select * from user")
List<User> findAll();
@Update("INSERT INTO `user` (`name`, `address`, `age`, `sex`, `phone`) VALUES (#{name}, #{address}, #{age}, " +
"#{sex}, #{phone});")
@Transactional
void save(User user);
@Update("update user set name=#{name}, address=#{address}, age=#{age},sex=#{sex}, phone=#{phone} where id=#{id}")
@Transactional
void updateById(User user);
@Delete("delete from user where id = #{id}")
void deleteById(Long id);
}
controller:对外(前端)提供接口,进行数据交互,例如get,post请求
UserController.java
package com.example.demo.controller;
import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
import org.springframework.web.bind.annotation.*;
import javax.annotation.Resource;
import java.util.List;
/**
* @author pengyang
* @date 2022-06-30 14:47
*/
@RestController
@RequestMapping("/user")
public class UserController {
//引入UserMapper接口
@Resource
UserMapper userMapper;
@GetMapping
public List<User> getUser() {
return userMapper.findAll();
}
@PostMapping
public String addUser(@RequestBody User user){
userMapper.save(user);
return "success";
}
@PutMapping
public String updateUser(@RequestBody User user) {
userMapper.updateById(user);
return "success";
}
@DeleteMapping("/{id}")
public String deleteUser(@PathVariable("id") Long id) {
userMapper.deleteById(id);
return "success";
}
}