본문으로 바로가기

19/01/03​

category 수업내용 정리/정리안된 메모 2019. 6. 16. 21:01

19/01/03

[멍청한 메이븐 고치기]

-Maven이 pom.xml에 선언한 라이브러리를 다운받아서 사용하는데, 가끔 다운로드가 제대로 안될 때가 있다.

(1) 다운로드 자체가 안됨

(2) 다운로드는 됐는데 기능 일부가 빠짐 

(3) 클래스는 다운로드 됐는데 제대로 동작 안함

시도할 수 있는 것

1. 프로젝트 우클릭 > maven > update project

 심화과정 ​

 1-1 프로젝트 우클릭 > maven > disable maven nature

 1-2 프로젝트 클린

 1-3 디펜던시 재설정

 1-4 프로젝트 우클릭 > maven > update project​

2. Maven이 다운로드 받은 라이브러리 삭제하기 

기본경로 : C:\Users\사용자ID\.m2\repository

스프링경로 : C:\Users\사용자ID\.m2\repository\org\springframework

[JUnit을 활용해서 테스트 하는 방법]

JUnit 라이브러리 

https://mvnrepository.com/artifact/junit/junit/4.12

Spring TestContext Framework 라이브러리 :

https://mvnrepository.com/artifact/org.springframework/spring-test/4.3.18.RELEASE

*pom.xml에 등록할때 <scope> 속성은 주석 처리 하고 사용하기

이미지0) 기존 방법으로 테스트 하는 모습

이미지1) JUnit과 TestContext를 활용한 코드

@RunWith(SpringJUnit4ClassRunner.class) : '테스트를 실행할 때 스프링에서 JUnit을 실행하겠다.' 라는 선언

@Autowired (의존성주입)을 하려면 dao 객체가 선언된 스프링컨테이너가 있어야 한다.그렇기에

@ContextConfiguration("file:src/applicationContext.xml")를 통해서 스프링컨테이너 설정파일의 경로를 작성해준다.

@Test 테스트를 할 메서드를 지정해준다.

이미지2) 테스트 하기 

프로젝트폴더를 우클릭 하고 이미지 처럼 JUnit Test를 클릭해준다.

이미지3) 테스트 결과

위 이미지 처럼 초록색 바가 보이면 성공적으로 해당 메서드가 동작 한 것이며, 테스트에 실패하면 붉은색으로 표시되고 어느 부분이 잘못되었는지 알려준다.

─나중에 정리─​

Log4j 2.x ver : 나중에 설명​

[로그남기기 : Log4j] : log4j는 프로그램의 로그를 남기기 위해 사용되는 자바 기반 로깅 유틸리티이다. 로그를 화면이나 파일로 출력할 수 있게 해준다.

위키백과 : https://ko.wikipedia.org/wiki/Log4j

블로그 설명 : http://cofs.tistory.com/354

라이브러리 : https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core/2.8.2

이미지0) log4j.xml 파일 만들어주기

사이트 : https://logging.apache.org/log4j/2.x/manual/migration.html

위 사이트에서 [Log4j 2 XML configuration ] 라는 부분에 있는 코드를 복사해서 xml 파일에 복붙​

구성요소 살펴보기

*(붉은색박스)Appender : 로그 출력형태 설정 

-화면(콘솔)출력할 것인지

-파일 출력(파일위치, 파일 생성조건) 등

*(파란색박스)Logger : 패키지 별 출력 레벨 설정

*(초록색박스)Layout : 출력패턴 정의(로그를 어떤 패턴으로 출력할지)

-메시지, 클래스, 시간 등의 표시를 어떤 식으로 표현할지 패턴으로 결정한다.

이미지1-1) 임포트 되는 객체를 잘 구분해야 한다. 

─나중에 정리 끄읏─​​

Log4j 1.x ver 

[로그남기기 : Log4j] : log4j는 프로그램의 로그를 남기기 위해 사용되는 자바 기반 로깅 유틸리티이다. 로그를 화면이나 파일로 출력할 수 있게 해준다.

위키백과 : https://ko.wikipedia.org/wiki/Log4j

블로그 설명 : http://cofs.tistory.com/354

라이브러리 : https://mvnrepository.com/artifact/log4j/log4j/1.2.17

출력 레벨 : 로그의 출력 성격 또는 중요도

FATAL  >  ERROR  >   WARN   >  INFO   >  DEBUG

INFO, DEBUG : 정보를 출력하거나  디버깅을 할 때 사용

이미지0) log4j.xml 파일 설정하기 *해당 파일은 src 폴더 하위에 들어가야 한다

사이트 : https://logging.apache.org/log4j/2.x/manual/migration.html

위 사이트에서 Sample 1 - Simple configuration using a Console Appender의 Log4j 1.x XML configuration 라는 부분에 있는 코드를 복사해서 xml 파일에 복붙​​

Log4j 구조

Logger(Category)

로깅 메세지를 Appender에 전달
log4J의 심장부에 위치
개발자가 직접 로그출력 여부를 런타임에 조정
logger는 로그레벨을 가지고 있으며, 로그의 출력 여부는 로그문의 레벨과 로거의 레벨을 가지고 결정

Appender

로그의 출력위치를 결정(파일, 콘솔, DB 등)
log4J API문서의 XXXAppender로 끝나는 클래스들의 이름을 보면, 출력위치를 어느정도 짐작가능

Layout

Appender가 어디에 출력할 것인지 결정했다면 어떤 형식으로 출력할 것이지 출력 layout을 결정

이미지1-1) 임포트 할 때 주의 할 것 

이미지1-2) 콘솔에 찍힌 로그

이미지2) 파일로 Log 출력해보기 : MemberAspect 클래스에 적용

1

2

3

4

5

6

7

8

9

10

11

12

<!-- 파일출력을 위한 설정 -->

<appender name="filelog" class="org.apache.log4j.DailyRollingFileAppender">

<param name="File"   value="c:/log/service.log" />

<param name="Append" value="true" />

<layout class="org.apache.log4j.PatternLayout">

<param name="ConversionPattern" value="%d %-5p [%t] %C{2} (%F:%L) - %m%n"/>

</layout>

</appender>

<!-- aop라는 패키지에 appender를 이용해서 log를 남기겠다 -->

<logger name="aop">

<appender-ref ref="filelog"/>

</logger>

Colored by Color Scripter

cs​

코드0-1)

이미지2를 참고하여 코드0-1 복사

이미지3) 

이미지4-1)결과

이미지4-2)파일Log 결과

블로그 보고 연습하자

블로그 설명 : http://cofs.tistory.com/354​​

블로그 설명 (예제포함 ) : http://blog.naver.com/PostView.nhn?blogId=minsuk0123&logNo=44844469&parentCategoryNo=&categoryNo=50&viewDate=&isShowPopularPosts=true&from=search

'수업내용 정리 > 정리안된 메모' 카테고리의 다른 글

Dispatcher Servlet(Front-controller) 등록하기  (0) 2019.06.16
19/01/04​  (0) 2019.06.16
19/01/02  (0) 2019.06.16
[MyBatis와 Spreing 연동하기]  (0) 2019.06.16
18/12/31​  (0) 2019.06.16