반응형

분류 전체보기 130

[Developer] Oracle SQL Developer, 자동정렬(Ctrl + F7)

■ 오랜만에 쿼리문을 실행하다가 한 줄로 정리되어 있는 쿼리문 때문에 정렬 기능이 필요했다. 대부분이 정렬이 되어 있거나 내가 들여쓰기로 혼자 만들다 보니 자동정렬 기능을 사용할 일이 크게 없어서 쓰지 않았는데 그래서 잊고 있었다. 기억하기 위해서 단축키 글을 쓴다. 아래의 쿼리가 있다고 생각해보자. 이렇게 짧은 경우에는 한눈에 보기 쉽기 때문에 정렬기능이 필요하지 않다. 하지만 보통 시스템에서 쓰는 쿼리들은 상당히 길기 때문에 가독성이 떨어진다. 그래서 필요한 기능이 정렬기능이다. 하지만 해당 기능 또한 완벽하지 않아서 쿼리를 보기 좋게 바꾸기 위해선 일정 부분의 수작업이 필요하다. 그래도 일정 형식을 맞춰준다는 점에서 정렬 기능은 쓸만한 기능이다. 정렬 기능을 쓰게 되면 아래처럼 쿼리가 변경된다. 자..

지식 2023.11.09

[WAS] JSESSIONID

■ JSESSIONID 란? 서버에서 세션을 유지하기 위해 발급하는 키값이다. JSESSIONID는 서버에서 세션 검증을 하는데에 쓰인다. → 브라우저 접근시 서버에서 발급한다. 세션은 서버에 저장되고 클라이언트 브라우저에는 JSESSIONID 값을 쿠키에 담아 정보를 가지게 된다. 이 때 서버는 sessionID 값을 이용하여 브라우저에 접근한 사용자를 구분할 수 있다.  서버는 다른데 동일한 도메인을 쓸 경우 JSESSION의 값이 통신이 일어날 때마다 계속 변경된다. 새로운 값으로 계속 덮어써지는데 이에 따른 해결 방법은 WAS 설정 중 JSESSIONID 변경을 통해서 해결할 수 있다. 톰캣의 경우 Server.xml 의 Context 부분에서   sessionCookieName="수정 JSESS..

WEB . WAS 2023.11.06

[ORACLE] DBA_FREE_SPACE, DBA_DATA_FILES

■ 업무를 진행할 때 DBA_FREE_SPACE, DBA_DATA_FILES 테이블을 조회하는 쿼리가 있었다. 쿼리를 조회하기 위해선 계정이 DBA 권한을 부여받아야 가능하다. DBA_FREE_SPACE 는 USER로 바꿔서 조회할 수도 있다. 이 때 두 테이블이 어떤 용도로 쓰이는지 한 번 알아봤다. DBA_FREE_SPACE - 모든 테이블스페이스에 있는 여유 범위를 설명함. - 테이블스페이스의 온라인 파일에 객체의 익스텐트가 있는 경우 오프라인 데이터 파일에 대한 익스텐트 정보를 볼 수 있다. 참고 https://docs.oracle.com/en/database/oracle/oracle-database/19/refrn/DBA_FREE_SPACE.html#GUID-0FFCB990-4013-4D8A-A..

DB/ORACLE 2023.10.27

[JAVA] java.lang.reflect.InaccessibleObjectException

■ 프로젝트를 실행하는 중에 에러가 발생했다. 처음에 어떤 에러인지 알 수 없어 검색을 했는데도 쉽게 해결법을 찾을 수 없었다. 해당 에러가 왜 나는지 소스를 분석해도 별다른 특이점이 없었다. 그런데 알고 보니 JDK 버전 문제였다. JDK1.8을 쓰면 안되는 이슈가 있어서 테스트를 JDK17로 했더니 17 특징 중 reflection을 통한 함수 접근을 할 수 없다는 내용을 발견했다. 그래서 버전을 JDK 11 로 바꿔 다시 테스트를 완료했다. → (20241128 해결 방법 확인) JVM 옵션을 통해 STS 구축한 프로젝트에서 Oracle JDK 17일 때 발생한 문제 해결하였다. 추가 옵션 : --add-opens java.base/java.lang=ALL-UNNAMED발생에러   해결방법 JDK ..

JAVA 2023.10.06

[JAVA] jdk.jar.disabledAlgorithms SHA1 관련 에러

■ 모듈을 테스트할 때 암호화 부분 관련해서 에러가 발생했다. SHA1 관련해서 프로세스를 진행할 때 발생했는데 해결법을 찾는데 상당히 오래 걸렸다. 자바 버전마다 설정과 사용값이 달라서 발생하는 버전이 있고 발생하지 않는 버전이 있었는데 나는 자바 17 을 사용했다. 에러 발생 설정 경로 : C:\Program Files\Java\jdk-17\conf\security 사진에 나온 부분이 주석처리 되어 있지 않았었다. 그래서 해결방법으로는 이 부분을 주석처리 했다. SHA1의 기한 때문인 것 같은데 딱히 모듈을 실행하는데 쓰이지 않는 것 같았다. 참고사이트(검색키워드 : Disable SHA-1 signed jars) Configure Oracle's JDK and JRE Cryptographic Alg..

JAVA 2023.10.06

[ORACLE] ORA-65096 공통 사용자 또는 롤 이름이 부적합합니다.

■ 오라클 접속 후 계정을 생성하고자 할 때 발생할 수 있는 메세지이다. 해당 메세지는 11 버전까지는 없던 오류 메세지로 이후 버전부터 발생했다. 계정 앞에 c## 을 붙이고 사용자를 생성해야 하는데 기존 쿼리만 사용했던 나는 이번에 알았다. 오류메세지 발생 쿼리 CREATE USER TEST IDENTIFIED BY 1234; 변경 쿼리 → CREATE USER c##TEST IDENTIFIED BY 1234; 하지만 매번 붙이기 귀찮다면 아래 쿼리를 실행하면 된다. ALTER SESSION SET "_ORACLE_SCRIPT"=true;

DB/ORACLE 2023.10.04

[MOUSE] 로지텍 M280 분해하기

■ 컴퓨터를 사용하다가 마우스 우클릭의 느낌이 좀 달라진 것 같았다. 눌리는 느낌이 뭉툭하다고 해야하나 조금 더 힘을 실어야 하는 것 같고 소리도 딸깍하는 소리보단 무딘 소리가 났다. 그래서 한 번 분해를 해봤다. 처음에 건전지를 빼도 분해를 어디서 시작해야 할지 몰랐는데 검색을 통해 스티커를 제거하면 나사가 보이게 된다는 것을 알게 됐다. 분해를 해보니 뭔가 벌레처럼 보였다. 약간의 높이를 높여주는 작업을 했는데 돌아온 것 같기도 하고 아닌 것 같기도 하다. 일단 써봐야지. 과정 1) 지켜본다. 2) 뒤집는다. 3) 건전지를 분리한다. 4) 스티커를 제거한다. 5) 나사를 풀고 열어준다. 6) 분리한다. 7) 작업 (우클릭 하는 부분에 테이프를 붙여 높이를 조금 높여줬다.) 8) 조립한다. ※ 내가 느..

지식 2023.09.14

[Python] pyautogui , selenium 을 이용한 매크로

■ 자동화 작업을 생각하다가 간단하게 테스트하기 위해서 메크로를 생각했다. 브라우저를 열어 네이버로 이동한 후 로그인 시도를 하려고 했다. 그렇게 찾아보니 두 가지 모듈을 많이 사용하는 것으로 보여져 테스트를 했다. 영역 요소를 선택할 때 마우스를 일정 좌표를 주는 방식과 요소 아이디를 클릭하는 방식 두 가지로 나누어 봤다. 간단한 테스트라 코드가 직관적이다. 그런데 네이버는 메크로 방지하는 코드를 사용했는지 바로 로그인이 되지 않고 자격 확인 페이지로 넘어간다. 간단한 코드로 직접 구현해보니까 재미는 있었다. 1. pyautogui 2. selenium 지금 사용한 함수들 외에도 재미있는 것들을 많이 지원해준다. 간단한 코드들로 재미있는 작업들을 많이 할 수 있을 것 같다.

Python 2023.09.12

[Python] 재미로 만드는 로또 번호 생성 파일_가중치

■ 파이썬 기본 강의를 듣다가 오늘 금요일이기도 해서 로또 번호를 추출해내는 코드를 짜볼까 시도해봤다. 처음에 어떻게 가중치를 줄까 하다가 최근 당첨 번호를 이용해 자주 나오는 번호 위주로 랜덤값이 생성되도록 코딩했다. 잘 맞을지 모르겠으나 일단 6개의 숫자 추출이 잘 되므로 연습하기 재미있었다. 1. 동행복권 사이트를 방문하면 당첨번호를 엑셀 파일로 다운로드 할 수 있다. 임의로 지정한 회차 데이터를 다운받아 텍스트 파일로 편집했다. (880 ~ 1083 회차) 2. 편집한 파일을 열어 당첨번호들을 읽어왔다. 3. 가중치를 담을 리스트를 만들고 리스트에 1부터 45번까지 당첨번호가 등장한 횟수를 값으로 설정했다. 4. 구매할 게임 수를 설정하고 가중치를 줘서 난수값을 생성하는 코드를 만들었다. 5. 이..

Python 2023.09.08
반응형