전체 글
-
[Spring] log4j 설정파일 정보2014.01.17
-
svn share 서버로 프로젝트 추가2014.01.17
-
java e.printStackTrace 로그 남기기2014.01.17
-
[Java] ImageIO 활용한 이미지 저장2014.01.17
-
[Spring] Spring Login Interceptor 설정2014.01.17
-
[Spring] Spring Ajax 사용 위한 JsonView 설정2014.01.13
[Spring] log4j 설정파일 정보
[1] log4j 구조 log4j는 크게 3가지의 큰 뼈대를 가지고 있다.
<appender name="console" class="org.apache.log4j.ConsoleAppender"> <param name="Target" value="System.out" /> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss}] %5p [%C{1}.%M():%L]:%m%n" /> </layout> </appender> <appender name="FILEOUT" class="org.apache.log4j.DailyRollingFileAppender"> <param name="Threshold" value="DEBUG" /> <param name="File" value="/Logs/BD/log.log" /> <param name="DatePattern" value="'_'yyyy-MM-dd-HH" /> <param name="Append" value="true"/> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%d{yyyy-MM-dd HH:mm:ss}] %5p [%C{1}.%M():%L]:%m%n" /> </layout> </appender>
(2) Logger
<logger name="com.home.social"> <level value="info" /> </logger> <logger name="com.zz"> <level value="DEBUG" /> </logger> <logger name="java.sql.Connection" additivity="false"> <level value="DEBUG" /> </logger> <logger name="java.sql.Statement"> <level value="DEBUG" /> </logger> <logger name="java.sql.PreparedStatement"> <level value="DEBUG" /> </logger> <logger name="java.sql.ResultSet"> <level value="DEBUG" /> </logger>
'Programming > Spring' 카테고리의 다른 글
[Spring] Environment와 @PropertySource (0) | 2014.02.05 |
---|---|
뷰 이름 명시적 지정 :ModelAndView와 String 리턴 타입 (1) | 2014.02.04 |
[Spring] Spring Login Interceptor 설정 (0) | 2014.01.17 |
[Spring] Spring Ajax 사용 위한 JsonView 설정 (0) | 2014.01.13 |
java spring Maven 기반 개발환경 구성 (0) | 2013.04.30 |
svn share 서버로 프로젝트 추가
형상관리를 하는 이유는 혼자 개발하든 몇 백명이 같이 개발하던 자기가 고친 소스에 대한 이력의 중요성을 알기 때문이다. 갑자기 누가 내 소스를 수정하거나 지워져서 프로젝트에서 에러가 빵빵 터지기라도 하면.. 내가 안그랬다고 해도.. 이건 뭐 니가 고쳐놓고 잊어버린 거 아니냐라는 괜한 오해를 살지도 모르고 정말로 내가 고쳤었나 하는 자아 혼란(?)의 문제점이 있다. 결론은 모냐면 형상관리를 해야 한다는 것이고, 형상관리 서버에 집결된 소스는 모두 누군가가 다 수정하고 추가하고 삭제했었던 총체적 결과물이기에 자신의 소스를 보호해야할 권리가 있고 그 이력으로 자신이 했는지 안했는지 알 수 있다. 사실 내가 뭐했지는지 일주일만 지나면 까먹기도하니.. 형상관리는 더욱이 개발자에겐 필수적이다.
이클립스에서 SVN(subversion)서버로 프로젝트 추가를 해보자. 기존에 형상관리 되고 있는 프로젝트를 update 받는 게 아니라 최초 신규 프로젝트를 만들고 형상관리 서버에 처음 등록할 때 하는 일임을 명심한다.
1. 프로젝트를 신규 생성하고 몇개 소스 파일을 만들어 놓은, 형상관리 서버 어디에도 연결해놓지 않은 프로젝트가 하나 있다. 프로젝트명에서 우클릭해서 [Team]-[Share Project] 를 클릭하자.
2. 난 SVN 서버를 사용중이므로 SVN 클릭후 Next.
3. 기존 레파지토리(repository)를 사용할 꺼면 "Use existing repository location"을 클릭해서 Next. 나처럼 레파지토리를 따로 설정했다면 밑의 리스트에 없으므로 첫번째 "Create a new repository location" 을 선택후 Next.
4. 새로 만든 레파지토리 url 을 입력한 후 계정 아이디와 비밀번호 입력후 Next.
5. 그냥 난 Simple mode 로 했다.
6. 최초 프로젝트를 커밋할 때 커멘트를 쓰는 곳이다. 그냥 나두고 Finish.
7. 이젠 소스들을 commit 해서 형상관리 서버에 등록하는 것이다. 간단히 커멘트 달고 ok.
8. 프로젝트를 보니 옆에 SVN 서버에 연결된 url 정보를 볼 수 있다.
'Etc > Tool' 카테고리의 다른 글
[Eclipse] Console 한글 깨짐 설정 (0) | 2014.05.29 |
---|---|
[secureCRT] log scrollback buffer size 늘리기 (0) | 2014.01.27 |
Sonatype Nexus #2 : 설정 및 maven 과 연결하기 (0) | 2014.01.04 |
[eclipse] JRebel HotSwap 설정 (0) | 2013.12.17 |
[maven] maven + jenkins 연동 (0) | 2013.07.19 |
java e.printStackTrace 로그 남기기
e.printStachTrace 로그
e.printStachTrace 로그 JAVA 코딩 시 가장 많이 사용하는 코드로 예외 메시지 출력을 위해 사용한다.
try { // ... } catch(Exception e){ e.printStackTrace(); }
try { // ... } catch(Exception e){ StackTraceElement[] elem = e.getStackTrace(); for ( int i = 0; i < elem.length; i++ ) logger.error(elem[i]); }
'Programming > Java' 카테고리의 다른 글
올바른 eqals() 사용법 (0) | 2014.02.07 |
---|---|
[Java] split 문자열 나누기 (0) | 2014.02.05 |
[Java] ImageIO 활용한 이미지 저장 (0) | 2014.01.17 |
Java 성능 개선을 위한 Programming 기법 (0) | 2013.12.17 |
커스텀 DecoratorMapper를 이용한 SiteMesh URL 패턴 매칭 기능 확장 (0) | 2013.07.17 |
[Java] ImageIO 활용한 이미지 저장
JAVA ImageIO 객체 활용
ImageIO.write() 메서드 중 파일로 이미지를 생성하는 예제이다.
static boolean write(RenderedImage im, String formatName, File output)
String imagePath = "이미지경로..";
BufferedImage image = null;
//이미지를 읽어와서 BufferedImage에 넣는다.
'URL imgURL = getClass().getResource(imagePath);
'image = ImageIO.read(imgURL);
int width = image.getWidth();
int height = image.getHeight();
//파일명 자르기
String fileNm = imagePath.substring(imagePath.lastIndexOf("/") + 1);
try {
// 저장할 이미지의 크기와 타입을 잡아줌.
BufferedImage bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_BGR);
bufferedImage.createGraphics().drawImage(image, 0, 0, this);
// 해당경로에 이미지를 저장함.
ImageIO.write(bufferedImage, "jpg", new File("C:/saveImage/" + fileNm));
} catch(Exception e) {
e.printStackTrace();
}
'Programming > Java' 카테고리의 다른 글
[Java] split 문자열 나누기 (0) | 2014.02.05 |
---|---|
java e.printStackTrace 로그 남기기 (0) | 2014.01.17 |
Java 성능 개선을 위한 Programming 기법 (0) | 2013.12.17 |
커스텀 DecoratorMapper를 이용한 SiteMesh URL 패턴 매칭 기능 확장 (0) | 2013.07.17 |
SiteMesh 설정 및 사용법 (0) | 2013.07.16 |
[Spring] Spring Login Interceptor 설정
Spring Interceptor 설정
Spring login interceptor 설정을 위해 servlet.xml 설정 파일에 interceptor를 설정 합니다.
<bean id="loginUrlHandlerMapping" class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping">
<property name="order" value="1">
<property name="interceptors">
<list>
<ref bean="loginInterceptor"></ref>
</list>
</property>
</property>
</bean>
위와 같이 설정을 하고 Interceptor Class를 생성합니다.
@Service
public class LoginInterceptor extends HandlerInterceptorAdapter {
@Override
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
String path = request.getServletPath();
if(path.equals("/login.do")) {
return true;
} else {
@SuppressWarnings("unchecked")
Map<string, object> userMap = (Map<string, object>) request.getSession().getAttribute("userMap");
if(userMap == null) {
response.sendRedirect("/login.do");
return false;
} else {
return true;
}
}
}
}
login.do로 접근하는 url을 제외하고 세션을 체크하여 userMap에 데이터가 null 일 경우 login.do 페이지로 Redirect 처리를 수행합니다.
'Programming > Spring' 카테고리의 다른 글
[Spring] Environment와 @PropertySource (0) | 2014.02.05 |
---|---|
뷰 이름 명시적 지정 :ModelAndView와 String 리턴 타입 (1) | 2014.02.04 |
[Spring] log4j 설정파일 정보 (0) | 2014.01.17 |
[Spring] Spring Ajax 사용 위한 JsonView 설정 (0) | 2014.01.13 |
java spring Maven 기반 개발환경 구성 (0) | 2013.04.30 |
[Spring] Spring Ajax 사용 위한 JsonView 설정
Spring Ajax 설정
JsonView 설정을 이용하여 AJAX를 사용할 수 있게 설정하는 과정을 포스트 합니다.
pom.xml과 dispatcher에는 기본적으로 등록
net.sf.json-lib json-lib 2.4 jdk15 org.codehaus.jackson jackson-mapper-asl 1.6.4
DispatcherServlet XML 설정파일
-web.xml
action *.do action *.ajax
-TestController.java
@RequestMapping("/test.do")
public String test(@ModelAttribute("searchVO") CommentVO commentVO, ModelMap model) throws Exception {
return "test/test";
}
@RequestMapping("/test.ajax")
public ModelAndView testAjax(@ModelAttribute("searchVO") CommentVO commentVO, ModelMap model) throws Exception {
Map resultMap = new HashMap();
resultMap.put("result1", "test1");
resultMap.put("result2", "test222");
ModelAndView modelAndView = new ModelAndView("jsonView",resultMap);
return modelAndView;
}
'Programming > Spring' 카테고리의 다른 글
[Spring] Environment와 @PropertySource (0) | 2014.02.05 |
---|---|
뷰 이름 명시적 지정 :ModelAndView와 String 리턴 타입 (1) | 2014.02.04 |
[Spring] log4j 설정파일 정보 (0) | 2014.01.17 |
[Spring] Spring Login Interceptor 설정 (0) | 2014.01.17 |
java spring Maven 기반 개발환경 구성 (0) | 2013.04.30 |