본문 바로가기

▶ Back-End114

해당 월 말일 산출 간단한 함수를 통해 말일을 산출 ▷ Example /** 해당 월 말일 산출 */ public static Integer getLastDay(Integer year,Integer month) { Calendar cal = Calendar.getInstance(); cal.set(year, month-1,1); int lastDay = cal.getActualMaximum(Calendar.DATE); return lastDay; } /** Example */ public static void testDateFrtLst() { // 날자 생성 LocalDate today = LocalDate.now(); String year = String.valueOf(today.getYear()); String mont.. 2021. 4. 23.
문자열 중간 마스킹 처리 더 간단한 방법 고민 필요 ▷ Example - 영어 이름, 이름 길이 상관 없이 사용자 이름 중간 마스킹 처리 /** 사용자 이름 마스킹 처리 */ public String midMasking(String userName) { // 사용자 이름 첫글자 String frsName = userName.substring(0,1); // 사용자 이름 중간글자 String midName = userName.substring(1, userName.length()-1); // 사용자 이름 중간글자 마스킹 String cnvMidName = ""; for(int i=0; i< midName.length(); i++){ cnvMidName += "*"; // 중간 글자 수 만큼 * 표시 } // 사용자 이름 마지막 글.. 2021. 4. 22.
문자열 n번째 이후 마스킹 처리 정규식을 통한 간단한 마스킹 처리 ▷ Example - 사용자 아이디 앞 2글자 뒤로 마스킹 처리 /* 사용자 아이디 마스킹 처리 */ public String idMasking(String userId) { // 정규식 이용, {2} 범위 뒤로는 전부 마스킹 처리 // 마스킹 완성된 사용자 아이디 String maskingId = userId.replaceAll("(? 2021. 4. 22.
두 지점간의 거리 계산 공식을 이용한 거리 계산 ▷ Example public class LocationDistance { public static void main(String[] args) { // 마일(Mile) 단위 double distanceMile = distance(37.504198, 127.047967, 37.501025, 127.037701, ""); // 미터(Meter) 단위 double distanceMeter = distance(37.504198, 127.047967, 37.501025, 127.037701, "meter"); // 킬로미터(Kilo Meter) 단위 double distanceKiloMeter = distance(37.504198, 127.047967, 37.501025, 127.037.. 2021. 4. 16.
Object List 정렬(Collectrions.sort()) Collectrions.sort로 간단하게 해결 *정렬 시 사용 할 Comparator Override *아래 더 간단한 로직 참고 ▷ Example - 나와 가장 가까운 분식집 순으로 정렬 public static void testSort() { // 테스트 데이터 생성 List list = new ArrayList(); DistVO vo; vo = new DistVO(); vo.setName("짱구분식"); vo.setDist(11); list.add(vo); vo = new DistVO(); vo.setName("홍길동분식"); vo.setDist(5); list.add(vo); vo = new DistVO(); vo.setName("김길동분식"); vo.setDist(5); list.add(vo).. 2021. 4. 16.
숫자 천 단위 콤마 추가 NumberFormat으로 간단하게 해결 ▷ Example public void test() { int number01 = 1000000000; int number02 = 100; String number03 = "1000"; System.out.println(number01); // 1000000000 System.out.println(number02); // 100 System.out.println(number03); // 1000 // NumberFormat.getInstance().format(숫자) String commaNum01 = NumberFormat.getInstance().format(number01); String commaNum02 = NumberFormat.getInstance().. 2021. 3. 5.
문자열에 가변적인 특정 문자열을 원하는 위치에 추가 StringBuffer Class로 간단하게 해결 *고정된 메세지에 가변적 문자열을 추가해야 한다고 가정 ▷ Example public void test(){ String str = "오늘 총 걸음 걸으셨습니다."; // 고정 문자열 int number01 = 1000; int number02 = 10000; // .insert(원하는 위치, 추가할 문자열) StringBuffer msg01 = new StringBuffer(str); msg01.insert(5, NumberFormat.getInstance().format(number01)); StringBuffer msg02 = new StringBuffer(str); msg02.insert(5, NumberFormat.getInstance().for.. 2021. 3. 5.
JSON Unrecognized field 해결방법(@JsonIgnoreProperties) JSON 데이터를 구성하는 요소가 가변적일 때 무시하는 방법 *소스는 변하지 않았지만 연동 했던 API 응답 값이 변했다고 가정 ▷ ERROR - JSON 데이터를 매핑하지 못해 에러 발생 com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field ▷ 해결 방법 *2가지 중에 골라서 사용 - Example JSON data { "id": 1, "name":"test" } ① 클래스 레벨에 @JsonIgnoreProperties 어노테이션 - 특정 요소 제외 @JsonIgnoreProperties({"name"}) public class TestClass{ String id; } - 선언한 필드 이외 모든 요소 제.. 2021. 3. 3.
리눅스 권한(Permission) 설정(8진수 표기) 멀티유저 운영체제인 리눅스는 보안을 위해 파일, 디렉토리에 대한 권한, 소유자, 그룹을 설정 ▷ 권한 - 읽기(r) : 조회 - 쓰기(w) : 등록, 수정, 삭제 - 실행(x) : 실행 ▷ 권한 정보 rwxr-xr-x - rwx : 소유자 권한(User) - r-x : 그룹 권한(Group) - r-x : 기타 사용자 권한(Other) ▷ 권한 설정 명령어 chmod [옵션][모드][파일] - 도움말 명령어 : chmod --help ▷ 8진수 표기 *문자 표기 설명 생략 8진수 표기 문자 표기 0 --- 1 --x 2 -w- 3 -wr 4 r-- 5 r-x 6 rw- 7 rwx ▷ Example *현재 디렉토리 위치 기준 - 현재 디렉토리를 포함한 하위의 모든 파일+디렉토리 권한 변경 chmod 644.. 2021. 2. 17.
728x90
728x90