스프링프레임워크로 개발시 빈을 등록할때 빈의 의존관계로 인해 빈의 의존관계에 등록되어있는 빈들의 등록되는 순서를 지정할 필요가 있다. 순서를 정하는 방법은 아주 간단합니다. (이 포스트에서는 어노테이션을 통해 순서를 정하는 방법을 포스팅하겠습니다.) 1. 순서를 정하실 빈의 name을 지정합니다. @Component("testDao1") public class TestDAO1 { @Component("testDao2") public class TestDAO2 { @Component("testDao3") public class TestDAO3 { 2. 빈의 등록되는 순서를 @DependsOn을 통해 지정한다. (빈이 등록되는 순서를 TestDAO1 - > TestDAO2 -> TestDAO3) @Compo..
메이븐에서 제공하는 프로젝트 이력 프로필에 대해서 알아보자.모든 프로젝트는 사람이 만든 소스 및 파일로 구성됩니다. 프로젝트는 다른 시스템과 마찬가지로 프로젝트 참여자도 프로젝트에 이해 관계가 있습니다. 개발자는 아마도 프로젝트의 핵심 개발 멤버가 될 것입니다. 이러한 이해관계에 대한 정의를 메이븐에서는 제공하고 있습니다.pom.xml에서주로 위쪽으로 정의합니다.각 태그는 그냥 보시면 알 수 있을 것 같습니다.약간 헷갈릴수 있는 부분만 설명드리자면roles는 프로젝트 참여자가 어떠한 역할을 했는지를 정의하는 것 입니다.한 사람이 개발 및 설계를 동시에 진행했다면developer와 architect를 기입하면 됩니다.timezone은 현재 지역이나 UTC기준 차이시간을 입력하면 됩니다.현재지역이 서울이라면..
스프링에서는 컨트롤러로 사용할 클래스 상단에 @Controller 지정하며 유용하게 사용할수 있는 기능들이 있다. 그중에 @RequestParam에 대해서 알아볼까합니다. 1. 단일 파라미터 변환 private ModelAndView request_TEST(@RequestParam("test") int num, @RequestParam("test2") String str)){ //위처럼 하나이상의 타입을 적용할수 있습니다. 스프링에서 지원하는 변환기에서 지원되는 모든타입을 변환가능합니다. //RequestParam은 하나이상 파라미터에서 사용가능합니다. } 참편리하죠? 하지만 단점이 있습니다. 위처럼 사용하게 된다면 만약에 넘어오는 requestParam중에 @RequestParam 지정한 키값이 존재하..
지난 포스트가 궁금하시다면 ↓↓↓ 아래 링크를 클릭해주세요. ↓↓↓↓ [JAVA] 자바로 csv파일 만들기(라이브러리 X) 안녕하세요. 자바개발시 로그관리같은 경우 @Slf4j lombok에 있는 어노테이션을 통해 주로 관리합니다 물론 Logger를 통해서도 가능하지만 (코드를 깔끔하게보는것을 좋아해서 주로 어노테이션을 사용합니다) @Slf4j를 통하여 로그관리시 lombok 라이브러리 이외에도 필요한 라이브러리가 있습니다. [pom.xml] org.slf4j slf4j-api 1.7.13 org.slf4j slf4j-log4j12 1.7.13 아래의 PROPERTIES를 추가하세요. [log4j.properties] # Root logger option log4j.rootLogger=INFO, logf..
지난 포스트에서 데이터 커맨드 객체를 통해서parameter를 손쉽게 사용할수 있었다.그런데 데이터커맨드 객체명이 너무 길거다 사용하기 불편할떄@ModelAttribute를 사용한다면 손쉽게 이용할수 있다. 1. 데이터 커맨드 family를 @ModelAttribute 어노테이션을 통하여 fa라고 지정한다. 2. jsp 화면에서 family가 아닌 fa라고 지정하여 model를 불러 올 수 있다.
웹프로젝트 개발시 Controller에서 RequestParam으로 폼 데이터를 받을 수 있다.그렇지만 parameter가 많아졌을시소스상에서 RequestParam으로 명시하면서 모두 나열한다면 소스가 지저분해지고 양도 많아진다.스프링에서는 이러한 부분을 특정 데이터모델을 만들어 키값과 변수명을 동일하게 한다면AutoParsing되어 데이터를 손쉽게 사용할수 있다. 이를 데이터 커맨드 객체라고 한다. 1. 컨트롤러에서 다음과 같이 데이터커맨드를 통해 쉽게 적용할수 있다. 2. 데이터 모델을 만듭니다. 3. jsp화면에서 el태그로 적용 후 4. 웹서버를 기동하여 데이터 커맨드 객체로 지정한다면 다음과 같이 jsp에서 바로 쓸수 있다
spring 프로젝트를 생성시 서버를 띄우고 해당 웹페이지를 열게 되면 글자 꺠짐현상을 발견할 수 있다. 이떄에는 web.xml에서 filter를 추가해주면 글자가 깨지기 않는다. EncodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 forceEncoding true EncodingFilter /*
sts에서 처음 Spring Mvc Project 생성하여 구동하였는데 java.lang.NoClassDefFoundError: org/apache/log4j/Level다음과 같은 에러 발생.....프로젝트 만들기만 했는데 해당 클래스는 못찾는다니 뭐이런.... 문제점을 찾아보니... log4j log4j 1.2.15저의 버전은 이것이였습니다. 메이븐으로 가서 해당 jar Usage를 보니 1.2.17 Version이 월등이 높았으니..설마 하는 마음으로1.2.17 버전으로 변경...바로... 아래로그와 함께 Spring Contaner 생성 성공