목록Sping (22)
썩구노트
이번 포스팅은 spring - mybatis 연동이 된상태로 콘솔창에 sql 쿼리의 parameter 및 result 데이터를 확인하고자 할때 로그레벨을 설정하는 것이다.기존까지 해온 연동설정에서 추가로 변경만 해주면 된다.resources 디렉토리내에 logback.xml 이란 파일이 있을텐데 맨 밑으로 내려보면 root 레벨이 info로 되있을텐데 레벨은 info -> debug로 변경해주도록 한 후 쿼리가 뽑히는지 확인하자 그럼 기존 쿼리 테스트를 위해 만들어놓은 컨트롤러 호출을 한후 콘솔에 쿼리 로그가 정상적으로 뽑히는지 확인해보자 위 화면처럼 쿼리로그가 정상적으로 찍히는지 확인하였다. query = show tablesparameter = 입력값이 없으므로 패스return data = total..
spring 3 이후부터 지원이 되는 기능이다. 본인이 주로 쓰는 경우에는 특정 parameter값을 페이지 전환하면서 유지를 해야 할 경우이다. 예를들어 상단 메뉴를 누르고 메뉴의 focus를 유지하고자 할경우 보통 http://URL?gnb=board형식으로 주면서 특정 메뉴의 모든 페이지에 gnb=board라는 값이 따라붙게 된다. 위와같은 url을 PathVariable 어노테이션을 사용하게 된다면http://URL/board와 같은 식으로 변경이 가능하다 물론 URL 뒤에만 붙이는건 아니고 URL 중간에 접목도 가능하다. 예를 들도록 해보자 1) 일반 GET방식으로 서버에서 값 확인하기 * JAVA 샘플코드@RequestMapping("/test") public void test(HttpServ..
원본 출처 : http://lbass.tistory.com/entry/DAO-%EB%9E%80http://choijaehyuk.com/128http://everyit.tistory.com/4 DAO란 Data Access Object의 약어로서 실질적으로 DB에 접근하는 객체를 말한다.DAO의 사용 이유는 효율적인 커넥션 관리와 보안성 때문이다. 정의DAO란? 한마디로 Database의 data에 access하는 트랜잭션 객체이다. 일종의 객체라는 것을 잊지말도록 하자. DAO는 저수준의 Logic과 고급 비지니스 Logic을 분리하고, domain logic으로부터 persistence mechanism을 숨기기 위해 사용한다. (적절히 디자인을 하면 모든 domain logic을 바꾸는 대신에 DAO..
맨 처음 Spring framework(이하 스프링)을 접한 후, 이런저런 프로젝트를 진행하였습니다. 그런데 처음에는 다양한 개발환경을 가진 사람들이 시작하다보니, 여러가지 문제가 있었습니다. 혼자 개발을 한다면 상관없지만, 프로젝트의 특성상 여러사람들이 같이 개발을 하는데, 개발환경을 쉽고 편하게 설치할 수 있으면 좋겠다는 생각을 했습니다.그에따라, 개발환경을 구성하여 배포하려고 하는데, 개발환경을 구성하는데 많은 어려움을 겪었던 기억이 있습니다. 인터넷을 찾아보면 굉장히 많은 개발환경 설치글들이 있지만, 제 입맛에 딱 맞추기는 힘들었죠. 이 세상에는 뛰어난 개발자들이 많지만, 굳이 제가 이 글을 쓰는 이유는 다른 많은 사람들이 이 글을 보고 개발환경을 설정하는데 제가 한것같은 삽질을 하지 않기를 바라..
지난 글에서는 개발환경에 필요한 여러가지 프로그램을 설치하였습니다.이번 글에서는 지난시간에 완료하지 못했던 설정 및 플러그인을 설치하려고 합니다. 1. Tomcat 설정이클립스를 실행시키면 다음과 같은 화면이 나온다. 우리는 이제 지난 글에서 다운받아놨던 톰캣과 메이븐의 설정을 하려고 한다. 1. 상단의 Window > Preferences를 선택한다. 2. Server > Runtime Environment을 선택한다. 3. Add... 버튼을 누른다.4. Apache tomcat 7.0을 선택하고 "Next >" 를 누른다. 5. JRE 및 톰캣 설정을 한다. 우리는 dev 폴더 밑에 tomcat이 있으며, 설치된 JRE는 JDK 1.7.0_60이므로, 이를 선택하여준다. 6. 그럼 다음과 같이 To..
이번 글에서는 이클립스 플러그인 설치에 대해서 이야기합니다.이 글을 끝으로 개발환경 설치는 거의 끝나고, 다음글 부터는 스프링 개발에 관련된 이야기를 하려고 합니다.처음에는 "설치해야하는게 왜이렇게 많아?" 라고 생각하실수도 있는데, 실제로 많긴 합니다(...)사실 스프링을 처음 개발하는 분들이 어려워하시는건 의외로 개발환경 설정입니다. 개발은 뭐 그럭저럭 하겠는데, 뭔가 설치하고 해줘야할게 많아서 어려워하시더군요. 물론 저도 처음에 개발환경을 설정하는데 참 많은 시간과 노력과 삽질을 했었죠. 그렇지만 이렇게 한번 필요한걸 설치해두고 나면, 그 후부터는 개발을 하기가 굉장히 편해집니다. ~.~;--------------------------------------------------------------..
지난글까지는 스프링을 개발하는데 필요한 개발환경을 설치하였습니다. 이번글부터는 스프링 프로젝트를 생성하고, 스프링의 기능을 하나씩 추가해서 하나의 프로젝트를 완성하는것을 목표로 합니다. 간단히 스프링 프레임워크를 살펴보겠습니다. 1. 스프링은 POJO (Plain Old Java Object) 방식의 프레임워크로서, 일반적인 J2EE 프레임워크에 비해 특정 라이브러리를 사용할 필요가 없어서 개발이 쉬우며, 기존 라이브러리의 지원이 용이합니다. 2. 스프링은 관점지향프로그래밍, AOP(Aspect Oriented Programming)를 지원합니다. 트랜잭션, 로깅, 보안 등 여러 모듈, 여러 계층에서 적용되는데, 이런 코드들을 실제 비지니스 로직과 분리할 수 있도록 도와줍니다. 한때, AOP가 OOP(O..
이번 글에서는 지난시간에 만들었던 스프링 프로젝트에 대해서 간단히 분석을 해보겠습니다.---------------------------------------------------------------------------------------------------- 1. 폴더구조 파악우리가 만들었던 first 프로젝트는 다음과 같은 구조를 가지고 있다. 이 구조를 간단히 살펴보자.1) src/main/java는 java 파일이 모여있는 디렉토리이다. 우리가 앞으로 만들 java 파일은 전부 이 디렉토리에 구성된다. 2) src/main/resources는 여기서는 사용하지 않지만, 추후 스프링 설정 파일이나 쿼리가 저장될 디렉토리이다. 3) src/test/ 관련 폴더는 test 관련 폴더인데, 우리는 ..
이번글부터는 지난글까지 이야기했던 기본프로젝트를 이용하여, 실제 프로젝트에서 사용할 수 있는 구조 및 아키텍처를 이야기합니다. 스프링에서 제공하는 다양한 모듈들, 예를 들어 인터셉터, 로깅, 트랜잭션, 익셉션 및 MyBatis 연동 등 프로젝트 의 전반적인 아키텍처 및 스프링 모듈을 하나씩 추가할 예정입니다. 이번글에서는 지난글에서 생성했던 first 프로젝트의 구조를 변경하고 기초적인 설정에 대해서 이야기하는데, 처음에는 구조가 굉장히 복잡하게 느껴집니다. 가능한 복잡한 구조를 풀어서 설명하고, 왜 그런 구조가 필요한지에 대한 이유를 설명하겠습니다. --------------------------------------------------------------------------------------..
상당히 오랜만에 글을 씁니다. 그동안 개인적으로 워낙 많은 일들이 있었고, 잠시 쉬는시간도 없어서 글을 아예 쓰지 못했네요. 그동안 제 글을 읽어주시고, 기다려주신 모든분들께 감사하다는 말씀을 드립니다. 이번 글에서는 본격적인 스프링 MVC 구조 개발을 시작하도록 하겠습니다. ------------------------------------------------------------------------------------ 웹개발을 하다보면 MVC 패턴이란 말을 듣게 된다. MVC란 Model-View-Controller의 약자로, 사용자 인터페이스와 비지니스 로직을 분리하여 웹 개발을 하는것을 가장 큰 장점으로 한다. MVC 패턴도 MVC 모델 1과 MVC 모델 2로 나뉘어져 있는데, 요즘에는 MVC..