본문 바로가기

프로그래밍28

쿼리 결과 xml, xls 파일로 특정경로 업로드하기 아래 소스는 doc 구조를 string 으로 변환해주는 메소드. 맨 아래 메소드 리턴에 변환해서 사용하기 위해 필요. // doc -> string 으로 변환 메소드 String output = ""; TransformerFactory tf = TransformerFactory.newInstance(); Transformer transformer = null; try { transformer = tf.newTransformer(); transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes"); StringWriter writer = new StringWriter(); transformer.transform(new DOMSource(doc),.. 2020. 9. 15.
스프링 배치. 그리고 스케줄러, Quartz 스프링 배치 스프링 배치는 대용량데이터를 자동화하여 일괄처리 할 때 사용한다. 주기적으로 실행을 위해서는 스프링 스케줄러, Quartz 를 이용하면 된다. 배치 작업의 단위는 Job이라고 부른다. 이 Job 을 스케줄러나 Quartz를 이용해서 주기적으로 실행해준다. Job은 최소 하나의 step을 가져야 한다. step은 읽기 > 가공하기 > 쓰기의 묶음이다. ItemReader ( 읽기 ) > ItemProcessor ( 가공하기 ) > ItemWriter ( 쓰기 ) 그냥 하나의 트랜잭션으로 이해하면 된다. ( 데이터를 읽고 로직을 수행하여 가공하고 DB에 입력이나 업데이트 ) 스프링 배치의 장점 - 대용량 데이터 처리에 최적화되어 고성능을 발휘한다. - 효과적인 로깅, 통계처리, 트랜잭션 관리 등.. 2020. 3. 26.
@Transactional / 트랜잭션 트랜잭션 정의 트랜잭션(Transaction)은 데이터베이스(DB)의 상태를 변환시키는 하나의 논리적 기능을 수행하기 위한 작업의 단위 또는 한꺼번에 모두 수행되어야 할 일련의 연산들을 의미한다. 트랜잭션 사용 이유 DB에 insert, update 등 작업을 여러번 하게되는 로직이 있을 경우 중간에 실패하게되면 잘못된 값이나 필요없는 값이 저장될 수 있다. 이 경우 트랜잭션을 사용하여 모든 로직이 정상적으로 완료되지 않는다면 Rollback 하거나 모두 완료되야만 Commit 하여 데이터의 잘못된 저장을 막을 수 있다. 스프링에서 사용방법 어노테이션 @Transactional 을 이용할거면 손쉽게 설정 후 사용가능하다. xml에 아래 내용만 추가해주면 된다. 주요 속성 isolation -> Trans.. 2020. 3. 16.
JAVA 핫스왑 해주는 것들 로컬에서 JAVA 파일을 수정하게 되면 서버가 재시작하게 된다. 재시작 없이 바로 수정된 JAVA 파일이 반영되게 하려면 핫스왑 해주는 것들을 사용하면 된다. 그 중 3가지는 아래와 같다. * jrebel : 유료 * spring loaded : 무료. 안먹히는 경우 몇 가지 있음. debug 관련... * DCEVM : 무료. jdk버전에 맞춰서 릴리즈가 있고 한정적이다.. 2020. 3. 11.