본문 바로가기
반응형

IT/Java10

[JAVA] 정규식을 활용한 패스워드 체크 함수(regex Pattern, Matcher) 사용자에게 입력받은 비밀번호가 규칙에 맞는지 체크하기 위한 함수를 알아보겠습니다. 관련 게시글을 꽤 찾아봤는데 실무에서 바로 쓸 정도로 정리된 글은 없는 것 같아 바로 복사해서 적용할 수 있게 정리하겠습니다. Import 정규식 사용에 필요한 regex의 Pattern과 Matcher import java.util.regex.Pattern; import java.util.regex.Matcher; 패스워드 체크 함수 * XSS나 암복호화는 이미 처리된 후 평문으로 서버에서 체크하는 방식입니다. public String chkPasswd(String passwd, String birth) { //반복된 문자 확인 Pattern passPattern1 = Pattern.compile("(\\w)\\1\\1\.. 2023. 10. 20.
art1 [JAVA] Base64 사용 시 getDecoder() 빨간줄 표시 해결방법: The Method getDecoder() is undefined for the type Base64 업무를 하다보면 간단한 암호화 적용을 위해 Base64를 사용할 때 getDecoder 혹은 getEncoder를 찾지 못하는 경우가 있습니다. 이런 경우 어떻게 해야되는지 알아보겠습니다. 보통 이런 경우는 Base64 예제를 복사한 후 Ctrl+Shift+O를 했는데, java.util.Base64가 없어 아무거나 선택한 경우일 겁니다. java 1.7에서는 java.util.Base64가 없기때문에 decode, encode가 되지 않는 것입니다. java 1.7의 경우 org.apache.commons.codev.binary.Base64 사용하고, getEncdoer 대신 encodeBase64, getDecoder 대신 decodeBase64를 사용해야 합니다. 아래 예제를 참고하시면 문제 해결에.. 2022. 10. 24.
art1 [JAVA] 자바 스트링 한글 깨짐 (String 인코딩 변환 방법) 수신 데이터를 저장하려고 보니 한글이 깨지는 경우가 많습니다. 콘솔에는 정상적으로 찍히는데 디비에 저장된 데이터가 깨지는거라면 DB 캐릭터셋 문제일 수 있지만 자바 콘솔에서부터 깨지면 인코딩 오류일 가능성이 높습니다. 1. FileReader에 Encoding 추가 2. 직접 String Encoding 1. FileReader에 Encoding 추가 우선 Reader에 인코딩 방식을 추가해주면 됩니다. * FileReader의 경우는 기본 인코딩을 사용하기 떄문에, FileInputStream을 사용해야 합니다. // OS 기본 인코딩 Reader reader = new FileReader(fileName); // 인코딩 적용 BufferedReader reader = new BufferedReader.. 2022. 5. 12.
art1 [JAVA] 가변인자 JAVA 9에 대해 공부하면서 JAVA 8 이후 추가/변경된 사항을 정리할 예정입니다. 첫번째로 가변인자에 대해 알아보겠습니다. 가변인자(...)란? 기존 자바에서는 메소드의 파라미터가 고정적이여서, 같은 메소드에 다른 파라미터를 주기 위해서는 반복적인 오버로딩이 필요했습니다. 이같이 불필요한 과정을 개선하기 위해 사용 된 것이 가변인자 입니다. // 가변인자는 ... 입니다. public static longg avg(long... params){ long sum = 0; for (long val : params) sum += val; return params.length == 0 ? 0 : sum / params.length; } 가변인자의 특성 파라미터 개수 제한없이 배열로 받을 수 있음. 가변인자.. 2022. 4. 7.
art1 Cause: java.lang.NumberFormatException : For input string: 해결방법 For input string: "" 혹은 "N", "Y" 등의 오류는 자바에서 Mybatis를 사용할 때 if test 등의 구문 사용에서 오류가 발생하는 경우입니다. 주로 "" String값에 null이 오거나, 문자와 숫자 비교 등 형변환 오류입니다. For input string: ""의 경우 위와 같이 mybatis 구문 중 PARAM의 값이 파라미터가 null이 왔을 가능성이 있는지 확인합니다. 이 문제는 아래와 같이 해결할 수 있습니다. 1. 값을 넘길 때 default 값을 넣어 null이 되지 않도록 합니다.. 2. AND 문으로 앞에 null 체크를 먼저 합니다. For input string: (String) 문자열의 경우 test문을 감싸는 '(싱글쿼테이션), "(더블쿼테이션)의 차.. 2022. 1. 12.
art1 [JAVA] 다양한 형태의 JSON 파일 파싱하기 JSONParser, JSONObject, JSONArray (json.simple, GSON) JSON 파일을 땡겨왔는데 이를 저장하기 위해선 JSON 데이터를 사용하기 위해 JSONObject와 JSONArray를 쓸 수 있습니다. json-simple을 통해 json 객체를 다루는 법을 알아보겠습니다. 본 글에는 없지만 jackson이나 GSON도 기본적으로 사용법은 유사합니다. JSON-Simple json-simple 라이브러리는 JSON 파싱을 지원합니다. .java 파일에서 JSONObject jsonObj = new JSONObject(); 를 입력하고 컨트롤+시프트+O를 누르면 import 가능한 관련 라이브러리가 나올 것입니다. 거기서 org.json.simple.JSONObject가 나온다면 추가해주시고, 없으면 pom.xml에 dependency를 아래처럼 추가해줍니다. MAV.. 2021. 11. 30.
art1 [JAVA] 유니코드(Unicode) 한글 변환 유니코드로 쓰는 경우가 많지는 않은데, 일부 레거시에서 특정 내용을 유니코드로 떨궈주는 경우가 있습니다. SFTP로 당겨와서 저장하려고 보니 이런 상황이면 당황스러울 수 있습니다. 자바에서 유니코드를 한글로 변환하는 방법(함수)과 유니코드를 한글로 변환하는 방법을 알아보도록 하겠습니다. \uC720\uB2C8\uCF54\uB4DC\20\uD55C\uAE00\uBCC0\uD658 (유니코드 한글변환) 유니코드는 역슬레쉬 \ 다음에 u와 4자리의 16진수로 돼있습니다. 자바 함수로 알아보겠습니다. Unicode에서 한글로 변환 public String uniToKor(String uni){ StringBuffer result = new StringBuffer(); for(int i=0; i 2021. 11. 27.
art1 [JAVA] 이클립스 eclipse workspace 변경 * 워크스페이스 재설정 * 이클립스 처음 실행할 때 설정한 워크스페이스를 다른데로 바꾸고 싶을 때 1. File > Switch Workspace > Other 2. 새 워크스페이스 선택 * 알아서 재기동 된다. 2021. 9. 10.
art1 [JAVA] 자바 파일입출력, 폴더 내 파일 읽기 예제 * 파일 읽기, 파일 복사, 파일 쓰기, 폴더 내 파일 읽기, FileReader, FileWriter, BufferedReader, BufferedWriter * java 기본 기능으로 파일 내용을 읽고, 새로운 파일에 쓰는 방법 작성 (작성 후 ctrl+o로 자동 import 필수) * 로컬에서 실행하는 로컬 폴더 기준으로 작성 (서버에서 실행 시 path를 서버 폴더 path로 해야 함) * 특정 폴더 내 특정 문자열이 포함되지 않은 파일 찾기, 특정 문자열 2개 포함된 파일 찾기 등 아주 가끔 쓰긴 함. ex) 가 없는 파일 찾기, include 가 2개 이상 들어간 파일 찾기 1. 자바 프로젝트 생성 및 test.java 파일 생성 * eclipse > File 탭 > New > Other > .. 2021. 8. 23.
art1 [JAVA] 환경변수 설정 (Win 10) * 개발환경 Setting 전 필수 코스이다. 1. 탐색기 > 내 PC 우클릭 > 속성 선택 (제어판에서 '고급 시스템 설정' 검색도 가능. 띄어쓰기 중요) 2. 고급 시스템 설정 3. 환경변수 선택 4. 새로 만들기 선택 5. JAVA_HOME 입력 > 확인 * 변수 이름: JAVA_HOME * 변수 값: pc에 설치한 자바 jdk 위치 6. Path 선택 > 편집 선택 * 시스템 변수 중 Path 선택 후 편집을 선택한다. 7. 새로 만들기 선택 > 아래 내용 입력 > 확인 * 추가 내용: ;%JAVA_HOME%\bin 8. 끝 2021. 8. 19.