2013-04-03

DB] oracle 에 있는 sign() 의 기능


오라클에 있는  SIGN이라는 함수의 기능은 원하는 결과값(?!)이 양수 / 음수 / 0 이냐에 따라서 값을 반환해주는 함수.

예)
SELECT SIGN(1+1) a, SIGN(1-1)  b, SIGN(1-5) c
FROM DUAL;

결과
---------------------------

a | b | c
==========
1 | 0 | -1


추가적인 예)
필드의 값이 100 이상인 것의 합과 미만인 것의 합을 구하는 쿼리.
출처 : http://ssiso.net/cafe/club/club1/board1/content.php?board_code=oracle%7Coratip&idx=31597&club=oracle


SELECT SUM(CASE SIGN(A-100)
                         WHEN 0 THEN A
                         WHEN 1 THEN A
                         ELSE 0
                     END)                      AS OVER100,
             SUM(CASE SIGN(A-100)
                         WHEN -1 THEN A
                         ELSE 0
                     END)                      AS DOWN100
    FROM DUAL;

2013-03-26

DB2] locking 정보 확인


-- db2 locking 정보 확인.  

SELECT lock_name,
  hld_member,
  lock_status,
  hld_application_handle
FROM  TABLE (MON_GET_APPL_LOCKWAIT(NULL, -2))

2013-02-20

cross site scripting(XSS) 공격 우회방법.


1. xss (cross site scripting) 공격을 was 설정을 통해 방어하는 방법
   ==> java class 와 web.xml 의 설정을 통한 방어로 기존의 작업분의 변경이 많이 필요할 수 있다.

2. jstl 태그를 사용해서 코딩을 한 경우 아래의 사이트를 참조하셔도 될것 같습니다. 

3. jsp 메소드를 사용하는 방법 (아래 메소드를 jsp에서 호출해서 사용하면 됩니다.)
/**
 * XSS 제거
 * @param value
 * @return
 */
public static String removeXSS(String value){
     
     value = value.replaceAll("&", "&");
     value = value.replaceAll("<", "<");
     value = value.replaceAll(">", ">");
     value = value.replaceAll("", null);
     value = value.replaceAll("\"", "";");
     value = value.replaceAll("\'", "';");
     value = value.replaceAll("%", "%;");    
     value = value.replaceAll("../", "");
     value = value.replaceAll("..\\\\", "");
     value = value.replaceAll("./", "");
     value = value.replaceAll("%2F", "");
     
     return value;
}

2013-02-19

DB2] 프로시저 script 확인하는 쿼리

-- procedure명으로 조회.
select * from SYSIBM.SYSPROCEDURES where PROCNAME like '%프로시저 명%';

-- oracle 의 dual 에 해당하는 테이블 :: sysibm.sysdummy1
select current_timestamp from sysibm.sysdummy1;

오라클] 프로시저 내용 확인하는 sql


select * from all_source where name = upper('프로시저명');

select * from user_source where name = upper('프로시저명');

2013-02-08

Javascript ] javascript 날짜(Date) 관련 함수.




// 현재 일자보다 7일전 날짜 구하기.

var dt = new Date();
var fd = timeShift(dt, "-7");
var val = fd.getFullYear()+"-"+(fd.getMonth()+1)+"-"+fd.getDate();

// fd 값을 가진 날의 요일

fnSetFromDateVal(fd);

// fd ~ dt 의 기간.
betweenDay(fd, dt);

/**
 * a : date()
 * s : 이동하고자 하는 일자 기간.(7 - 7일, 15 - 15일)
 */
function timeShift(a,str){

b = new Date();

b.setTime(a.getTime() + ((str) * 24 * 60 * 60 * 1000));

return b;

}



/**
  * 특정날짜의 요일을 구한다.
  * time : 날자형식의 데이터.
  */
function getDayOfWeek(time) {

     var now = new Date(time);
     var day = now.getDay(); //일요일=0,월요일=1,...,토요일=6
    // var week = new Array('일','월','화','수','목','금','토');
    // return week[day];  // 리턴값은 일 ~ 토 로 표시된다.
     return day;  // 리턴값은 0 ~ 6 로 표시된다.
 }



/**
  * 입력받을 날자 사이의 기간을 리턴
  * fd : 시작일자, td : 종료일자.
  */

function betweenDay(fd, td) {
    var betweenDay = (fd.getTime() - td.getTime())/1000/60/60/24;
    return betweenDay;
}

2013-01-09

eclipse에서 tomcat 기동시 에러


eclipse에서 tomcat 기동시 에러

java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
오류 발생시 대처 방법 ::


따라서 다음 사항에 대해 확인해 본다.

1) 해당 프로젝트 내의 WEB-INF/lib 폴더 내에 spring-x.x.x.jar 파일이 존재하는지 체크.

2) 해당 jar 파일이 존재하는데도 위와 같은 에러가 발생한다면 Eclipse와 Tomcat 연동이
   정상적이지 않을 가능성이 있으므로
   Eclipse -> Servers View에서 Tomcat을 선택하고 마우스 오른쪽 버튼을 클릭한 후
   Clean...과 Clean Tomcat Work Directory... 메뉴를 실행.
   그런 후에 실행 대상 프로젝트를 선택하고 Eclipse 메뉴 Project > Clean... 을 실행.

3) 작업을 마친 후 다시 Tomcat을 시작.