프로그래밍/Java 57

스프링 부트 + vue.js gradle build 과정에서 npm build 자동으로 수행되도록

plugins { id "com.github.node-gradle.node" version "3.1.1" } node { download = true version = "14.6.0" npmVersion = "6.14.7" distBaseUrl = "https://nodejs.org/dist" npmInstallCommand = "install" workDir = file("${project.projectDir}/.gradle/nodejs") npmWorkDir = file("${project.projectDir}/.gradle/npm") nodeProjectDir = file('./front') } task setUp(type: NpmTask) { description = "Install Node.js..

스프링부트(spring boot) mysql 연동시 log4j2 설정 gradle intellij

스프링 부트 사용시 기본 로그 spring-boot-starter-logging 제거해야 합니다. all { exclude group: 'org.springframework.boot', module: 'spring-boot-starter-logging' } build.gradle 에 log4j2 와 쿼리로그를 볼수 있도록 추가하겠습니다. build.gradle log4j2 추가 implementation 'org.springframework.boot:spring-boot-starter-log4j2' build.gradle 쿼리로그 추가 implementation 'org.bgee.log4jdbc-log4j2:log4jdbc-log4j2-jdbc4.1:1.16' build.gradle 전체 plugins ..

스프링부트(spring boot) mybatis 에러 해결 invalid bound statement not found

스프링 부트에서 mybatis 사용할때 아래와 같이 계속 mapper 에러가 발생한다. org.apache.ibatis.binding.bindingexception invalid bound statement not found 여러가지 이유를 찾아보던중 가장 흔이 발생하는 mapper interface 경로와 mapper xml namespace 경로가 다를때 발생한다. 하지만 나는 경로 와 오타가 없이 정확하게 일치하는데 계속 invalid bound statement not found 에러가 발생했다. 결론은 mapper xml 의 디렉토리가 3단계로 되어 있어서 그런것이었다. 기존 아래와 같이 resources 하위 3단계였다 resources mybatis mapper example StudentM..

인텔리제이(Intellij)를 이용한 스프링 부트(Spring Boot) 시작 부터 배포까지

https://trytoso.tistory.com/1566 1탄 인텔리제이 (intellij) 스프링 부트(Spring Boot) 시작하기 https://trytoso.tistory.com/1568 2탄 인텔리제이 스프링부트 타임리프 (intellij SpringBoot thymeleaf) Hellow World 시작하기 https://trytoso.tistory.com/1567 3탄 인텔리제이(IntelliJ) 스프링 부트(spring boot) 개발시 Thymeleaf 자동 리로드/정적리소스 새로고침으로 실시간 반영하기 https://trytoso.tistory.com/1570 4탄 인텔리제이(Intellij) 스프링 부트(Spring Boot) Gradle 이용한 WAR 배포 설정 방법 https:..

인텔리제이(Intellij) 스프링 부트(Spring Boot) Gradle 이용한 WAR 배포 설정 방법

인텔리제이에서 스프링 부트를 사용하여 톰캣서버에 war 이용하여 배포해 보도록 하겠습니다. 아래 링크 보시면 처음 프로젝트 셋팅시 war 파일로 배포 한다고 설정되었습니다. https://trytoso.tistory.com/1566 인텔리제이 (intellij) 스프링 부트(Spring Boot) 시작하기 스프링 프레임워크(Spring Framework) - EJB(Enterprise Java Bean)라는 무겁고 복잡한 플랫폼에서 벗어나 POJO(Plain Old Java Object)를 기반으로 하는 경량의 환경을 제공한다. - 스프링 프레임워크가 처음 등.. trytoso.tistory.com Hello World 를 만들어 화면에 잘 나오는지 확인해봐야겠죠? https://trytoso.tisto..

톰캣(tomcat) war 배포를 위한 server.xml appBase docBase 등 설정 방법

톰캣(tomcat) war 배포를 위한 server.xml appBase docBase 등 설정 방법 Centos7 톰캣8 톰캣 설치 경로 /usr/local/tomcat Host 가상의 호스트를 정의한다. 서버의 ip 를 지정해도 된다. appBase appBase 같은 경우 docBase와 많이 비슷합니다. 상대경로, 절대경로 다 가능하지만 절대경로로 지정하는게 직관상 좋습니다 빌드한 war 파일이 생성되는 곳을 /home/springboot/html/webapps/ 로 변경하였습니다. 애플리케이션 구동 시 태그의 docBase를 기준으로 애플리케이션을 구동합니다. autoDeploy (default true) autoDeploy 옵션이 true일 경우 WAR파일을 appBase(=webapps) 디..

인텔리제이 스프링부트 타임리프 (intellij SpringBoot thymeleaf) Hellow World 시작하기

인텔리제이 스프링부트 타임리프 (intellij SpringBoot thymeleaf) Hellow World 시작하기 인텔리제이 처음이시면 인텔리제이 스프링부트 시작 환경 구성하고 올께요 https://trytoso.tistory.com/1566 인텔리제이 (intellij) 스프링 부트(Spring Boot) 시작하기 스프링 프레임워크(Spring Framework) - EJB(Enterprise Java Bean)라는 무겁고 복잡한 플랫폼에서 벗어나 POJO(Plain Old Java Object)를 기반으로 하는 경량의 환경을 제공한다. - 스프링 프레임워크가 처음 등.. trytoso.tistory.com 이제 시작이 반이라고 Hello World 찍어봅시다. .HelloWorld 클래스 만들기..

인텔리제이(IntelliJ) 스프링 부트(spring boot) 개발시 Thymeleaf 자동 리로드/정적리소스 새로고침으로 실시간 반영하기

스프링 부트(spring boot) 개발시 매번 서버를 재시작해야되는 불편한 점이 있습니다. 해서 java 코드 또는 Thymeleaf html 수정시 바로 반영할수 있도록 셋팅해보겠습니다. .application.properties 추가 spring.thymeleaf.cache=false .우측 상단 Edit confirguation... 클릭 아래와 같이 두곳을 바꿔줍니다. 위 작업후 다시 재시작하면 웹브라우져에서 새로고침 없이 바로 반영된것을 확인할수 있습니다. 4탄 인텔리제이(Intellij) 스프링 부트(Spring Boot) Gradle 이용한 WAR 배포 설정 방법

인텔리제이 (intellij) 스프링 부트(Spring Boot) 시작하기

스프링 프레임워크(Spring Framework) - EJB(Enterprise Java Bean)라는 무겁고 복잡한 플랫폼에서 벗어나 POJO(Plain Old Java Object)를 기반으로 하는 경량의 환경을 제공한다. - 스프링 프레임워크가 처음 등장했을 떄는 단순히 애플리케이션 운용에 필요한 객체들을 생성하고, 객체들 사이에서 의존성을 주입해주는 단순한 컨테이너로서의 기능만 제공했지만 발전을 거듭한 현재의 스프링은 다양한 엔터프라이즈 시스템 개발에 필요한 모든 분야를 지원하는 하나의 플랫폼으로 자리잡았다. - 하지만 다양한 프레임워크와 기술들을 지원하면서 동시에 개발자가 처리해야하는 설정도 많아지고 복잡해졌다. - 복잡한 설정에서 발생한 문제들을 해결하려는 노력의 일환으로 '스프링 부트'라는 ..