Back/Spring

    Maven Private 리포지토리 이용하기 private Setting.xml  작성

    Maven Private 리포지토리 이용하기 private Setting.xml 작성

    내부 리포지토리를 이용할때 VPN 등으로인해 Setting.xml 및 Pom.xml 을 수정하여 접근하는 방법을 기술한다. setting.xml 작성 # 현재 maven-central 에서만 라이브러리를 가져오고있는데 사내 리포지토리의 계정을 setting.xml에 등록하여 인증을 통해 라이브러리를 가져오게 한다 lib-snapshot client-user client-user-1234 lib-release client-user client-user-1234 # '/user_name/.m2'에 작성한 setting.xml 을 수정하여도 되고 본인이 원하는 위치에 작성후 IDE 에서 경로를 등록하여도 된다. 경로 등록 예시는 아래와 같다. pom.xml 파일 작성 리포지토리의 ID와 PW를 setting...

    Mock이란

    Mock이란 ? 실제 객체를 만들기엔 비용과 시간이 많이 들거나 의존성이 길게 걸쳐져 있어 제대로 구현하기 어려울 경우, 가짜 객체를 만들어 사용하는데 이것을 Mock이라 합니다. Mock 객체는 언제 필요한가? 테스트 작성을 위한 환경 구축이 어려운 경우 환경 구축을 위한 작업 시간이 많이 필요할 때 Mock객체를 사용합니다. (데이터베이스, 웹서버, FTP서버 등) 아직 개발되지 않은 모듈을 사용하는 테스트가 필요할 때 사용합니다. 테스트가 특정 경우나 순간에 의존적인 경우 테스트 시간이 오래 걸리는 경우 Mock에 대한 기본적인 분류 1. 테스트 더블 테스트를 진행하기 어려운 경우 이를 대신해 테스트를 진행할 수 있도록 만들어주는 객체를 말합니다. Mock객체와 유사한 의미를 가지며 테스트 더블이 ..

    Jenkins 빌드 / 배포 자동화 구현하기 _ Maven Project

    Jenkins 빌드 / 배포 자동화 구현하기 _ Maven Project

    > JenKins 란 ? 젠킨스는 소프트웨어 개발 시 지속적으로 통합 서비스(Continuous Integration 이하 CI)를 제공하는 툴 하나의 프로그램 개발 시 버전 충돌을 방지하기 위해 각자 작업한 내용을 공유영역에 있는 저장소에 지속적으로 업로드 함으로써 지속적 통합 소스의 커밋을 감지하면, 자동적으로 자동화 테스트가 포함된 빌드가 작동하도록 구성 가능 Java Runtime Environment에서 동작 다양한 플러그인들을 활용해서 각종 자동화 작업을 처리 AWS 배포, 테스트, 도커 빌드 등 할게 너무 많으니 각각의 컴포넌트들을 하나의 플러그인으로 모듈화를 해놓았는데 이를 활용하여 사용 플러그인들을 잘 조합해서 돌아가게 하는 게 Pipeline, 일련의 자동화 작업의 순서들의 집합인 Pi..

    Maven 이란? 개념 , 특징 , 정의

    Maven 이란? 개념 , 특징 , 정의

    # 회사 과제중 Maven 을 이용해 사설 저장소를 띄워보는 작업을 진행했다. 그 과정에서 maven에 대하여 다시 공부를 진행하였고 내가 maven 에 대하여 잘 알지 못하는것 같아 다시 한번 정리한다. Maven이란? ● Maven은 프로젝트 관리도구 , 즉 빌드도구로서 프로젝트의 전체적인 라이프 사이클을 관리하는 도구 이며 많은 편리함과 이점으로 인해 널리 사용되고 있다. ● 프로젝트 객체모델 (project object model:pom) 이라는 개념을 바탕으로 프로젝트의 의존성관리, 라이브러리관리, 프로젝트 라이프사이클 관리 기능등을 제공하는 프로젝트 관리도구 이다. 플러그인을 기반으로 소스코드부터 배포가능한 산출물을 만들어내는 빌드 기능을 제공한다. # 빌드란 소스코드파일을 컴퓨터에서 실행할 ..

    @Component , @Autowired ?? 사용하는 이유

    😕 @Component를 사용하는 이유? ● 첫번째 : Class 를 일반생성 하게되면 bean을 스캔하지못하며 스프링컨테이너에서 등록하지 못합니다. 따라서 @Component (like @Service@Controller)등을 사용하여 bean을 스캔하여 등록할수 있도록 합니다. ● 따라서 PASS 와같은 프로젝트에서는 Spring 을 사용하고 있기때문에 스프링 컨테이너에서 WAS시작시에 bean을 생성하고 요청이 들어오더라도 같은 bean을 주입만 해주고 다시 생성하지않기에(singleton) 서버성능에 좋습니다. ★ 반면 일반클래스에서 생성할때 요청하나당 5개의 객체를 생성한다고 가정시 요청이 500개가 올경우 2500개의 객체를 생성하게 되므로 서버의 성능이 저하됩니다. 또한 aop에서 compo..

    Spring] AOP LOG 파일에 저장하기

    Spring] AOP LOG 파일에 저장하기

    aop로 logging을 할때 단순히 로그만 콘솔에 띄우지않고 파일로도 저장이 가능하다. 파일로 저장하는 설정을 공유해보겠다. 환경: 전자정부 프레임워크 3.10 : spring 4.3.25 1. 의존성 추가 org.apache.logging.log4j log4j-api 2.13.0 org.apache.logging.log4j log4j-core 2.13.0 # pom.xml 에 의존성을 추가해준다 2. log4j2.xml 작성 C:/log/mylog.txt C:/log/%d{yyyy-MM-dd-hh-mm}/mylog.zip %d{yyyy-MM-dd HH:mm:ss} %5p [%c] %m%n C:/log/mylog_error.txt C:/log/%d{yyyy-MM-dd-hh-mm}/mylog_error...

    Spring mvc 환경에서 aop : logging 적용예제

    Spring mvc 환경에서 aop : logging 적용예제

    Spring mvc 환경에서 aop 를 이용해 logging을 컨트롤러에서 함수실행시 request와 결과값을 log로 남겨주었다. >환경 : 전자정부프레임워크 3.10 , Spring 4.3.25 1. AOP를 위한 설정 # IN pom.xml org.springframework spring-aop 4.3.25.RELEASE org.aspectj aspectjrt 1.8.14 org.aspectj aspectjtools 1.9.9 aop 와 aspectj 언어를 사용하기위해 의존성을 추가한다. # IN dispatcher-servlet.xml 2. AOP 구현 # loggingAspect class 작성 : 이곳에서 aop 함수를 작성한다. package idmcs.api.pub.rrc.provider..

    Spring Mvc 기반 api 예외처리

    Spring Mvc 기반 api 예외처리

    Spring MVC 기반 api 예외처리입니다. api 작성시 컨트롤러로 값이 넘어오기전에 미디어타입이 맞지 않거나 잘못된 형식으로인해 bad 404 에러가 나는 경우가 있습니다. 따라서 web.xml 및 설정파일등을 통해 예외를 잡겠습니다. 환경 : 전자정부프레임워크 3.10 / spring 4.3.25 @Controller public class ExceptionController { @Autowired RequestRrcQrError qrError; RequestRrcQrRetData empty = new RequestRrcQrRetData(); @RequestMapping(value = "/error", method = RequestMethod.POST) @ResponseBody public Re..