API 목록
1. selectValue(String key)
BXM Web Admin의 설정 테이블인 BXM_COM_CFG 테이블에서 key로 value를 가져오는 API
String value = configValueDBIO.selectValue(BxmConfig.KEY_SAMPLE);
2. SessionUtil
세션에 저장된 정보를 받아오기 위한 API이다. bxm.web.admin.authority.service.AuthorityService에서 로그인할 때 세션을 생성해 로그인 정보를 담아두며, 로그아웃할 때 Session을 invalidate 한다.
2.1. getSession()
HttpSession httpSession = SessionUtil.getSession();
BXM Web Admin에서 세션에 담아 두는 정보는 다음과 같다.
키 | 값 설명 | 리턴 타입 |
---|---|---|
AdminConstant.SESSION_USER_ID |
사용자 ID |
String |
AdminConstant.SESSION_ROLE_ID |
역할 ID |
String |
AdminConstant.SESSION_LOCALE |
Locale 정보 |
String |
AdminConstant.SESSION_DOMAIN_ID |
Domain ID 정보 |
String |
2.2. getSessionUserId()
세션에 저장된 사용자 ID를 가져오는 API
String sessionUserId = SessionUtil.getSessionUserId();
2.3. getSessionRoleId()
세션에 저장된 역할 ID를 가져오는 API
String sessionRoleId = SessionUtil.getSessionRoleId();
3. DateFormatUtil
날짜 형식에 대한 API
3.1. getDateFormat23()
현재 시간을 "yyyy-MM-dd HH:mm:ss.SSS"의 형태로 출력해주는 API
String dateFormat = DateFormatUtil.getDateFormat23();
3.2. getDateFormat19()
현재 시간을 "yyyy-MM-dd HH:mm:ss"의 형태로 출력해주는 API
String dateFormat = DateFormatUtil.getDateFormat19();
3.3. getDateFormatForExcel()
현재 시간을 "yyyyMMddHHmmss"의 형태로 출력해주는 API
String dateFormat = DateFormatUtil.getDateFormatForExcel();
3.4. getDateFormatForParam()
현재 시간을 "yyyyMMddHHmmssSSSSSS"의 형태로 출력해주는 API
String dateFormat = DateFormatUtil.getDateFormatForParam();
3.5. convertStringToTimeFormat(String dttm)
일시 String을 일자 및 시간 형태로 출력해주는 API
입력 값이 "20170714" 8자리이면 2017-07-14, "20170714163000" 14자리이면 2017-07-14 16:30:00, "20170714163000238" 14자리 이상이면 2017-07-14 16:30:00.238로 출력해준다.
String dateFormat = DateFormatUtil.convertStringToTimeFormat(String dttm);
3.6. convertStringToFullDateFormat(String dttm)
시분초 String을 시간 형식 String으로 바꿔주는 API
입력 값이 6자리인 165020이면 16:50:20으로 변환해준다.
String dateFormat = DateFormatUtil.convertStringToFullDateFormat(String dttm);
3.7. getDateFormatForSystemDate()
시스템 날짜를 yyyy-MM-dd로 출력해주는 API
String dateFormat = DateFormatUtil.getDateFormatForSystemDate();
4. ListUtils
5. ExcelUtil
엑셀 다운로드, 빈형식 다운로드, 업로드에 대한 API
5.1. exportExcel( List<T> excelList, String fileNamePrefix, List<List<ExcelHeaderOption>> options)
엑셀 다운로드에 사용하는 API
입력 파라미터 | 설명 | 비고 |
---|---|---|
excelList |
엑셀 다운로드 받을 리스트 정보 |
|
fileNamePrefix |
엑셀 파일 이름의 prefix |
fileNamePrefix에 |
options |
엑셀 헤더 옵션에 대한 정보 |
헤더 옵션을 사용하지 않는다면 |
입력 파라미터 options이 List<List<ExcelHeaderOption>>처럼 이중 리스트 구조인 것은 헤더 옵션의 행 개수 제한을 두지 않기 위함이다. 하단의 exportEmptyExcel도 이와 같은 이유이다. |
아래 코드(헤더 옵션이 한 행만 추가된 예시)를 참고해 사용한다.
...
List<UserInfoExcelOMM> userInfoList = userInfoDBIO.selectUserAll();
//엑셀 헤더 샘플 코드.
List<List<ExcelHeaderOption>> headerOptions = new ArrayList<List<ExcelHeaderOption>>();
List<ExcelHeaderOption> headerOption = new ArrayList<ExcelHeaderOption>();
ExcelHeaderOption option = new ExcelHeaderOption();
//행의 열 번호는 0부터 시작한다.
option.setCellNumber(0);
option.setComment("사용자 정보");
headerOption.add(option);
option = new ExcelHeaderOption();
option.setCellNumber(3);
option.setComment("상세 정보");
headerOption.add(option);
option = new ExcelHeaderOption();
option.setCellNumber(7);
option.setComment("연락처");
headerOption.add(option);
headerOptions.add(headerOption);
String filePath = ExcelUtil.getInstance().exportExcel(userInfoList, "user_info", headerOptions);
...
5.2. exportEmptyExcel(T formatOmm, String fileNamePrefix, List<List<ExcelHeaderOption>> options)
엑셀 업로드를 위해 빈형식 다운로드를 받는 API
입력 파라미터 | 설명 | 비고 |
---|---|---|
formatOmm |
엑셀 컬럼 제작에 쓰일 OMM(Import시 사용할 OMM) |
|
fileNamePrefix |
엑셀 파일 이름의 prefix |
|
options |
엑셀 헤더 옵션에 대한 정보 |
헤더 옵션을 사용하지 않는다면 |
아래 코드를 참고해 사용한다.
...
//엑셀 헤더 샘플 코드
List<List<ExcelHeaderOption>> headerOptions = new ArrayList<List<ExcelHeaderOption>>();
List<ExcelHeaderOption> headerOption = new ArrayList<ExcelHeaderOption>();
ExcelHeaderOption option = new ExcelHeaderOption();
//행의 열 번호는 0부터 시작한다.
option.setCellNumber(0);
option.setComment("사용자 정보");
headerOption.add(option);
option = new ExcelHeaderOption();
option.setCellNumber(3);
option.setComment("상세 정보");
headerOption.add(option);
option = new ExcelHeaderOption();
option.setCellNumber(7);
option.setComment("연락처");
headerOption.add(option);
headerOptions.add(headerOption);
String filePath = ExcelUtil.getInstance().exportEmptyExcel(new UserInfoExcelOMM(), "user_info_empty", headerOptions);
...
5.3. importExcel(String filePath, Class<T> dataType, List<T> outputList, int startLine, boolean needRegInfo)
엑셀 업로드에 사용하는 API
입력 파라미터 | 설명 | 비고 |
---|---|---|
filePath |
대상 엑셀 파일 위치 |
|
dataType |
엑셀 파일 분석에 쓰일 OMM(빈형식 다운로드의 formatOmm과 |
|
outputList |
분석된 데이터를 담는 리스트 |
|
startLine |
엑셀 파일에서 데이터를 읽을 시작 라인 |
|
needRegInfo |
등록자ID, 등록시간, 수정자ID, 수정시간의 정보 부여 여부 |
아래 코드를 참고해 사용한다.
...
ExcelImportResult excelResult = ExcelUtil.getInstance().importExcel(input.getFilePath(), UserInfoExcelOMM.class, excelData, 1, true);
//업로드 받은 데이터(excelData)를 merge하는 메소드.
userInfoBean.userInfoImportExcel(excelData);
...