스프링 부트에서는 application 파일 설정으로 간단히 세션 타임아웃을 적용할 수 있다 1. application.yml, application.propertiesserver.servlet.session.timeout=600기본설정단위는 초(s)이며 단위를 붙여서 10m, 900s와 같이 사용도 가능하다.spring boot 2.x버전 이상에서 사용가능하며 1.x버전에서는 server.session.timeout로 사용해야 한다. 2. HttpSessionListener 이용하기별도의 WAS 에 외부 톰캣을 만들어 사용할 경우 application 설정만으로 session timeout이 동작하지 않을 수 있다.이 경우엔 별도의 listener를 만들어 session timeout이 동작하도록 해..
Spring Boot는 별다른 설정 없이도 root를 기준으로 아래의 경로에서 정적 콘텐츠를 제공한다. classpath:/static classpath:/public classpath:/resources/ classpath:/META-INF/resources resources 폴더를 살펴 보면 static과 templates 폴더로 나뉘어 있는 것을 알 수 있다. 이는 스프링 버전이 올라가면서 jsp 대신에 thymeleaf 쓰게됨으로 템플릿 파일들을 두는 곳이 생기게 되었다. 그러므로 css나 js파일들은 static 폴더에 넣고 템플릿파일들은 templates 폴더에 넣어서 사용하면 된다. 실제 경로를 호출해보면 /resources/ 또는 /resources/static/ 을 경로에 붙이지 않아도 ..
Mybatis란?마이바티스는 아파치 스포트웨어 재단에서 만든 자바 퍼시스턴스 프레임워크이다.마이바티스는 xml 서술자나 어노테이션을 사용해 저장 프로시저나 sql문으로 객체들을 연결시킨다.특징으로는 기존의 ibatis보다 간결하고 유연한 설정방식을 제공한다. build.gradle에 JDBC 라이브러리 추가 implementation 'org.springframework.boot:spring-boot-starter-jdbc' bulid.gradle 파일에 spring-boot-starter-jdbc 라이브러리와 db 종류에 따른 jdbc 드라이버도 추가해준다. - mssql runtimeOnly 'com.microsoft.sqlserver:mssql-jdbc'- mysql (spring boo..
보통 Spring boot로 개발할때에는 환경설정을 통해 브라우저를 새로고침하면서 수정된 소스를 확인해본다. [spring boot] JSP 수정시 바로 반영 적용하기 spring boot 환경을 세팅하고 jsp로 개발 세팅을 하다 보니 불편한 점이 있었다. 그건 바로 소스를 수정해도 바로 적용이 되지 않는 JSP auto reload 문제. Application을 재시작해주면 바로 되긴하지만 여간 letsplaycoding.tistory.com 하지만 devtools 라이브러리에는 이 귀찮은 동작을 안해도 되는 꽤나 괜찮은 기능이 있다. Automatic Restart와 Live Reload. 이 기능은 서버를 재시작하지 않아도 웹브라우저에서 변경 사항을 바로 확인할 수 있다. 이 기능을 해보기 위해 ..
spring boot 환경을 세팅하고 jsp로 개발 세팅을 하다 보니 불편한 점이 있었다. 그건 바로 소스를 수정해도 바로 적용이 되지 않는 JSP auto reload 문제. Application을 재시작해주면 바로 되긴하지만 여간 불편한 게 아니었다. 이 문제에 대해 검색을 해봤더니 application 환경 설정만으로 아주 간단하게 문제 해결이 가능했다. Spring Boot 2.x 이하 server.jsp-servlet.init-parameters.development=true Spring Boot 2.x 이상 server.servlet.jsp.init-parameters.development=true Application.properties 이나 application.yml 파일에 한 줄만 추가..
현재 내가 세팅한 개발환경은 spring boot 2.7.14, java 11, gradle, intelliJ이다. build.gradle 설정 plugins { id 'java' id 'war' id 'org.springframework.boot' version '2.7.14' id 'io.spring.dependency-management' version '1.0.15.RELEASE' } group = 'com.boot' version = '0.0.1-SNAPSHOT' java { sourceCompatibility = '11' } repositories { mavenCentral() } dependencies { implementation 'org.springframework.boot:spring-..
logback 이란? logback은 log4j의 후속버전으로 logging 대표적인 라이브러리이다. 설정은 간단히 xml파일로 가능하며 적은 메모리를 점유하고 빠른 이행이 특징이 있다. 스프링 부트 환경에서 logback 로그를 찍어보기 implementation 'org.springframework.boot:spring-boot-starter' spring-boot-starter 에는 기본적으로 starter-logging이 포함되어 있다. Gradle dependencies를 살펴보면 starter-logging안에 logback,log4j,slf4j가 포함되 있는 것을 확인 가능하다. 사용하고 있지 않다면 logging 사용을 위해 build.gradle 파일에 라이브러리를 추가해 준다. depe..
이번에 회사홈페이지가 반응형 홈페이지에서 pc와 mobile 2개로 나뉘게 되었다. 어떻게 제작을 해야 할지 고민이 되었다. 그러던 중 구글 검색을 통해 발견한 건 spring-movice-device 라이브러리. 스프링 부트 jsp 설정 방법은 아래 블로그에 있으니 참고. [spring boot+ gradle + intelliJ] 스프링 부트 jsp 설정 오늘은 스프링부트 프로젝트에서 jsp 설정을 하는 방법을 알아보자. 스프링 부트 프로젝트 만드는 방법은 아래 블로그에 있으니 참고. [spring boot+ gradle + intelliJ]스프링 부트 initializr 프로젝트 만 letsplaycoding.tistory.com spring-movice-device spring-movice-devi..
오늘은 스프링부트 프로젝트에서 jsp 설정을 하는 방법을 알아보자. 스프링 부트 프로젝트 만드는 방법은 아래 블로그에 있으니 참고. [spring boot+ gradle + intelliJ]스프링 부트 initializr 프로젝트 만들기 SPRING INITIALIZR 스프링 이니셜라이즈는 스프링 부트를 보다 쉽고 필요한 것만 만들기 위한 위한 사이트이다. https://start.spring.io/ 원하는 버젼의 스프링 부트를 선택하고 그에 맞는 자바 버전을 선 letsplaycoding.tistory.com 스프링 부트는 템플릿 엔진으로 타임리프(thymeleaf)를 권장한다. jsp는 서블릿이라는 형태로 변환되어 실행이 되기 때문에 비즈니스 로직이 포함되어 복잡하고 무겁다. 하지만 타임리프는 서블릿..
Map map = new HashMap(); map.put("searchType", searchType); map.put("searchTxt", searchTxt); int pageRow = 10; int totalcount = boardService.boardCount(map); log.info("totalcount : "+ totalcount); model.addAttribute("total_count", totalcount); int total_page = totalcount / pageRow + (totalcount % pageRow > 0 ? 1 : 0); log.info("total_page : "+ total_page); model.addAttribute("pages", total_page)..
현재 쓰고 있는 로그파일을 2개로 분리해야 한다는 지령이 떨어졌다. 현재 우리 회사에서 쓰고 있는 logging framework는 logback. logback은 log4j의 후속버전으로 logging 대표적인 라이브러리이다. 일단 logback의 구조를 살펴보면, logback은 로그의 주체인 logger와 어디에 출력할지 기술하는 appender 그리고 어떻게 출력할지를 기술하는 encoder로 나뉜다. 설정은 간단히 xml파일로 가능하며 적은 메모리를 점유하고 빠른 이행이 특징이 있다. pom.xml 설정 일단 logback을 쓰려면 pom.xml에 라이브러리를 추가해야 한다. org.slf4j slf4j-api ${slf4j.version} ch.qos.logback logback-classic..