본문 바로가기
728x90

Spring8

[Spring] @RequestParam @RequestParam 쿼리 파라미터를 포함한 url 요청이 있을 때 사용 파라미터 이름으로 바인딩한다. 기본 사용 방법@GetMapping("/member")public String getTest2(@RequestParam String name) { return "Hello. " + name + "!!!";}요청 : http://localhost:9090/api/server/member?name=test응답 : Hello. test!!! required 옵션 사용 방법required = true 일 경우 필수 값이며, false일 경우 필수값이 아니다.defaultValue로 쿼리 파라미터가 없을 때 사용할 디폴트 값을 설정할 수 있다. @GetMapping("/member")public Str.. 2024. 9. 25.
[Spring] @RequestMapping @RequestMapping클라이언트 요청(url)에 맞는 클래스나 메소드와 매핑하기 위해 사용하는 어노테이션이다. @RequestMapping 속성 value : 요청받을 url 설정(value만 주어질 경우 생략 가능) • @RequestMapping(value="/home") ▶ "/home" 요청@RequestMapping(value = "/home")public String home() { return "home"}• @RequestMapping(value={"/home ", "/index"}) ▶ "/home" 과 "/index" 요청@RequestMapping(value = {"/home", "/index"})public String homeIndex() { return "home.. 2024. 9. 18.
[Spring] @Controller, @RestController @Controller• 주로 View를 반환하기 위해 사용Controller가 반환한 뷰의 이름으로부터 View를 렌더링하기 위해 ViewResolver가 사용되고, ViewResolver 설정에 맞게 View를 찾아 렌더링한다. • Data를 반환해야 하는 경우데이터 반환을 위해 @ResponseBody 어노테이션을 활용하여 Controller로 Json 형태로 데이터를 반환할 수 있다.Controller를 통해 객체를 반환할 때 일반적으로 ResponseEntity로 감싸서 반환한다. @RestController @Controller + @ResponseBody 주용도는 Json 형태로 객체 데이터를 반화하는 것REST API 개발할 때 주로 사용하며 객체를 ResponsEntity로 감싸서 반환한다.. 2024. 9. 16.
[Spring] @Transactional 안 되는 경우 내부 호출은 프록시를 거치지 않아 트랜잭션 적용이 안 된다.@Transactional을 사용하면 스프링의 트랜잭션 AOP가 적용되며 기본적으로 프록시 방식의 AOP를 사용한다.@Transactional을 적용하면 프록시 객체가 요청을 먼저 받아 트랜잭션을 처리하고, 실제 객체를 호출하는 방식이다.그러므로 트랜잭셕을 적용하려면 항상 프록시를 통해 대상 객체를 호출해야한다.프록시를 거치지 않고 대상 객체를 직접 호출하면 AOP가 적용되지 않고, 트랜잭션도 적용되지 않는다. @Slf4jpublic class TxService { public void noTx() { log.info("noTx"); printTxInfo(); yesTx(); } @Transa.. 2024. 9. 13.
[Spring] Swagger 적용(Springboot 3.x) Swagger 란?What Is Swagger? Swagger is a set of open-source tools built around the OpenAPI Specification that can help you design, build, document and consume REST APIs.출처 : https://swagger.io/docs/specification/about/Swagger는 REST API를 설계, 구축, 문서화 및 소비하는 데 도움이 되는 OpenAPI 사양을 기반으로 구축된 오픈 소스 도구 세트입니다: 설정 방법• Maven// Maven org.springdoc springdoc-openapi-starter-webmvc-ui 2.3.0 • Gradle// bui.. 2024. 9. 11.
[Spring] ERROR : Unable to find a single main class from the following candidates 원인main()이 두 개여서 발생한 ERROR이다. 해결 방안• Maven     com.example.TestApplication  • Gradle// build.gradle// main 메소드 명시springBoot { mainClassName = 'com.example.TestApplication'}    참고https://stackoverflow.com/questions/23217002/how-do-i-tell-spring-boot-which-main-class-to-use-for-the-executable-jar 2024. 9. 9.
728x90