개발/java,spring 45

삽입정렬(insert) 알고리즘_자바 구현

평소 알고리즘 공부를 해야지 ~ 해야지 하고 생각하고 있다가.드디어 정리를 하게 됩니다. 이번에 정리할 알고리즘은 insert, 삽입정렬 알고리즘 입니다. 기본적인 개념은 5,4,3,2,1위와같은 배열이 존재한다고 할때 5,4,3,2,1 ↑ 두번째 index를 기준으로 이전 숫자와 대소비교를 합니다.그래서 자기의 위치를 찾습니다. step014,5,3,2,1이렇게 정렬이 됩니다. step02그다음에는 3부터 시작하게 됩니다.4,5,3,2,1 ↑5가 3보다 크므로 3이 들어갈 위치를 찾습니다.3과 5비교 하여 정렬을 합니다. 4,3,5,2,1그리고 3과 4를 비교하여 정렬을 합니다. 결과 3,4,5,2,1 이런식으로 for문이 계속 돌게 됩니다. /** 1. 기준을 2번째 index로 잡는다. 2. 기준이..

개발/java,spring 2016.11.05

java 정규식 활용 (Patter, Matcher)

이번 프로젝트를 진행하면서 자바 정규식을 활용할 기회가 있었습니다.javascript에서의 정규식은 많이 접하고....활용하는 모습을 많이 볼 수 있었는데 자바에서 정규식 사용은 생소했는데요그러면서 접하게 된것이 Pattern과 Matcher 입니다.완전 처음들었어요.... 소스를 적어보면 String test = "가나다라마바 1 wkeflskehs 21 가모디낟 7 ABCDEF"; Pattern pattern = Pattern.compile("[\\d]"); Matcher matcher = pattern.matcher(test); int index=0; while(matcher.find()) { logger.info(matcher+"@@@@@@@@@@matcher.start()="+ matcher.s..

개발/java,spring 2016.09.16

java 문자열 구분, 자르기(split)

자바를 주로 사용하시는 분이라면 split() 함수를 사용해 보셨거나 익숙하게 접하게 되셨을 겁니다. 이 익숙한 것에....제가 된통 당했네요 ㅠㅠ문자열을 자를때 null값이나 값이 없는값! a,,b,c 이런식으로 되었을때 기본적은 split 함수String.split("문자") 라고 했을때 에러가 떨어집니다.... 어떻게 자를 수 있을까 구글링을 해보았습니다. 예제를 통해 바로 설명드리겠습니다. String test = "a,b,c,,,,d,";String regex = ",";int limit =0;String [] result = test.split(regex, limit); 라고 했을때 zero length string 무시가 됩니다. 결과 ----> {a,b,c} limit = 5; 일때배열의 ..

개발/java,spring 2016.09.07

[java] java Map 같은값이 들어갈경우

정말 어처구니 없는 일이 있었다... 사실 제가 너무 무지해서 발생했던 일입니다. 그래서 다시는 잊지 않기위해 포스팅 합니다. Map에 중복된 값이 계속 들어간다고 생각했던....그래서 멘붕에 빠진 날이 있었습니다. 상황은 이렇습니다. Map 객체 생성후 for문을 돌려 값을 채울려고 했습니다. Map param = new HashMap(); List testList = new ArrayList(); for(int i=0; i

개발/java,spring 2016.05.28

[java]자바 날짜 계산(SimpleDateFormat, date, format)

안녕하세요.오늘은 자바 날짜 계산 하는 법에 대해서 포스팅하겠습니다. 사실...플젝을 진행하면서 날짜를 계산해야 하는데...은근히 어렵더라고요...?예전에는 그냥 인터넷에 찾아서 붙여넣기 하면서 했었는데...ㅋㅋㅋ 그래서 이왕 하는김에 포스팅까지 하려고 합니다. 저의 진행 방법은!자바의 String 형을 날짜로 변환하여오늘의 날짜와의 차이를 구하려고 합니다. 소스 보시기전에SimpleDateFormat, Date 형에 대해서 알아보시면 좋을 것 같습니다.소스를 보면서 이해가 가실 테지만요. 그럼 소스 확인해 보겠습니다.---------------------String testDate = "20160421"; SimpleDateFormat formatter01 = new SimpleDateFormat("y..

개발/java,spring 2016.05.26

에러 : Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0

지금 적어두지 않으면 또 다시 이런 일이 발생했을때 구글링...할거 같아서 적어 둡니다. pom.xml에 com.oracle ojdbc14 10.2.0.4.0 를 추가하였는데, 이와같은 에러가 발생하였다. Missing artifact com.oracle:ojdbc14:jar:10.2.0.4.0 처음에 단순하게 dependency를 추가했을 뿐인데 이와같은 에러가 발생하여 당황하였다.... 그래서 구글링 검색 시작! 이유는 오라클과 메이븐의 라이센스 문제 때문에 메이븐의 저장소에서 받을수 없어 발생한다고 합니다. 해결법은, 태그 안에 mesir-repo http://mesir.googlecode.com/svn/trunk/mavenrepo 를 추가 하고 다시 com.oracle ojdbc14 10.2.0...

개발/java,spring 2016.04.28

[java]자바 스프링, spring AOP 구현 (xml 방식)

스프링에서 AOP를 테스트 해보겠습니다. 먼저 스프링에서 AOP를 구현하는 방법은 3가지 입니다. 1. xml을 이용한 방법 2. Annotaion을 이용한 방법 3. AOP API를 이용하는 방법(요즘 이용도가 떨어짐) 저는 xml을 이용한 방법과 Annotation을 이용한 방법을 포스팅 해보겠습니다. web.xml 설정 ApplicationContext 빈 설정contextConfigLocation classpath*:spring/*-context.xml 그리고 transaction-context.xml 파일을 생성하였습니다. 라이브러리 설정 그리고 라이브러리들을 사용하기위해 aop, context, tx를 선언하였습니다. tx는 트랜잭션을 이용하기위해 선언하였으므로 굳이 안적으셔도 됩니다! 그리고..

개발/java,spring 2016.04.21

[java spring]spring AOP 구현(Annotation 방법)

이번에는 Annotaion 방법을 이용하여 Spring AOP를 구현해보겠습니다. xml방법에서 transaction-context.xml 을 설정 했듯이 Annotaion 방식도 transaction-context.xml을 설정해야 합니다.우선 기존에 xml 방식으로 구현 하셨던 분은 aop 설정 선언문을 주석 처리 합니다. 그리고 @Aspect 어노테이션을 통해서 bean을 등록 시켜주게 하기위해 를 설정합니다. 그리고 AOP를 수행하는 클래스를 만들겠습니다. 저는 AnnotationAopTest.java로 만들었습니다. 이어서 테스트 했던 소스를 첨부하겠습니다.package lee.test.spring.aop; import java.util.Arrays; import org.aspectj.lang...

개발/java,spring 2016.04.16