자바 14

자바 날짜형식, 데이트 타입/포맷 확인

엑셀데이터를 읽어 들인 데이터가 날짜 포맷으로 변환이 가능한지에 대한 여부를 판단해야할 일이 생겼다. 자바 날짜 관련 클래서! SimpleDateFormat 를 사용하였습니다. SimpleDateFormat dateForm = new SimpleDateFormat("yyyyMMdd"); if (dateStr == null) return false; String format = null; try { format = dateForm.format(dateForm.parse(dateStr)); } catch (Exception e) { e.printStackTrace(); } return dateStr.equals(format); 위와 같이 지정하면 yyyyMMdd 가 아닐경우 parse 할 때 catch문으로..

개발/java,spring 2017.07.05

도메인, VO 객체 Serializable 직렬화

프로젝트를 진행하다보면도메인 혹은 VO객체에 implements Serializable를 하는 경우가 많다. 갑자기 이 행위를 왜 하는지 궁금해 졌다. 다른 네트웍 통신을 하지 않는데 사용하길래 더욱더 궁금해 졌다.그래서 간략하게 정리하게 됬었다. 직렬화란?JVM 힙영역에 존재하는 객체를 한 줄로 늘어선 바이트의 형태로 만드는 것!! 역직렬화란?객체의 형태로 복원하는 작업! java.io.Serializabe 인터페이스를 보면 구현해야 하는 메소드가 없다. 그 이유는 Serializable 인터페이스를 구현한 구현체가 직렬화 대상이다라는 것을 JVM에게 알려주는 역할만을 하기 때문이다. 결론은....속도와도 전혀 상관 없고해당 객체를 파일 또는 서블릿세션에 저장하거나 소켓/RMI로 보내야할때 구현해야 한..

개발/java,spring 2017.06.13

스프링 redirect 파마미터 처리

스프링에서 redirect를 사용할때 파라미터 값을 넘겨야 할 경우가 있다.예를들어xxx.do?id=mm&name=lee이렇게 하면 값은 가지만...url에 데이터값이 다 노출되기 때문에 먼가 꺼림직하다.그래서 데이터를 숨기면서 다른 controller로 보낼 방법을 검색하였다. 방법 1.RedirectAttributes 사용하기 인터페이스는 org.springframework.web.servlet.mvc.support.RedirectAttributes 값 전달하기 @RequestMapping(value="/test.do",method=RequestMethod.POST) public String test(HttpServletRequest req,@RequestParam Mapparams, ModelMap..

개발/java,spring 2017.03.20

삽입정렬(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]자바 날짜 계산(SimpleDateFormat, date, format)

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

개발/java,spring 2016.05.26

[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

[spring]스프링 aop 개념

스프링은 AOP 프레임워크 기능도 제공한다. AOP - Aspect Oriented Programming, 관점 지향 프로그래밍 관점 지향과 횡단적 관심사 분리○ 관점 - 소프트웨어가 갖는 다양한 특징이나 성질 ○ 공통 관심 사항(횡단관심사) - 어떤 특정 모듈에서만 필요로 하는 것이 아니라, 어플리케이션 전반에 걸쳐 필요한 기능 - Logging 기능, DB 트랜잭션 기능, 보안, 기타 등등 AOP 용어○ 어드바이스(Advice)- 관점으로서 분리되고 실행시 모듈에 위빙된 구체적인 처리- Advice가 어디에서 위빙하는지 Poincut이라는 단위로 정의- Advice가 위빙되는 인스턴스를 '대상객체'라고 부름- Advice 타입 before함수 실행전 advice를 실행 after함수가 종료(outco..

개발/java,spring 2016.04.16