spring boot3 동적 주입으로 버전 관리시 DB 연동 정보 숨기기 서버가 DB와 연결되는 부분에서의 위험 기존 RDS 연결 방식 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver //application.yml에 데이터 베이스와 연결하는 인증 정보가 그대로 노출됨 url: example.db.net username: ohseungyun password: passwordString jpa: database: mysql generate-ddl: true show-sql: true 위험! 깃 허브를 통해 소스코드를 관리하는 등 버전 관리 로그를 통해 소스코드가 유출되면 데이터 베이스가 직접 공격 받을 수 있다 위험! 데이터 베이스 관리자 이외에도 버전 관리에 동참하는 모든 사람은 권한과 관계없이 데이터 베이스 .. 2022. 12. 2. HTTP 메시지 컨버터 HTTP 메시지 컨버터 뷰 템플릿으로 HTML을 생성해서 응답하는 것이 아니라, HTTP API처럼 JSON 데이터를 HTTP 메시지 바디에서 직접 읽거나 쓰는 경우 HTTP 메시지 컨버터를 사용하면 편리하다. 앞선 포스팅에서 Controller 계층에서 HTTP Message body 데이터 조회와 응답에서 모두 HTTP 메시지 컨버터가 실행된다. JSON 포스트도 읽어보면 도움이 된다. JSON 통신의 Serialize & Deserialize 과정 처리를 해주는 기능이라고 생각하면 된다. 스프링 MVC는 다음의 경우에 HTTP 메시지 컨버터를 적용한다 HTTP 요청데이터 읽기: @RequestBody , HttpEntity(RequestEntity) 사용시 실행 HTTP 응답데이터 생성: @Resp.. 2022. 8. 22. Spring에서 json 통신을 다루기 ResponseEntity, @ResponseBody ResponseEntity , @ResponseBody Spring에서 json 통신을 다루는 두가지 방법이 있다. 1. ResponseEntity 클래스 사용 2. @ResponseBody 에너테이션 사용 응답에 관련해서 설명하면서 요청도 부연 설명 하겠다. @ResponseBody @RequestMapping(value = "/message") @ResponseBody public Message get() { return new Message(penguinCounter.incrementAndGet() + " penguin!"); } 클래스에 @RestController를 붙이면 내부 메서드들에게 모두 @ResponseBody가 적용된다. JAVA 객체나 String을 HttpMessageConvert.. 2022. 1. 17. 이전 1 다음