본문 바로가기

Define Java

Maven을 이용한 동적파일, 정적파일 분리하여 WAR 만들기 MAVEN의 Plug-in을 이용하여 동적파일(WAS 처리)과 정적파일(WEB Server 처리)을 분리하는 방법이다. 컴파일 설정 maven-compiler-plugin 3.3 1.6 1.6 true C:\Program Files\Java\jdk1.6.0_43\bin\javac.exe 1.6 utf-8 -Xlint:all true true -verbose 동적파일 생성(WAR 파일) maven-war-plugin 2.4 WebContent / **/*.jsp **/*.xlsx **/*.xml 정적 리소스 분리 maven-resources-plugin 2.7 copy-resources validate copy-resources utf-8 ${basedir}/target/extra-resources Web.. 더보기
jsp session 생성과 삭제 체크하여 처리하기(중복 로그인 방지, 접속자 확인) 기본적으로 HttpSessionListener를 구현(Implements)하여 세션이 생성 되는 시점과 세션이 사라지는 시점을 가지고 올 수 있다. 세션을 생성 되는 시점에 DB나 특정 Static 변수에 세션 정보를 저장 하고 세션이 종료될 때 그 세션 정보를 지워 줌으로써 해당 세션의 중복 로그인을 막을 수 있으며 현재 접속중이 접속자 정보를 가지고 올 수 있다. package com.moainfo.http.session; import javax.servlet.http.HttpSession; import javax.servlet.http.HttpSessionEvent; import javax.servlet.http.HttpSessionListener; public class MoaSessionList.. 더보기
세션 강제 종료(강제 로그 아웃) Servlet 버젼이 올라 감으로 HttpSession에서 HttpSessionContext을 가져오는 메소드인 getSessionContext를 사용 못하게 되었다. 실제 사용을 하면 객체을 반환을 하기는 하지만 객체 안에 세션은 비워져 있다. 문서를 뒤져 보니 보안 관계상 사용을 못한다고 어쩌고 적혀 있기는 하는데.....그래도 관리자가 강제 로그아웃 시키거나 세션을 지워줘야 할 경우가 있을 것 같아서 고민끝에 편법을 하나 생각 해 냈다.(Jeus에서는 된다는 말도 있음) HttpSessionContext 사용이 가능 하다면 HttpSessionContext .getSession(아이디)를 사용하여 세션 객체를 반환받고 HttpSession.invalidate() 메소드를 호출 하면된다. HttpSe.. 더보기
Spring 3.0.5 + Spring MVC(WEB) 3.0.5 + MyBatis 3.0.4 + ehcache2.4.2 + tiles2.2.2 + log4j 1.2.13 이번 프로젝트를 진행 하면서 최신버젼으로 셋팅을 해 보았는데 문제가 참 많았다. iBatis에서 MyBatis로 바뀌면서 xml dtd도 바뀌고 실행 메소드도 바뀌고 참 머리가 아프다. 거기에 ehcache 사용으로 인해서 MyBatis와 Logging 문제로 하루종일 셋팅하고 참 진짜 너무 어렵다. 각 설정했던 상황은 다음과 같다. /WEB-INF/web.xml MOA IT PROJECT encoding org.springframework.web.filter.CharacterEncodingFilter encoding UTF-8 encoding /* org.springframework.web.context.ContextLoaderListener webAppRootKey codelabor-spring-mv.. 더보기
DAO와 VO (Database Access Object & Variable Object or Value Object) DAO를 풀어보면 Database Access Object로써 DB에 접근하여 무언가를 행하는 클레스입니다. VO는 Variable Object(Value Object)로 DB 혹은 어떠한 물체 틀(형상화)을 잡고 이 틀을 잡기 위한 변수들을 모아둔 하나의 클레스트 입니다. 회원 DAO와 회원 VO의 구조를 보자면 다음과 같음. UserDAO.java public class UserDAO extends BaseDAO { private static UserDAO Instance = new UserDAO(); private static Log logger = LogFactory.getLog(UserDAO.class); // 인스턴스 public static UserDAO getInstance() { retu.. 더보기
제 10회 한국자바개발자 컨퍼런스 더보기
struts에서 Foward 사용하기 이번에는 Action (Foward)에 대해 배우겠습니다. 이것은 별도의 Class를 걸치지 않고 바로 view 페이지로 이동할 때 쓰입니다. 이번에 우리는 Hello Struts! 문장이 출력되는 JSP 페이지와 연결 하여 요청이 들어오면 Struts를 통해서 해당jsp 파일이 보여지도록 만들것입니다. 별다른 비지니스로직이 처리되는것이 아닌 바로 프리젠테이션로직으로 이동하는 것입니다. 순서는 다음과 같습니다. 1. jsp 파일 생성 2. struts-config.xml에 action 등록 3. 실행 아주 간단합니다. 특별한 비지니스 로직을 통하지 않으므로 Class를 만들 필요도 없구요. 1. Eclipse에서 jsp파일을 한개 만듭니다. 파일명은 helloStruts.jsp로 하겠습니다. 편의를 위해.. 더보기
JDK 5.0 + Tomcat 이클립스 개발환경에서 Struts (1.3.8) 설치 하기 JDK 5.0 + Tomcat 이클립스 개발환경에서 Struts (1.3.8) 설치 하기 엄청 오랜만에 글을 쓰게 되었네요~ 예전부터 계획했던 스트럿츠와 관련된 내용입니다. 한달동안 훈련소를 갔다가 오고 이것저것 하다 보니 시간이 많이 지나버렸네요! 오랜만에 Struts 홈페이지를 보니 1.3.8로 업그레이드가 되었더군요~ 이전에 마지막에 써봤던 버젼이 1.2.9 였는데... 말이죠~ 우선 기반은 1.3.8 기반으로 설명 하겠습니다. 우선 JDK와 Tomcat에 깔여 있고 툴은 이클립스 기반으로 하겠습니다. 설치 순서는 다음과 같습니다. 1. Struts 다운로드 2. 필요한 jar 파일 프로젝트의 WEB-INF 밑에 LIB 폴더에 복사(라이브러리 등록) 3. WEB.XML 파일 작성 4. Struts .. 더보기
MyEclipse에서 Xdoclet을 이용하여 sesstion bean 만들기 For weblogic 8 #2 MyEclipse에서 Xdoclet을 이용하여 sesstion bean 만들기 For weblogic 8 #2 http://www.definejava.net/ @ ALT MyEclipse에서 Xdoclet을 이용하여 sesstion bean 만들기 For weblogic 8 #1에서 Xdoclet을 이용하여 배포에 필요한 xml과 class 파일을 생성하였습니다. 이제 실제로 Weblogic Server에 Application을 배포하여 이것이 잘 돌아가는지 확인 해 보겠습니다. 우선 MyEclipse에 Weblogic 서버 설정이 되어있어야 합니다. 설정 하는 방법은 우선 따로 정리하지 않고 나중에 다시 강좌를 한개 더 쓰겠습니다. 설정이 되어있다는 가장하에 진행하도록 하겠습니다. Server정보에 W.. 더보기
MyEclipse에서 Xdoclet을 이용하여 sesstion bean 만들기 For weblogic 8 #1 MyEclipse에서 Xdoclet을 이용하여 sesstion bean 만들기 For weblogic 8 #1 http://www.definejava.net/ @ ALT 이번에는 마이이클립스에서 Xdoclet을 이용하여 EJB 무상태 세션 빈을 만들어서 웹로직 8에 배포하는 과정을 적어 보았습니다. 우선 프로젝트를 생성하겠습니다. 새 프로젝트 중 Enterprise Application Project를 선택합니다. EJB 프로젝트를 따로만들거나 WEB 프로젝트를 따로 만들어서 상관 없습니다. Project Name에 알맞은 이름을 주시고 J2EE 버젼을 1.3으로 체크합니다. 웹로직 8에서는 1.3을 지원하는거 같더군요. 1.4 버젼으로 컴파일 했을 경우 오류가 떳었습니다 밑에 Creation tasks.. 더보기