• [Spring]Apache POI를 이용한 Excel Download

    서론 이전에는 특정 페이지를 엑셀로 다운로드 받으려면 JSP를 이용하곤 했다. <% String fileName = "Excel File_"+DateTime.getDateTimeMinSec()+".xls"; response.setHeader("Content-Disposition", "attachment; filename="+new String(fileName.getBytes("utf-8"),"8859_1")); response.setHeader("Content-Description","JSP Generated Data"); %> 위와 같이 JSP 상단에 적어주면 html 코드들이 엑셀로 저장이 된다. 간편하긴 하지만 <table>을 이용하여 표를 다 그려줘야하고 제일 치명적인 단점이 엑셀 97~2003버전(xls)으로만 저장이 된다는 것이다. 그래서...


  • [Spring]HTMLTagFilter

    HTMLTagFilter? 크로스 사이트 스크립팅(Cross-Site Scripting, XSS)은 쉽게 설명하자면 악의적인 스크립트 코드를 서버로 전송시켜 실행하여 사용자의 쿠키나 세션을 탈취하거나 이상한 페이지로 이동시키는 등의 행위를 하는 것이다. 이러한 XSS 공격은 어떤 프로젝트를 하든지 취약점 점검에 꼭 하나씩은 필터링 되곤 한다. 이러한 XSS 공격을 막기 위해서 보통은 사용자에서 입력받은 값을 서버로 넘길 때,...


  • [MySQL]A테이블 검색 시 B테이블의 특정 컬럼 값 이용하기

    내용 전자정부+MySQL 기반의 웹 프로젝트를 개발하던 중에 하나의 기능이 필요하게 되었다. A라는 테이블의 리스트를 뽑아오는 화면인데 또다른 B라는 테이블의 특정 컬럼에 있는 특정 값을 검색 조건으로 달아줘야 했다. 대략적으로 테이블 구조를 그려보자면, Table A USER_ID USER_NM 1 이름_1 2 이름_2 3 이름_3 Table B PKID ADMIN_ID 1 1,3 2 1...


  • [Spring]다중 DataSource 설정하기

    전자정부 프레임워크 3.7 버전을 사용 중이기 때문에 이 프레임워크를 기준으로 설명함. Spring 4 기반으로 만들어졌기 때문에 크게 다른 부분은 없으리라 생각됨. 1. 기본 설정 1. MSSQL JDBC 드라이버 추가 & pom.xml 설정 <!-- 보통 commons-dbcp는 기본적으로 추가되어 있기 때문에 이미 있다면 추가 X --> <dependency> <groupId>commons-dbcp</groupId> <artifactId>commons-dbcp</artifactId> <version>1.4</version> </dependency> <!--...


  • [MySQL]Oracle to MySQL

    Oracle to MySQL 기존에 개발 프로젝트는 Oracle DB 기반으로 만들어져있는데 새로 시작할 프로젝트의 DB는 MySQL인 경우가 있었다. Oracle과 MySQL은 구문이 서로 다른 부분이 많기 때문에 쿼리를 변경해야만 했다. 쿼리 변경을 하면서 기억에 남는 것들을 몇 가지 정리해본다. 크게 많이 바꾼건 없고 몇 가지 자잘한 부분만 바뀌었다. 혹시나 개발 진행하다가 더...