Web Programming
-
[jasper report] 제스퍼 리포트 NULL 처리 방법
Web Programming 2025. 9. 25. 16:30제스퍼 리토프 한글 출력은 이제 잘되는데 또 다른 문제가 하나 발생했다.그건 NULL 표출....출력하기 위한 데이터를 프론트에서 array 로 넘겨주는데 key : value 값에서 value 값이 빈값이라서 발생하는 현상이다.무료 제품은 쓰기 어려워 ㅠㅠ 실제 출력물 ㅠㅠ 이런.... whyrano....그래서 value 가 빈값일 경우 제외시키려고 했으나 처리해야될 내용이 많아서 제스퍼 자체에서 처리할 수 있는 걸 먼저 찾아보기로 했다.그결과 isBlankWhenNull="true" 옵션을 주면 되었다.적용하고 출력하니 null 이 빈값으로 표출되었다
-
[jasper report] 제스퍼 리포트 글꼴 확인 ttf
Web Programming 2025. 9. 25. 15:27제스퍼 리포트 글꼴 확인하는 방법 !!!! GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();String[] fonts = ge.getAvailableFontFamilyNames();for (String font : fonts) {System.out.println("font::::"+font); // 적용 가능한 폰트}와 같이 확인하면 된다.그 전에 제스퍼 같은 경우는 한글 폰트 지원이 안되는 경우가 종종 있다.제스퍼 스튜디오에서 한글로 디자인했는데 실제 출력하면 한글 작성한 부분이 빈값으로 나오는 경우가 있다.그 경우는 여러가지 문제가 많지만 위 소스로 적용 가능한 폰트를 확인하고없다면 .ttf 파일을 추가해줘야한다..
-
[JAVA] 1-1,, 1-1-1,, 1-1-1-1,, 정화히 정렬하기
Web Programming 2025. 7. 26. 11:16만약에 bom 레벨 구성을 해야하는데 level 데이터가 1-1, 1-2,, 1-10 과 같이 이루어져 있고따로 순서를 정해주는 컬럼이 없을 경우 쿼리로 1-1 컬럼을 order by 하면데이터 타입이 varchar 이기때문에 1-1, 1-2, .... 1-10 으로 정렬이 되지 않고1-1, 1-10, 1-11 ... 과 같이 정렬이 된다. 특수문자 '-' 가 들어가기 때문에 제대로 정렬이 될수가 없다.그럴경우 자바로 먼저 처리 후 화면에 표출해야된다.쿼리 리턴 타입이 ArrayList> 라고 할경우 함수1private ArrayList> orderByBomLevelList(ArrayList> bomList) { bomList.sort((map1, map2) -> { List levels1 = p..
-
[postgre] 테이블 시퀀스 셋팅하기
Web Programming 2025. 7. 26. 11:12데이터 이리저리 옮기고 데이터 맞추다 보면 "중복된 키 ~~" 고유 제약 조건 위반 에러가 발생하는데그 이유는 테이블 nextval('스키마.시퀀스명'::regclass) 에 +1 증가 설정을 해뒀는데insert 할때 insert into 에서 id 값을 999 처럼 번호를 주고 insert 를 시키게되면실제 시퀀스 값이 +1이 되지 않아 막상 시스템에서 insert 처리 시 위와 같은 오류가 발생한다. 그때는 다시 시퀀스 값을 아래와 같이 확인 후 맞춰 줘야 시스템상에서 insert 시 정상적으로 시퀀스가 증가하게 된다.1.시퀀스조회SELECT pg_get_serial_sequence('스키마.테이블명', 'id'); 2.시퀀스 업데이트SELECT setval('스키마.시퀀스명', 370, true);
-
[오라클] Oracle MERGE 로 한꺼번에 업데이트
Web Programming 2025. 6. 15. 19:39오라클로 특정 컬럼의 값을 조회해서 여러 행을 update 할때 MERGE INTO employees eUSING (SELECT employee_id, salary * 1.1 AS new_salary FROM employees WHERE department_id = 10) tempON (e.employee_id = temp.employee_id)WHEN MATCHED THENUPDATE SET e.salary = temp.new_salary; 위 쿼리 예시는 employees 테이블의 employee_id 와 temp 의 employee_id 가같을 경우 employees 테이블의 salary 를 업데이트 하는 쿼리이다.merge into 로 하면 쉽게 작성해서 처리 할 수 있으니 참고 ~끝!!!!