본문 바로가기
반응형

springboot16

[SpringBoot] ElasticSearch Log Level 설정하기 ElasticSearch Log Level 설정하기 Spring Boot에서 Elasticsearch의 Bulk Insert 로그를 비활성화하려면 application.yml 파일에 다음과 같이 설정을 추가할 수 있습니다. application.yml logging: level: org.elasticsearch.action.bulk: ERROR 이 설정은 org.elasticsearch.action.bulk 패키지의 로그 레벨을 ERROR로 변경합니다. Bulk Insert 로그 이외에도 Elasticsearch에서 다른 로그를 제어하려면, 다른 패키지의 로그 레벨을 추가로 설정하면 됩니다. Logback 또한, Logback을 사용하는 경우, logback-spring.xml 파일을 만들고 다음과 같이.. 2023. 3. 14.
[SpringBoot] json 문자열 받아서 model class 에 맵핑하기 여러 클라이언트에서 Spring Boot 로 요청을 보내려고 할 때, Json 만큼 편한건 없는것 같습니다. json 문자열을 보냈을 때 Spring 에서 model class 에 맵핑하는 방법을 정리해 보겠습니다. 1. Single json 아래와 같은 json 문자열이 있을 때 {"name": "bryan", "city": "Seoul", "age": 18, "cars": ["GV80", "X6", "GLE350"]} Java(SpringBoot)에서는 다음과 같이 model class 를 준비합니다. import lombok.Getter; import lombok.Setter; import lombok.ToString; import java.util.List; @Getter @Setter @ToSt.. 2021. 10. 21.
[SpringBoot] Controller 에서 form-data 여러 파일과 json list string 같이 받기 (Converter) Spring Boot Converter PropertyEditor ObjectMapper form-data 로 보내는 데이터를 받을 때 참고할 내용입니다. 아래와 같이 RestController 에 File들과 json list 형식의 텍스트를 보내야 할 때, 보내려고 하는 데이터 form-data 는 넘길 수 있는 type 이 file 과 text 밖에 없습니다. 늘 하던것 처럼 Class 로 Mapping jsonList 를 List 로 바인딩해보겠습니다. 이렇게 바꾸고 요청은 그대로. 실행하면? Caused by: java.lang.IllegalStateException: Cannot convert value of type 'java.lang.String' to required type 'com.h.. 2021. 8. 21.
[SpringBoot] RestApi 만들기 (6) File Upload / Download / List Spring Boot File Upload / Download / Delete / List 1. File Upload file 관련 설정은 src/main/resources/application.yml ( 또는 application.properties ) 에 합니다. spring: servlet: multipart: max-file-size: 10MB max-request-size: 10MB location: d:\\temp\\spring_uploaded_files application.properties 라면 spring.servlet.multipart.max-file-size=10MB 와 같이 쓰면 됩니다. spring.servlet.multipart.max-file-size : 총 파일 사이즈가 설.. 2021. 7. 11.
[SpringBoot] RestApi 만들기 (5.5) jdbcTemplate - Insert, Update, Delete Spring Boot JdbcTemplate NamedParameterJdbcTemplate Insert, Update, Delete 지난 글에서 Post 방식으로 파라메터를 받는 방법도 알아봤었는데요. 지난 글 참고 보통 insert, update, delete 등은 get 방식보다는 post 방식으로 쓰죠. 일단 Controller 에서 post 방식으로 데이터를 받습니다. 더보기 package com.bryan.hello.preword.info.model; import lombok.Getter; import lombok.Setter; import lombok.ToString; @Getter @Setter @ToString public class City { private Integer id; pri.. 2021. 7. 10.
[SpringBoot] RestApi 만들기 (5.4) GetMapping, PostMapping Spring Boot GetMapping PostMapping Table 구조가 아래와 같을때 관련된 파라메터를 받겠습니다. GetMapping @PathVariable @GetMapping("cityAdd/{name}/{countryCode}/{district}/{population}") public Object cityAdd(@PathVariable(value="name") String name , @PathVariable(value="countryCode") String ctCode , @PathVariable(value="district") String district , @PathVariable(value="population") int population) { log.debug("name = .. 2021. 7. 10.
[SpringBoot] RestApi 만들기 (5.3) jdbcTemplate - Select SpringBoot jdbcTemplate NamedParameterJdbcTemplate 지난 시리즈에 이어서, Select 로 리스트 조회까지 했습니다. 이번엔 Select 문에 조건절을 던져서 조회하는걸 해보겠습니다. 이런 쿼리, SELECT * FROM world.city WHERE CountryCode = 'KOR' AND Population > 2000000; 아, 그전에 지금까지 @GetMapping 만 사용했는데 @RequestMapping 을 class 에 붙히도록 소스를 변경했습니다. 여기 참고해주세요. InfoController.java 더보기 package com.bryan.hello.preword.info; import java.util.Date; import java.util.L.. 2021. 7. 8.
[SpringBoot] Controller 에 Route 적용 (RequestMapping) SpringBoot RequestMapping GetMapping 지금까지 method 에 @GetMapping 만 사용했었는데요, 컨트롤러에 따라 Mapping 을 나누어보겠습니다. 시스템이 커지면 관리하기가 수월합니다. 기존 소스 @Slf4j @RestController public class InfoController { private InfoService infoService; @Autowired public InfoController(InfoService infoService) { this.infoService = infoService; } @GetMapping("info/project") public Object projectInfo() { log.debug("start"); Project p.. 2021. 7. 7.
[SpringBoot] RestApi 만들기 (5.2) DBCP - HikariCP Spring Boot DBCP DataSource Connection Pool Hikari Connection Pool DBCP : DataBase Connection Pool 지금은 단순히 DataBase 에 Connection 하기 위해 아래와 같은 설정을 했습니다. application.yml SpringBoot 의 Connection Pool 하면 여러가지가 있는데 그 중 HikariCP 를 선택합니다. 실제 밴치마크한 데이터를 보면 (좌측 그래프) ConnectionCycle : DataSource.getConnection() -> Connection.close() (우측 그래프) StatementCycle : Connection.prepareStatement(), Statement.execut.. 2021. 7. 5.
[SpringBoot] RestApi 만들기 (4) Service 생성 (의존성 주입) @Autowired 지난 포스트에 이어서 service 를 작성하고 있습니다. 시리즈 2021.07.03 - [Java] - [SpringBoot] RestApi 만들기 (1) 프로젝트 생성 2021.07.03 - [Java] - [SpringBoot] RestApi 만들기 (2) JSON 형식 리턴 2021.07.04 - [Java] - [SpringBoot] RestApi 만들기 (3) Log (slf4j+logback) 지금까지 Controller 만 사용했는데, Service 를 만들어서 사용해보겠습니다. 우선 Service class 를 생성합니다. InfoController 와 같은 depth 에 만듭니다. InfoService.java package com.bryan.hello.preword.. 2021. 7. 4.
728x90
반응형