라벨이 SPRING_BOOT인 게시물 표시

[Ubuntu, Spring Boot] 우분투에서 스프링 부트 jar파일로 실행시키기.

이미지
ncloud에 ubuntu 서버 생성 후 spring boot 프로젝트를 올리는 과정을 포스팅해보겠습니다. 서버에 스프링 부트를 올리는 방법은 크게 3가지가 있습니다. 스프링 부트 프로젝트 파일들을 모두 올리는 방법 war 배포 runnable jar 배포 1번 방식은 *.java 형태를 서버에 올리는 방법입니다. 2번 방식은 war를 실행시키면 war가 풀리면서 해당 프로젝트가 저절로 만들어집니다. 그 프로젝트 폴더로 서버가 실행이 됩니다. 3번 방식은 jar를 실행시키면 war와 다르게 프로젝트 폴더가 따로 생성은 되지 않습니다. 이번에는 3번 방식 톰캣 설치 없이 우분투에 jar 배포하는 방법입니다. 실행 조건 우분투 버전 16.04 desktop 버전 IDE는 STS 사용. 우분투 초기화 상태 스프링 부트 설정  1.  테스트 프로젝트 생성 2. MainController.java 생성 import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; @RestController @RequestMapping("/test") public class MainController {     @GetMapping     public String test() {         return "TEST";     } } 3.localhost:8080/test 접속 후 TEST 반환하는지 확인 4. 상단에 Run -> Run Configurations 클릭 5.Java Application 선택 후 우클릭 -> Ne...

[SPRING BOOT] Spring Boot (Gradle) log4j 환경 셋팅으로 로그 깔끔하게 남기기.

이미지
오늘 포스팅은 gradle로 만든 스프링 부트에서 log4j 사용 하기 입니다. 1. 아래의 그림처럼 build.gradle 을 더블 클릭하여 열어줍니다. 2. dependencies 안에  compile ('org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4:1.16') 추가합니다 3. 2번까지 하시면 우측 하단에 Gradle import 관련하여 물어봅니다. 그럼 Import Changes 를 눌러주세요. 4. application.properties 를 열어줍니다. 5. 아래를 추가해줍니다. ****************************************************************************************** IP : ip로 바꿔주세요. PORT : 해당 포트로 바꿔주세요. DATABASE_NAME : 로컬에서 쓰실 데이터베이스 이름으로 바꿔주세요. spring.datasource.driver-class-name=net.sf.log4jdbc.sql.jdbcapi.DriverSpy spring.datasource.url = jdbc:log4jdbc:mysql://IP:PORT/DATABASE_NAME?useSSL=false spring.datasource.username = root spring.datasource.password = 6. 아래 구조와 같이 파일을 생성 해줍니다. 7. l og4jdbc.log4j2.Properties 열어 아래 코드 추가해줍니다. log4jdbc.spylogdelegator.name=net.sf.log4jdbc.log.slf4j.Slf4jSpyLogDelegator log4jdbc.dump.sql.maxlinelength=0 8. logback.xml 열어 아래 코드 추가해줍니다...

[스프링부트]REST API 사용하여 조회 시 500에러 해결 방법

오늘의 포스팅 은 REST API 를 사용하여 해당하는 객체 정보를 json으로 화면 에 나타낼 때 겪었던 오류 입니다. 오류 상황 스프링 부트를 이용하여 간단하게 DB 값들을 가져오는 것을 학습중이였습니다. List로 여러 값들을 가져오는 것은 포스트 맨 을 이용하여 확인을하였습니다. 그러나 단일 값 즉 localhost:8080/user/1 을 하였더니 포스트 맨 에게 반환된 값은 1 2 3 4 5 6 7 {      "timestamp" :  "2018-04-12T11:53:23.314+0000" ,      "status" :  500 ,      "error" :  "Internal Server Error" ,      "message" :  "Type definition error: [simple type, classUserDomain; nested exception is com.fasterxml.jackson.databind.exc.InvalidDefinitionException: No serializer found for UserDomain and no properties discovered to create BeanSerializer (to avoid exception, disable SerializationFeature.FAIL_ON_EMPTY_BEANS) (through reference chain: ResponseForma...

[스프링부트] @Mapper import 실패시(빨간줄) 해결 방법

@Mapper 찾지못하는 오류 현상 해결 방법 오류 사항 import org.apache.ibatis.annotations.Mapper ; 위에 import문에서 Mapper에서만 빨간 밑줄 이 그어진다면 gradle 속성을 살펴보아야한다. 아래와 같이  gradle 속성을 바꾸어주었더니 IDE에서 인식이 가능하였다. 기존 compile 일부 compile "org.mybatis:mybatis:3.3.0" compile "org.mybatis:mybatis-spring:1.2.3" 추가한 compile 일부 compile "org.springframework.boot:spring-boot-starter-jdbc" compile( "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.2" ) 속성만 바꿔준다고해서 적용 이 되지않는다. gradle 속성을 바꿔준다음 gradle Tool View에서 Refersh all gradle projects 를 해줘야 적용이 된다.