JAVA(65)
-
[JAVA] 자동리소스 닫기
JAVA 7 버전이후 부터 추가된 항목으로java.lang.AutoCloseable 사용한 객체들은 close() 없이 자동을 안전하게 리소스를 닫아 준다. 예를 들어 poi의 XSSFWorkbook 의 경우JAVA 6에서는 XSSFWorkbook workbook = null;try {workbook = XSSFWorkbook(upFileStream);...} finally {workbook.close();} 이렇게 객체를 해제해 줘야 했으나 JAVA 7부터는 XSSFWorkbook workbook = null;try {workbook = XSSFWorkbook(upFileStream);...} finally {} Close 없이 자동 해제됩니다. XSSFWorkbook API를 보면 org.apache..
2018.08.02 -
[Spring] jar 파일 안에 있는 css 또는 javascript 사용하기
Java Configuration을 사용할 경우public class WebMvcConfig extends WebMvcConfigurerAdapter {@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) {registry.addResourceHandler("/resources/**").addResourceLocations("/resources/","classpath:/META-INF/resources/resources");}} xml 설정을 사용할 경우
2018.07.04 -
[Spring] RequestParam으로 배열 처리
- ajax로 보낼 경우@RequestParam(value="arr[]" String[] arr) - get 또는 post로 보낼 경우@RequestParam(value="arr" String[] arr)
2018.06.19 -
[AOP] Data 저장 시 로그정보 남기기 - @Around
Data를 저장 시 저장되는 모든 정보를 이력으로 남겨 놓기 위하여 작성했습니다. 말들이 하도 많아서...ㅜㅜ import java.lang.reflect.Method;import java.util.Enumeration; import javax.annotation.Resource;import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.ArrayUtils;import org.apache.commons.lang3.StringUtils;import org.aspectj.lang.ProceedingJoinPoint;import org.aspectj.lang.annotation.Around;import org.aspectj.lan..
2018.05.11 -
[Spring] Gradle Multi Web 프로젝트 생성
Gradle의 멀티 프로젝트를 이용하여 모듈식 웹 프로젝트를 만들고 싶었다. 공통 부분과 그렇지 않은 부분을 업무별로 구성하여 각 프로젝트마다 필요한 업무를 조합하여 제공하고자 하는것이 목표였다. 열심히 구글링을 하였으나 멀티 프로젝트를 만드는 것은 많이 있지마 웹을 처리하는 방식은 없었다. 그래서 그냥 한번 이것 저것 찾아 보면서 한번 만들어 보기로 했다. 1. 전체 프로젝트 구조 프로젝트의 순서는 다음과 같이 정의 했다. kamsi-system을 기본으로 하여 하위 프로젝트는 다음 순과 같이 정의를 하였다. kamsi-common > kamsi-planner kamsi-common을 kamsi-planner에서 Import 하여 배포하는 프로젝트라고 정의 했다. 2. Root Project 2.1. ..
2018.05.03 -
[JAVA] 압축 파일 생성 및 풀기
apache.commons.compress 받는곳 https://commons.apache.org/proper/commons-compress/download_compress.cgi import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; impo..
2018.05.03