WEB Application

20/09/18 웹 프로그래밍 (slf4j, 페이징 처리, DataTables)

Tech Signal 2020. 9. 18. 17:39

오늘의 포스팅은 라이브러리 설치 및 응용 위주입니다~!

mvnrepository.com/artifact/org.lazyluke/log4jdbc-remix/0.2.7

SLF4J (Simple Logging Facade For Java)를 써봅시다

1. 일단 먼저 설치!

org/slf4j: group ID/ 그 아래있는것들: artifact ID

2. Pom.xml에 dependency 추가하고 만약 Log4j, SLF4j 2개라면 commons-logging에서는 exclude Maven artifact하기.

   Log4j, SLF4j 각각 하나씩 해서 리모컨(파사드) 2개 근데 둘 중 하나만 써야됨. 

3. log4j2.xml 이라는 이름의 파일을 만들어 SLF4j 설정

   - Appender: 어디에 출력할건지 (콘솔인지, 파일 내부인지 등등)

               1. 인덱스 필요

               2. 통계 필요

               => JDBC appender를 사용해 log를 DB에 등록 가능

   - Layout: 어떤 포맷? 

   - Logger

log4j2.xml

***Logger로 로깅을 원하는 패키지를 정해줄 수 있다.

e.g. kr.or.ddit, jdbc.sqltiming...

아래 사진의 경우 jdbc.sqltiming이 쿼리의 실행 시간을, jdbc.resultsettable의 경우 쿼리의 실행 결과를 테이블로 로그찍어줌

4.(optional) Download Artifact Sources해제하기. 부하 덜 걸림


<DataTables>

datatables.net/

- jQuery에서 손쉽게 데이터가 들어간 테이블을 만들 수 있다.

- 전체 데이터를 가져오고 클라이언트 사이드에서 처리를 함

- 최대 10000건. 

테이블에서 다른 페이지 눌러도 요청 안들어옴 = 정보가 모두 클라이언트에게 있다. = 클라이언트 사이드에서 처리 중 

****테이블을 위해 xml(쿼리)를 수정해야할 땐 OGNL을 사용하자.

<if test="@static method의 qualifiedName @메소드이름(변수) > 를 씀으로써 해당 메소드를 통과한 경우(if)에만 아래 쿼리를 실행한다.

 

페이징처리할 때 항상 필요한 쿼리들 

   1. total record 조회할 쿼리문

   2. data 조회할 쿼리문