SpringBoot의 Scaffold 도구를 만들어 보았습니다.
11662 단어 SpringBootscaffold
소개
Rails와 Laravel에는 Scaffold 명령이 있지만 SpringBoot에는 없을 것 같았기 때문에 스스로 만들어 보았습니다.
이 도구로 작성되는 것은 RestController, Service, Repository, Model입니다.
준비
여기 에서 리포지토리를 다운로드합니다.
사용법
sbcui -p com.example.demo -c "User[id:Long,name:String]"
-c
의 클래스 정보는 더블 쿼트로 둘러싸는 것을 잊지 않고!실행 후, 다음과 같은 파일이 작성됩니다.
domain/model/User.java
@Entity
@Table
@Getter
@Setter
@EqualsAndHashCode(of = { "id" })
public class User {
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Id
@Column
private Long id;
@Column
private String name;
}
domain/repository/UserRepository.java
@Repository
public interface UserRepository extends JpaRepository<User, Long> {
}
domain/service/UserService.java
@Service
public class UserService {
@Autowired
private UserRepository userRepository;
public List<User> findAll(){
return userRepository.findAll();
}
public User find(Long id){
return userRepository.findById(id).orElse(null);
}
public User save(User entity){
return userRepository.save(entity);
}
public void delete(User entity){
userRepository.delete(entity);
}
}
app/controller/UserController.java
@RestController
@RequestMapping("user")
public class UserController {
@Autowired
private UserService userService;
@RequestMapping(method = RequestMethod.GET)
public List<User> findAll() {
return userService.findAll();
}
@RequestMapping(method = RequestMethod.GET, value = "{id}")
public User find(@PathVariable Long id) {
return userService.find(id);
}
@RequestMapping(method = RequestMethod.POST)
public ResponseEntity<String> create(@Validated @RequestBody User input) {
userService.save(input);
return ResponseEntity.ok().build();
}
@RequestMapping(method = RequestMethod.PUT, value = "{id}")
public ResponseEntity<String> update(@PathVariable Long id,
@Validated @RequestBody User input) {
User entity = userService.find(id);
if (Objects.isNull(entity)) {
return ResponseEntity.badRequest().build();
}
userService.save(input);
return ResponseEntity.ok().build();
}
@RequestMapping(method = RequestMethod.DELETE, value = "{id}")
public ResponseEntity<String> delete(@PathVariable Long id) {
User entity = userService.find(id);
if (Objects.isNull(entity)) {
return ResponseEntity.badRequest().build();
}
userService.delete(entity);
return ResponseEntity.ok().build();
}
}
결론
매번 수동으로 1세트 만드는 것이 번거로웠기 때문에, 이 툴을 사용해 효율화할 수 있을까.
원한다면 꼭 사용해보십시오.
Reference
이 문제에 관하여(SpringBoot의 Scaffold 도구를 만들어 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/mr-hisa-child/items/2e5b5355254c547fb160
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(SpringBoot의 Scaffold 도구를 만들어 보았습니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/mr-hisa-child/items/2e5b5355254c547fb160텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)