반응형

# Java 보안으로 차단된 응용 프로그램

  • 프로젝트를 진행하다보면 간혹 해당 오류가 발생.
  • 이 경우에는 예외 사항 사이트 목록에 해당 사이트를 추가 해줘야 함.

## 해결방법 (예외 사항 사이트 목록 추가)

  • 제어판 > Java > 보안탭 > 예외 사항 사이트목록 항목의 사이트목록 편집 클릭.
  • 해당 팝업에서 해당 메세지가 나오는 싸이트 주소를 추가 후 확인 및 적용.

반응형
반응형

# equals

  • 자바에서 문자열 비교 시 사용하는 함수로 모든 객체의 부모 클래스인 Object에 정의되어있는 메소드 중 하나이다.
// String.java
public boolean equals(Object anObject) {
    if (this == anObject) {
        return true;
    }
    if (anObject instanceof String) {
        String anotherString = (String)anObject;
        int n = value.length;
        if (n == anotherString.value.length) {
            char v1[] = value;
            char v2[] = anotherString.value;
            int i = 0;
            while (n-- != 0) {
                if (v1[i] != v2[i])
                    return false;
                i++;
            }
            return true;
        }
    }
    return false;
}

## 사용방법

  • 아래와 같이 사용하여 두 개의 문자열이 동일한지 비교 가능하며, 객체의 순서를 바꿔도 동일한 결과를 얻을 수 있다.
  • 결과는 true or false 반환.
string str1 = "문자열비교";
string str2 = "문자열비교";

str1.equals(str2)
str2.equals(str1)

## 주의할 점 (NullPointerException)

  • 아래와 같이 객체 str1이 null인 경우 NullPointerException 발생.
String str1 = null;
String str2 = "str1이널값인경우";

str1.equals(str2);

=>
오류발생.
  • 인자로 전달되는 str2가 null 인 경우에는 NullPointerException  발생하지 않음.
String str1 = "str2이널값인경우";
String str2 = null;

str1.equals(str2);
  • null 여부를 신경쓰고 싶지 않은 경우 Objects.equals() 또는 StringUtils.equals() 사용.
반응형

'기타' 카테고리의 다른 글

스크럼(Scrum)  (0) 2022.11.23
Java 보안으로 차단된 응용 프로그램 해결방법  (0) 2022.11.10
DB2 근속일수 등 날짜의 차이 일수 구하기  (0) 2022.11.01
SQL ROW_NUMBER  (0) 2022.10.31
DB2 length  (0) 2022.10.26
반응형

# DB2 근속일수 또는 두 날짜의 차이 구하기

  • 현재날짜 기준으로 특정일(입사일 등) 까지의 차이를 구하는 방법.
  • CURRENT DATE : DB2 에서 현재날짜. (=오라클 SYSDATE)

## 오라클의 경우

  • 현재날짜 에서 특정일까지 일수 차이 구하는 방법
  • TRUNC : SYSDATE의 경우 시간 부분이 존재하기 때문에 TRUNC 없이 계산하게 되면 소수점 부분도 출력된다. (TO_DATE('20221110', 'YYYYMMDD')의 경우 시간부분은 0) 그래서 단순 일수차이를 구하기 위해서는 SYSDATE의 시간을 0으로 만들어주는 TRUNC 를 사용해야 한다.
SELECT TRUNC(SYSDATE) - TO_DATE('20221110', 'YYYYMMDD') AS DIFF
FROM DUAL;

## DB2의 경우

  • DB2의 경우 오라클처럼 하면 원하는 값을 얻을수 없다.
  • DAYS : 날짜의 정수 표시를 리턴해주는 함수.
  • 아래와 같이 DAYS 함수를 사용하면 근속일수 등 두 날짜간의 차이를 쉽게 구할수 있다.
SELECT DAYS(CURRENT DATE) - DAYS(TO_DATE(컬럼명, 'YYYY-MM-DD')) AS DIFF_DAYS
FROM DUAL;

## 결론

  • DB2에서 근속일수 or 두 날짜간의 차이를 구할땐 'DAYS()' 함수 사용.
반응형

'기타' 카테고리의 다른 글

Java 보안으로 차단된 응용 프로그램 해결방법  (0) 2022.11.10
자바 equals  (0) 2022.11.09
SQL ROW_NUMBER  (0) 2022.10.31
DB2 length  (0) 2022.10.26
오라클 WITH절  (0) 2022.10.13
반응형

# ROW_NUMBER

  • 윈도우 함수 중 하나, 결과 집합의 행에 일련 번호를 메겨주는 함수.
  • PARTITION BY 구문과 함께 사용 (일반적)
  • 특정 기준으로 나뉘어진 각파티션의 행들은 ROW_NUMBER()에 의해서 1부터 차례로 넘버링 된다.
  • 특징 : RANK(순위 함수) 와 다르게, 모든 행의 번호를 고유하게 그리고 순차적으로 지정.

## 기본 구문

SELECT ROW_NUMBER() OVER ([PARTITION BY COL1, ...] ORDER BY COL2 ASC)
FROM DUAL;
  • OVER : 쿼리 결과 집합 내 윈도우 or 사용자 지정 행 집합 정의.
  • PARTITION BY : 특정 열 기준으로 데이터를 나눔. (해당 구문을 지정하지 않을 경우, 쿼리 결과 집합의 모든 행이 단일 그룹으로 취급됨)
반응형

'기타' 카테고리의 다른 글

자바 equals  (0) 2022.11.09
DB2 근속일수 등 날짜의 차이 일수 구하기  (0) 2022.11.01
DB2 length  (0) 2022.10.26
오라클 WITH절  (0) 2022.10.13
DQM, DEM 등 MVC 모델의 파일 약자와 의미  (2) 2022.10.13

+ Recent posts