본문 바로가기

스프링프레임워크11

Spring Boot 웹애플리케이션에서 서비스 포트와 컨텍스트 패스를 변경하기 Spring Boot 웹애플리케이션을 Spring Boot Web Starter 설정을 사용해서 만들어서 실행하면 서비스 포트와 컨텍스트 패스는 다음 설정을로 실행됩니다. - 내장 톰캣 서비스 포트 : 8080- 컨텍스트 패스 : ''(root context) 이 설정을 바꿔려면 어떻게 하는지 알아보겠습니다. 이번에 사용된 예제는 "Spring Boot + Kotlin + Thymeleaf 프로젝트 만들기" 의 예제를 Spring Boot + Java + Thymleaf로 바꿔서 테스트 했습니다.(Kotlin을 공부할 시간이 잘 나지 않네요. 자바에 Thymeleaf로 Thymeleaf를 먼저 공부해봐야 겠습니다.T.T) 앞의 프로젝트 생성과 바뀐점은 언어를 Kotlin에서 Java로 바꾼것과 Sprin.. 2019. 9. 29.
Java Config로 메세지소스(MessageSource) 설정하기(다국어 지원) 스프링프레임워크에서 다국어지 지원을 위한 메세지소스 설정을 Java Config로 해 봅니다. 이번 예제는 "Spring Framework 메세지 국제화(다국어 지원) 사용하기" 에서의 xml 설정을 Java 클래스를 사용한 설정으로 변경한 것입니다. MessageSource의 사용법은 이글을 참조 하세요. 전체 예제소스는 글의 끝에 첨부해 두었습니다. 1. 메세지소스를 생성하는 설정 클래스를 작성합니다. MessageSource 와 언어 변경에 사용될 Locale Resolver를 생성합니다. 여기서는 언어정보를 세션에 저장하도록 SessionResolver를 생성합니다. package com.tistory.offbyone.init; import org.springframework.context.ann.. 2019. 3. 19.
Maven 웹 프로젝트에 스프링프레임워크 적용하기 Maven 웹 프로젝트에 스프링프레임워크를 적용해 보기로 했습니다. 혼자 해보는거니 될 수 있는 한 최신 버전으로 올려봅니다. 스프링프레임워크를 설정하고 시작하는 방법은 xml 을 사용하는 방법과 Java 클래스를 사용하는 방법이 있습니다. 여기서는 클래스를 사용하는 방법으로 적용해봅니다. "스프링프레임웍의 시동" 을 읽어보시면 도움이 되실것입니다. 앞의 "Maven 웹 프로젝트 서블릿 3.1로 업그레이드 하기" 에서 만든 예제에 추가해서 작성합니다. 전체소스는 글 하단에 추가해 두었으니 참고하시가 바랍니다. 1. pom.xml 파일에 프로퍼티를 추가합니다. 프로퍼티는 자주 사용하는 값을 미리 정의해두는 방법입니다. Java 버전은 1.8을 사용하고, 스프링프레임워크 5.1.5.RELEASE 버전을 사용.. 2019. 3. 13.
스프링프레임워크 <form:form> 태그 사용법 스프링프레임워크의 JSP 기술중에 form taglib 가 있습니다. form 태그라이브러리를 사용하면 HTML 폼에 데이터를 바인딩하거나 에러메세지 처리등을 간편하게 할 수 있습니다. 스프링프레임워크 form 태그라이브러리를 사용하기 위해서는 먼저 다음 taglib 설정을 페이지 상단에 추가합니다. 1. 옵션 없이 사용했을 경우 기본값 호출 URL이 /offbyone/boardForm.do 라고 가정하고, 옵션 없이 사용한 경우 form 태그: 결과 HTML: - id 속성은 "command" 가 기본값입니다.- action 속성은 자기 페이지의 URL 입니다.- method는 POST가 기본입니다 2. commandName과 modelAttribute 옵션 commandName 과 modelAttri.. 2018. 8. 5.
spring-test - 테스트 프로젝트 및 테스트 케이스 기본구조 스프링프레임워크로 만들어질 웹애플리케이션을 spring-test 라이브러리를 사용하여 테스트를 하는 방법을 알아 봅니다. spring-test는 스프링프레임워크 3.2부터 지원되며, 스프링 MVC 컨트롤러에 대한 단위테스트를 지원합니다. 예제로 사용할 프로젝트를 전자정부표준프레임워크 3.6에 있는 템플릿을 사용해 봅니다. 1. 예제 프로젝트 만들기 - 전자정부표준프레임웍 3.7을 사용합니다. "전자정부표준프레임워크 3.7 설치하기" 를 참조하세요. 1.1. File -> New -> eGovFrame Web Project를 선택합니다. 1.2. Project name과 Maven Setting의 Group ID에 "spring_test" 를 입력합니다. Target Runtime은 Apache Tomca.. 2018. 5. 1.
log4jdbc-remix의 Custom SQL Formatter 만들기(SQL log 줄 바꿈) SQL Query 로그의 줄을 바꿔서 어느정도 예쁘게 출력하는 방법을 알아보겠습니다. log4jdbc-remix 를 사용해서 쿼리 로그를 만들게 됩니다. 테스트는 전자정부표준프레임워크 비즈니스 템플릿을 MySQL(실제는 MariaDB)와 연동한 소스에서 하였습니다. 전자정부표준프레임워크는 SQL 쿼리를 로그로 출력하기 위해서 log4jdbc를 사용하고 있습니다. log4jdbc-remix는 log4jdbc의 또다른 실험적인 분기로써 SQL 포맷뿐만 아니라 DB로부터 가져오는 값들을 추적할 수 있는 다양한 기능을 제공합니다. 실제 적용해본 결과로는 두가지 문제점이 있었습니다. 첫 번째는 쿼리 왼쪽에 여백을 주는 margin 프로퍼티를 사용하면 오류가 발생합니다. java.util.FormatFlagsCon.. 2018. 4. 19.
스프링 프레임웍에서 MyBatis, Oracle 사용하기 Spring4 + MyBatis + Oracle 을 연동해 봅니다. 앞에서 만들었던 샘플 프로젝트 ( "Spring MVC 샘플 프로젝트 버전3 에서 버전 4로 마이그레이션 하기" ) 를 사용합니다. 1. 먼저 설치한 Oracle 데이터베이스에 유저를 추가하고 테스트용 테이블 을 생성합니다. SYSTEM 계정으로 들어가서 다음 명령으로 사용자를 추가합니다. 아이디와 비밀번호는 xeuser 입니다. GRANT CONNECT, RESOURCE TO xeuser IDENTIFIED BY xeuser; SQL Developer 에서 명령 실행은 실행하고자 하는 쿼리를 블럭으로 선택한 후 F9 또는 Ctrl+Enter 입니다. 이제 생성된 계정으로 들어가서 테스트용 테이블을 생성합니다. CREATE TABLE T.. 2018. 4. 1.
Spring MVC 샘플 프로젝트 버전3 에서 버전 4로 마이그레이션 하기 "Spring Framework을 사용한 웹애플리케이션 개발환경 만들기" 에서 기본 설치했던 샘플 Spring MVC 프로젝트의 Spring Framework 버전은 3.1.1 입니다. 이것을 현재 버전인 4.3.4 으로 변경합니다. 간단히 될 줄 알았는데, 내가 이러려고 STS 플러그인을 설치했나 싶을 정도로 이것저것 걸리는게 많더군요. 메이븐을 좀 더 공부해야 겠다는 생각이 절로 듭니다. 먼저 기본환경을 확인해보고 어떻게 변경할지 본 후 설정을 해 봅니다. 기본 환경 - Spring Framework 3.1.1 - java version 1.6 - Maven compiler source 1.6 target 1.6 - servlet-api 2.5 - jsp-api 2.1 변경 될 환경 - Spring .. 2018. 4. 1.
Spring Framework을 사용한 웹애플리케이션 개발환경 만들기 스프링 프레임웍을 사용하여 프로그램을 개발할 수 있는 환경을 만들어 보겠습니다. http://spring.io 에서 Eclipse와 통합된 String tool Suite 를 제공하고 있습니다. STS도 Eclipse 기반으므로 스프링 프레임웍 외에 필요한 플러그인을 설치하여 자바, PHP 등 개발에 사용할 수 있습니다. 여기서는 설치해둔 Eclipse가 있다는 가정하에 STS를 플러그인 형태로 설치해 보겠습니다 (Eclipse의 설치는 "Eclipse 설치하기" 를 참조하면 되겠습니다). 1. Eclipse 를 실행합니다. 메뉴바에서 Help -> Eclipse Marketplace 를 실행합니다. 2. Find 에 STS 를 입력하고 Go 버튼을 눌러 검색합니다. 검색된 항목중에 Spring Tool.. 2018. 4. 1.
Apache Tiles 설정하기 Apache Tiles 설정하기 Spring + Apache Tiles 설치하기 앞의 글 "Spring + Apache Tiles 설치하기" 에서는 타일즈가 적용될 모든 페이지를 tiles.xml 설정파일에서 적어서 처리했습니다. 실제 사용시에는 페이지가 많으므로 이렇게 처리할 수 없을 것입니다. 그러므로 페이지를 고정해서 지정하는것이 아니라 패턴을 주어서 처리할 수 있습니다. 컨트롤러에서 뷰를 지정하는 부분을 보겠습니다. (HomeController.java 파일) @RequestMapping(value = "/boardList.do") public String boardList(Model model) throws Exception { .... return "boardList"; } 뷰를 지정하기 위해.. 2018. 4. 1.
Spring + Apache Tiles 설치하기 Apache Tiles 설정하기 Spring + Apache Tiles 설치하기 웹페이지를 작성하게 되면 페이지 상단의 글로벌 메뉴 부분, 좌측의 메뉴 부분, 하단의 카피라이트 부분등 항상 공통적으로 나오는 부분이 있습니다. 이러한 부분들을 따로 파일로 만들고 페이지 내에서 include 하여 사용을 하게됩니다. 재사용 가능한 조각으로 분리했지만 아직도 남은게 있습니다. 각 페이지에서 include하는 코드는 항상 작성을 해야만 합니다. Apache Tiles 는 템플림 구성 프레임워크로서 이러한 include 하는 코드를 사용하지 않고, 지정된 페이지 레이아웃에 따라 페이지 조각을 조합하여 완전한 페이지로 만들어 줍니다. Spring에서 서비스 단에서 처리된 데이터를 뷰단인 jsp 로 보내기 위해서 V.. 2018. 4. 1.