본문 바로가기

Programming/JAVA

(20)
tomcat 사용시 java.lang.OutOfMemoryError: PermGen space 윈도우에서는 문제가 없었는데 iMac을 사용하면서 톰캣을 사용하려고 보니 문제가 생겼다. 첫 페이지는 잘 뜨는데 디비에 접속하는 부분이 있는 로그인을 하게 되면 오류가 발생하는 것이다.그것도 흔한 OutOfMemory.... 많이 본 내용이라 매번 하던 것 처럼 Eclipse.ini를 변경했다. --launcher.XXMaxPermSize 256M -Xms256m -Xmx512m -XX:PermSize=64m -XX:MaxPermSize=256m 이렇게 변경하고 해봐도... 오류는 없어지지 않았다. 아무리 생각해도 tomcat은 이클립스와는 별개여서 다른 설정이 적용되는 것 같다. 톰캣 VM설정에 PermSize를 넣어 주면 정상적으로 동작하게 된다. -XX:PermSize=64m -XX:MaxPermS..
Spring controller 에서 특정 url로 redirect 하기 특정 view가 아닌 URL로 redirect 할 필요가 있다.아래와 같은 방법으로 하면 된다.절대 @ResponseBody를 붙이면 안 된다.@RequestMapping("/redirect") public String redirect(@RequestParam("url") String url) { return "redirect:" + url; } 출처 : http://stackoverflow.com/questions/9311940/redirect-to-dynamic-url-in-spring-mvc
[Spring] 이제 시작인가... 새로운 회사에 들어 와 새로운 프레임워크를 사용하게 되었습니다. 이미 많이 사용하고 있는 Spring Framework 3 입니다. 한달이 다 되어 가지만 기본 구조도 제대로 모른체 끼어 맞추기 식으로 계속 코딩을 해 왔습니다. 일정을 길게 잡고 해도 눈치가 보이고 스스로 기분이 안 좋아 졌습니다. 내가 이 정도 밖에 안 되나? 라는 생각을 많이 하게 됩니다. 그래서 회사에 있던 '스프링 인 액션' 책을 펼쳤습니다. 책을 읽으면서 정리할 것을 간단히... 아주 간단히 정리해 보려고 합니다. 혼자 맘 내키면 하는거라 언제 정리를 안 하게 될지는 모르겟으나.. 일단 시작합니다. 1. Bean or Java Bean 두개는 같은 말이며 자바에서 컴포넌트를 가르키는 말이다. 2. POJO (Plain-Old J..
Mocktio 에서 void 매소드 테스트 JUnit test에서 void 매소드를 테스트하고 싶을때 기본적인 when().thenReturn() 으로는 테스트가 불 가능합니다. 다음과 같은 방법을 사용하면 void 매소드도 테스트 가능합니다. MyClass myClass = mock(MyClass.class); doCallRealMethod().when(myClass).funA(anyString()); funA - mock object가 실행할 void method
실행 중인 class의 경로 구하기 현재 실행 중인 class 파일의 절대 경로 구하기 String path = MyClass.class.getResource(".").getPath(); 출처 : http://mrjh.com/wiki/content.php?no=211&page=5
STS crash - org.eclipse.swt.SWTError: Invalid thread access STS를 실행하면 다음과 같은 오류가 발생합니다.org.eclipse.swt.SWTError: Invalid thread access 이 문제를 해결하기 위해서는 다음의 파일을 삭제해 주면 됩니다.\workspace\.metadata\.plugins\org.eclipse.core.res ources\.snap
[Java] 실수형 소수점 실수형 데이터에서 소수점을 제한해서 표현하고 싶을때!!!! 예를 들어 소수점 둘째 자리까지만 표기하고 싶을때!! 그럴때 사용하는 함수가 있습니다. DecimalFormat 여기에 간단한 사용법을 남김과 동시에 버릴 소수점을 어떻게 처리하는지도 비교할수 있도록 같이 올립니다. setRoundingMode 메소드가 처리하는 방법을 설정하는 함수 입니다. import java.math.RoundingMode; import java.text.DecimalFormat; public class Test { public static void main(String[] args) { DecimalFormat df = new DecimalFormat("0.##"); double num[] = {1.977, 1.975, 1..
Collections.sort 을 이용한 객체 정렬 ABC.java Test.java - Output - list를 정렬하는 방법을 찾다가 찾은 방법입니다. CompareTo Method를 이용해서 두 객체의 비교가 일어납니다. modified mergesort 가 이용되고 stable이 유지되며 O(n^2) 은 피하며 nlog(n)이 보장된다고 합니다.