본문 바로가기

KNOWHOW

날짜 계산 처리, 한글 깨짐 처리

1. 현재 날짜로 부터 00개월 이전/이후 날짜 계산. 년/월/일 계산도 가능.

ORACLE, SYBASE가 조금 다름.

sybase
dateadd(mm,-18,getdate())

oracle
add_months(sysdate,-18)

 

2.

프로젝트 중 한글 데이터가 깨지면 charset 변경 먼저 확인하고, 

 : new String(STR.getBytes("AAAA"), "BBBB"); - AAA는 기존 charset, BBB는 변환할 charset

그래도 안되면, web.xml에 encoding filter 확인.(아래는 스프링 사용시)

부득이 프로젝트와 서로 다른 charset을 사용해야 할 경우 filter-mapping에서 url-pattern을 별도로 설정...

유의할점은, 추가한 url-pattern을 servlet 매핑에 추가해주어야 한다.

 :

<filter>
  <filter-name>encodingFilter_M</filter-name>
  <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
  <init-param>
   <param-name>encoding</param-name>
   <param-value>UTF-8</param-value>
  </init-param>
 </filter>

<filter>
<filter-name>encodingFilter_A</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>EUC-KR</param-value>
</init-param>
</filter>

<filter-mapping>
<filter-name>encodingFilter_M</filter-name>
<url-pattern>*.M</url-pattern>
</filter-mapping>

<filter-mapping>
<filter-name>encodingFilter_A</filter-name>
<url-pattern>*.A</url-pattern>
</filter-mapping>

<servlet-mapping>
  <servlet-name>store-servlet</servlet-name>
  <url-pattern>*.M</url-pattern>
  <url-pattern>*.A</url-pattern>
 </servlet-mapping>