본문 바로가기
반응형

Java28

[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 만들기 (5.1) MySQL + JDBC Template Spring JDBC 사용 namedParameterJdbcTemplate MySQL 연동하기 처음엔 Mybatis 를 사용하려고 했는데, jdbcTemplate 을 사용하려고 합니다. 이유는 여기 참고 하시고요~ 이전에 추가했던 mybatis dependency를 빼야겠네요. implementation 'org.springframework.boot:spring-boot-starter-jdbc' 추가 gradle refresh 1. DataBase 준비 테스트할 db가 없다면 https://dev.mysql.com/doc/index-other.html 위 사이트에서 Example Databases 중에 하나를 다운로드 받습니다. 다운로드 후 압축을 풀면 world.sql 파일이 있습니다. 스크립트 파일을.. 2021. 7. 4.
Eclipse 에 groovy 설치 하기 먼저 eclipse 버전을 확인하고 4.20.0 이네요. 그리고 아래 groovy-eclipse git 사이트에서 release 정보를 확인하고 링크를 복사합니다. https://github.com/groovy/groovy-eclipse/wiki#releases groovy/groovy-eclipse Eclipse Groovy Development Tools. Contribute to groovy/groovy-eclipse development by creating an account on GitHub. github.com 이클립스의 Help > Install New Software 를 누릅니다. 위에서 복사한 url 을 Location 에 붙혀넣기 하고 Add 합니다. 체크 다 하고 Next 를 눌러서.. 2021. 7. 4.
[SpringBoot] MyBatis 보다 Spring JDBC 를 사용해야 하는 이유 정리가 잘 된 글이 있어 원본 글 펌합니다. (링크 페이지가 사라질까봐 ㅎㅎ) MyBatis 대비 Spring JDBC의 장점 아래와 같은 이유로 Spring JDBC는 MyBatis와 비교해서 학습 비용은 낮고 생산성은 높습니다. 초기 설정이 단순합니다. 쿼리 결과를 변환하는 구성요소(RowMapper)가 인터페이스로 정의되어 Java 컴파일러의 장점을 활용할 수 있습니다. SQL 쿼리를 Groovy 파일 안에 선언하면 Java 컴파일러의 장점을 활용할 수 있습니다. 간단한 ORMapping 기능을 제공합니다. Collection 파라미터를 더 편하게 사용할 수 있습니다. MyBatis의 일부 기능들은 단순히 쿼리를 실행하기만을 원하는 사람에게는 불필요하고 디버깅을 어렵게 합니다. 세션관리, batch.. 2021. 7. 4.
[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.
[SpringBoot] RestApi 만들기 (3) Log (slf4j+logback) SpringBoot slf4j + Logback slf4j 와 logback 에 대한 개념은 이전 글에서 확인하시고요. 2021.07.03 - [Java] - [SLF4J] slf4j 알고가기 + Logback 이 글에서는 실제 spring boot project 에 적용해서 테스트 해보겠습니다. 이전 글에서 진행한 프로젝트의 연속입니다. 2021.07.03 - [Java] - [SpringBoot] RestApi 만들기 (1) 프로젝트 생성 2021.07.03 - [Java] - [SpringBoot] RestApi 만들기 (2) JSON 형식 리턴 1. dependency 추가 build.gradle 의 dependencies 에 아래 두줄을 추가하고 저장! // slf4j & logback impl.. 2021. 7. 4.
[SLF4J] slf4j 알고가기 + Logback SLF4J Simple Logging Facade For Java SLF4J는 다양한 Logging Framework(java.util.logging, logback, log4j)의 추상화를 제공합니다. SLF4J는 Compile 시 하나의 logging framework와 binding 해줍니다. SLF4J의 이점 가장 큰 것은 다양한 Logging Framework를 라이브러리만 추가해서 바인딩 할 수 있습니다. Deployment Time 에 Log Library 와 동적으로 연결합니다. 이 말은 Log Library만 변경하면 로그 엔진을 바꿀수 있습니다. 사용 시 약간의 이점도 있습니다. 아래의 코드는 string concat 연산을 하고나서, Logging Level 을 확인합니다. 만약 Le.. 2021. 7. 3.
[SpringBoot] RestApi 만들기 (2) JSON 형식 리턴 SpringBoot REST API JSON 지난 포스트에 이어서 테스트 api 에서 json 으로 리턴하는 방법을 알아보겠습니다. 지난 글 : SpringBoot Project 생성 및 심플한 RestApi 작성 1. 원시적인 방법 (json 문자열 만들기) @RestController public class InfoController { @GetMapping("/info") public String projectInfo() { //return "Project name is preword."; return "{\"project name\": \"preword\"," + "\"created date\": \"2021-07-03\"}"; } } 이렇게 만들면 오타의 위험도 있고, 너무 복잡하고 타이핑도 많.. 2021. 7. 3.
[SpringBoot] RestApi 만들기 (1) 프로젝트 생성 SpringBoot REST API Server 목표 MariaDB 또는 MySQL을 연동하여 조회, 저장, 삭제등 rest api 를 개발. 전송 데이터 타입 json (FE는 나중에) 호출 테스트는 브라우저나 postman 을 이용. 1. SpringBoot 프로젝트 생성 eclipse 실행 후 File > New > Other 클릭 Spring Boot > Spring Starter Project 클릭 프로젝트 속성을 입력하시고 Next 참고로 전 Gradle 로 package 관리를 하려고 선택했습니다. 다음 dependencies 들을 추가합니다. Spring Boot DevTools : 개발에 편리한 기능들을 제공 Lombok : annotation 사용으로 코드가 심플해짐 Mybatis Fr.. 2021. 7. 3.
728x90
반응형