회사 프로젝트 준비하다 알아낸 Altibase 관련 새로운 사실 두가지.
1. Altibase5 버전에서는 특정 IP만을 접근 가능하도록 설정할 수 있는 기능이 추가되었습니다. (ACCESS_LIST)
2. Altibase function 중 DES알고리즘을 이용하여 컬럼값을 암호화할 수 있음. ( 물론 private key 관리는 잘... )
끝.
회사 프로젝트 준비하다 알아낸 Altibase 관련 새로운 사실 두가지.
1. Altibase5 버전에서는 특정 IP만을 접근 가능하도록 설정할 수 있는 기능이 추가되었습니다. (ACCESS_LIST)
2. Altibase function 중 DES알고리즘을 이용하여 컬럼값을 암호화할 수 있음. ( 물론 private key 관리는 잘... )
끝.
사내에서 Altibase4를 사용하다가 발견된 bug 가 이메일로 넘어왔길래 정리해둡니다.
(혹시 동일현상으로 고민하시는 분이 계실까봐)
Altibase 4.X 버전에서 sequence 를 새로 생성할때 이미 해당 sequence 를 사용하고 있는 프로세스가 있는 경우 해당 sequence 의 image 를 해제하지 않고 계속 유지하는 현상이 있다고 합니다.
아직 patch 가 나온 상황은 아닌 것 같구요...
우선 이 bug 를 피해가기 위해서는
1) sequence 를 사용하는 process 를 죽이고
2) sequence 를 새로 생성한 다음
3) 해당 sequence 를 사용하는 process 를 새로 기동
시키는 식으로 사용하셔야 합니다.
일단 상황은 Altibase4에 웹페이지를 죄다 UTF-8로 세팅해서 쓰고 있는 경우.
주소록에서 특정인의 이름을 받아서 like 검색을 하려고 했다.
query 파라메터로 받은 값을 이용해서
<sql:query var="addrlist" dataSource="jdbc/mmsgw">
select * from tbl_address where group_id in (
select group_id from tbl_addrbook_group where user_id = 'hitchi'
) and user_name like '%<c:out value="${param.query}"/>%'
</sql:query>
로 하려고 했으나 계속 한글인식이 안되는 상황, <%= %> 로 해도 마찬가지고...
얼마전 Servlet 쪽에서 한글검색하다가 유사한 상황이 있었을 경우 PreparedStatement 로 해결했던 경험이 있어, 똑같이 서블릿으로 분리하려고 했으나, '너무' 간단한 기능이고 또 분리하기도 귀찮고, 결정적으로 고칠때 고치더라도 'JSTL' 상에서 꼭 해결해 보고 싶었다.
JSTL에서 PreparedStatement 로 쿼리하는 방법은 <sql:param> 을 이용하는 것이다.
물론 한글도 잘되고~
코드에 사용한 JSTL은 다음과 같다.
<c:choose>
<c:when test="${param.query != null}">
<sql:query var="addrlist" dataSource="jdbc/mmsgw">
select * from tbl_address where group_id in (
select group_id from tbl_addrbook_group where user_id = 'hitchi'
) and user_name like ?
<sql:param value="%${param.query}%"/>
</sql:query>
</c:when>
<c:otherwise>
<sql:query var="addrlist" dataSource="jdbc/mmsgw">
select * from tbl_address where group_id in (
select group_id from tbl_addrbook_group where user_id = 'hitchi'
)
</sql:query>
</c:otherwise>
</c:choose>
안녕하세요? 어쩌다보니 그냥 한번 써보기로 한 medium.com 에다가 죄다 최근 포스팅을 하고 있습니다. 현재 도메인인 potatosoft.com 은 제가 대학때인가 사회 취업한지 얼마 안됐을때부터 유지해 온 도메인이고, 블로그 시스템은 그...