반응형 개발이야기/Java35 [Java] 파일명 확장자 추출하고 확인하기 아래 소스코드는 파일 이름에 대해서 확장자를 추출하고 확인하는 코드입니다. getExtension(String fileName) 메서드를 통해서 파일 이름을 전달받아 파일의 확장자를 반환합니다. 파일 이름이 비어있지 않은 경우에만 처리가 이루어지며, 파일 이름에서 마지막 (.)의 위치를 찾고 그 뒤의 문자열을 확장자로 추출합니다. 빈 파일 이름의 경우에는 null로 처리하고 지정된 형식에 의해 파일 확장자를 추출하고 있습니다. /** * getExtension * 파일의 확장자 가져오기 * @param fileName * @return String */ public static String getExtension(String fileName) { String extension = null; if (!fi.. 개발이야기/Java 2023. 11. 18. [Java] 개인정보 마스킹 처리하기 (이름, 휴대번호, 이메일, 계좌번호, 은행) 아래 소스코드는 주어진 문자열을 특정 유형에 따라 마스킹(일부 또는 전체 문자를 숨김 처리)하는 메서드와 이를 활용하는 메인 메서드로 이루어져 있습니다. 마스킹 규칙 Name (이름) -길이가 2인 경우: 첫 번째 문자를 '*'로 대체합니다. -길이가 3인 경우: 두 번째 문자를 '*'로 대체합니다. -길이가 4 이상인 경우: 가운데 두 문자를 '*'로 대체합니다. Mobile (휴대폰 번호) -길이가 8에서 10 사이인 경우: 앞부분 4자리는 그대로 두고 나머지를 '*'로 대체합니다. -길이가 11 이상인 경우: 앞부분 5자리는 그대로 두고 뒤에 4자리를 '*'로 대체합니다. Email (이메일 주소) -길이가 1 또는 2인 경우: '@' 이전의 문자를 '*'로 대체합니다. -길이가 3 또는 4인 경우.. 개발이야기/Java 2023. 11. 13. [Java] StringUtils 클래스 메서드 사용법, 예제 (isEmpty, isNotEmpty, isBlank, isNotBlank) StringUtils 클래스는 Apache Commons Lang 라이브러리에서 제공되며 문자열 처리에 유용한 메서드를 제공하는 유틸리티 클래스입니다. 이 클래스에는 문자열을 다루는 여러 유용한 메서드가 포함되어 있으며, 그중에 StringUtils.isEmpty, StringUtils.isNotEmpty, StringUtils.isBlank, StringUtils.isNotBlank 메서드는 문자열의 상태를 확인하는데 유용합니다. StringUtils.isEmpty(String str) -문자열이 비어 있는지 여부를 확인합니다. -str이 null인 경우 또는 길이가 0인 경우 true를 반환하며, 그 외의 경우 false를 반환합니다. -StringUtils.isEmpty("Hello")는 false.. 개발이야기/Java 2023. 11. 13. [Java] 문자열 오른쪽, 왼쪽 자릿수만큼 특정문자 채우기 padRight, padLeft 메서드를 사용하여 문자열 오른쪽, 왼쪽으로 문자열 길이만큼 특정 문자열을 채워 넣는 소스코드입니다. 메서드 /** * padRight * @param word 대상 문자 * @param totalWidth 총 길이 * @param paddingChar 채워넣을 문자열 * @return */ public static String padRight(String word, int totalWidth, char paddingChar){ String padWord = word; padWord = String.format("%-" + totalWidth + "s", word).replace(' ', paddingChar); return padWord; } /** * padLeft * .. 개발이야기/Java 2023. 11. 8. [Java] 문자열 자르기, 추출하기 (substring(), split()) substring(), split() 메서드는 Java에서 문자열을 처리하고 나누는 데 사용되는 두 가지 주요 메서드입니다. substring() -문자열에서 원하는 부분 문자열을 추출하는 데 사용됩니다. -새로운 문자열을 반환하며, 원본 문자열은 변경되지 않습니다. public String substring(int startIndex) public String substring(int startIndex, int endIndex) //startIndex 매개변수는 추출을 시작할 문자의 인덱스를 나타냅니다. 첫 번째 문자의 인덱스는 0입니다. //endIndex 매개변수는 추출을 끝낼 문자의 바로 다음 인덱스를 나타냅니다. 이 매개변수를 생략하면 startIndex부터 문자열의 끝까지 추출됩니다. spl.. 개발이야기/Java 2023. 11. 8. [Java] 문자열 체크하기 (null, 중복, 숫자, 태그) 아래 소스 코드는 문자열을 조작하고 처리하는 작업을 수행하는 메서드들입니다. 간단하지만 자주 사용하는 메서드이니 확인하시면 좋을 것 같습니다. 소스코드 설명 ㅇ isEmpty(String str) : 주어진 문자열이 비어있는지 여부를 체크하는 메서드입니다. 문자열이 null이거나 공백 문자로만 이루어져 있거나 "null" 문자열인 경우에 비어있다고 판단하여 true를 반환합니다. ㅇ isEquals(String orgStr, String comStr) : 두 개의 문자열을 비교하여 동일한지 여부를 확인하는 메서드입니다. ㅇ parseInt(String strParam) : 문자열을 정수로 변환하는 메서드입니다. 주어진 문자열이 정수로 파싱 가능한 경우에는 해당 정수 값을 반환합니다. 정수로 변환할 수 없.. 개발이야기/Java 2023. 8. 11. [Java] 날짜 차이 계산하기 (일수 차이, 년도/월, 마지막 날짜) 아래 소스 코드는 두 날짜 사이의 차이를 계산하고, 두 날짜 사이의 년도와 월의 배열을 생성 할 수 있으며, 특정일에 대한 월의 마지막 요일과 마지막 날짜를 구하는 소스 코드 입니다. 메서드를 통해서 다양한 날짜 연산 기능을 확인 하실 수 있습니다. 소스코드 ㅇ getProperFormat : 주어진 날짜 문자열의 길이에 따라 적절한 포맷의 날짜 형식을 반환합니다. ㅇ toCalendar : 날짜 문자열을 Calendar 객체로 변환하는 메서드입니다. 주어진 날짜 문자열을 적절한 포맷으로 파싱하여 Calendar 객체로 반환합니다. ㅇ dateDiff : 두 날짜 사이의 일 수 차이를 계산합니다. 오버로딩된 메서드 중 하나는 시작일과 종료일을 포함하거나 포함하지 않는 옵션을 설정할 수 있습니다. ㅇ ca.. 개발이야기/Java 2023. 8. 10. [Java] 날짜 포맷 변환하고 활용하기 사용법, 예제 (SimpleDateFormat, Date) 아래 소스 코드는 날짜와 시간을 다양한 형식으로 포맷하고 조작하고 있습니다. 소스코드 상수 LONG_DATE_STR, LONG_DATE_STR_FILE, SHORT_DATE_STR, MIN_SHORT_DATE_STR : 날짜 포맷을 정의하는 상수들입니다. DEFAULT_DATETIME_FORMAT, DEFAULT_DATETIME_FORMAT_FILE, MIN_DATE_FORMAT, DEFAULT_DATE_FORMAT, DEFAULT_SHORT_DATE_FORMAT : SimpleDateFormat 객체를 사용하여 각각의 날짜 포맷을 처리하기 위한 상수들입니다. MILLI_SEC_A_DAY : 하루를 밀리초로 나타낸 상수입니다. 메서드 getCurrentDatetime(): 현재 날짜와 시간을 기본 포맷으.. 개발이야기/Java 2023. 8. 9. [Java] 소수점 원하는 자리수 만큼 반올림 하여 출력하기 (Math 클래스) 아래 소스 코드는 Math 클래스를 사용하여 입력된 숫자를 지정된 자릿수까지 반올림한 결과를 얻는 코드입니다. Math.round() 함수 : 숫자를 가장 가까운 정수로 반올림하는 기능을 수행합니다. ex ) Math.round(3.6) //결과 : 4 Math.pow() 함수 : 숫자의 절대값을 구하거나 제곱 값을 계산할 수 있습니다. ex ) double result = Math.pow(2, 3); //결과 : 8.0 계산식은 d를 10의 n제곱만큼 곱하여 소수점 이하 n자리를 정수로 만들고, 정수로 반올림한 값을 다시 10의 n제곱만큼 나눠서 원래 소수 자릿수 형태로 나타 냅니다. public class TT { /** * double 형태의 값을 지정된 자릿수까지 반올림하여 반환한다. * 값이 비.. 개발이야기/Java 2023. 8. 8. [Java] XSS (크로스 사이트 스크립팅), SQL Injection 필터링 하기 아래 소스 코드는 사용자가 입력한 값으로부터 발생할 수 있는 XSS 및 SQL Injection으로부터 보호하기 위한 메서드입니다. replaceXssAnsSqlInjection 메서드는 입력된 문자열에서 특정 문자나 패턴을 검색하고 대체하여 취약점을 예방합니다. 아래와 같이 문자열 대체만으로는 보안 취약점을 완벽히 해결 못하니, 보다 체계적인 방어 전략을 적용하셔야 합니다. public class TT { /** * XSS 및 Sql Injection Replace * @param str * @return */ public static String replaceXssAnsSqlInjection(String value) { value = value.replaceAll("", ">"); value = va.. 개발이야기/Java 2023. 8. 8. [Java] 랜덤 문자열 생성하기 (특수문자 포함, 대문자만, 소문자만, 숫자만, 소문자/숫자) 아래 소스 코드는 getRandomValue 메서드를 사용해서 매개변수 (type, cnt)를 받아서 type에 따라 다양한 문자열을 생성하고 반환합니다. 코드를 통해 임시 비밀번호 생성, 보안 코드 생성 등에서 활용 하실 수 있습니다. 간단한 소스이니 확인하시고 사용하시면 됩니다. import java.util.Random; public class TT { /** * 숫자, 문자 등 조합하여 랜덤값 뽑기 * @param type * @param cnt * @return */ public static String getRandomValue(String type, int cnt) { StringBuffer strPwd = new StringBuffer(); char str[] = new char[1]; /.. 개발이야기/Java 2023. 8. 7. 이전 1 2 3 다음 💲 추천 글 반응형