import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@SpringBootApplication
@RestController
public class Application {
@Autowired
private UserRepository userRepository;
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@GetMapping("/users")
public List getAllUsers() {
return userRepository.getAllUsers();
}
@GetMapping("/users/{id}")
public User getUserById(@PathVariable("id") Long id) {
return userRepository.getUserById(id);
}
@PostMapping("/users")
public User createUser(@RequestBody User user) {
userRepository.createUser(user);
return user;
}
@PostMapping("/users/{id}")
public User updateUser(@PathVariable("id") Long id, @RequestBody User user) {
user.setId(id);
userRepository.updateUser(user);
return user;
}
@PostMapping("/users/{id}/delete")
public String deleteUser(@PathVariable("id") Long id) {
userRepository.deleteUser(id);
return "User with id " + id + " has been deleted.";
}
} import org.apache.ibatis.annotations.*;
import org.springframework.stereotype.Repository;
import java.util.List;
@Repository
public interface UserRepository {
@Select("SELECT * FROM users")
List getAllUsers();
@Select("SELECT * FROM users WHERE id = #{id}")
User getUserById(Long id);
@Insert("INSERT INTO users(username, email) VALUES(#{username}, #{email})")
@Options(useGeneratedKeys = true, keyProperty = "id")
void createUser(User user);
@Update("UPDATE users SET username = #{username}, email = #{email} WHERE id = #{id}")
void updateUser(User user);
@Delete("DELETE FROM users WHERE id = #{id}")
void deleteUser(Long id);
} 以上示例演示了如何使用SpringBoot整合MyBatis实现数据库的增删改查操作。通过定义Repository接口并使用注解来定义SQL语句,可以方便地进行数据库操作。在SpringBoot启动类中使用@Autowired注解来自动注入Repository实例,实现数据库操作的实现并通过RESTful API进行访问。