본문 바로가기
반응형

Develops/JAVA5

[JAVA] try-with-resources 활용하기 (자동 자원종료 기능) 최근엔 Java를 자주 개발하지 않지만 교육을 들으며, 알아두면 좋을 것 같은 문법을 발견하여 기록해둔다.평소에 자원을 활용하는 코드를 작성할 때엔 무조건 try-catch-finally 문으로 마지막에 close() 를 해주는게 당연하다고 생각했는데, try-with-resources 구문을 활용하면 try문이 종료될 때 자동으로 자원을 종료해주니 코드도 간결해지고 가독성도 좋아질 것 같다는 생각이 들었다. 기억해두었다가 추후 개발을 하게 되면 활용해야겠다. 설명try-with-resources이란?try에 자원 객체를 전달하면, try 코드 블록이 끝나면 자동으로 자원을 종료해주는 기능Java7부터 추가된 기능AutoCloseable 인터페이스를 구현하고 있는 자원에 대해서만 지원try-catch-f.. 2024. 11. 2.
[JAVA] 변수명 표기법 정리 (카멜, 파스칼, 스네이크, 케밥, 헝가리안) JAVA로 개발된 프로젝트들을 보면 프로젝트마다 개발자에 따른 차이인지 파일이름, 변수이름, 함수이름 등 이름 표기에 대한 규칙이 제각각인 편이다.무엇이 정답이다 하는 것은 없지만 개인적으로 생각으로는 최대한 가독성 있게 표기하는게 좋은 방식인 것 같고, 이미 구축된 프로젝트를 유지보수하는 경우에는 개인적으로 선호하는 표기법보다는 기존에 사용된 표기법을 사용하여 일관성을 지켜주는 것을 맞는게 아닌가 싶다. 그를 위해서는 다양한 표기법에 대해 숙지하도록 하자.​1. 카멜 표기법(camel case)예시 : dailyUserTable낙타 등처럼 내려갔다 올라가는 모양이라 하여 지어진 이름단어가 여러개 붙을 때, 앞 단어를 제외한 첫자를 대문자로 표기java, C# 등의 언어들에서 권장​2. 파스칼 표기법(p.. 2024. 5. 18.
[JAVA] 자바 로깅 비교 (Logger, Log4j, SLF4J, Logback, Log4j2) 로그(log)는 소프트웨어의 이벤트를 기록하는 것으로써, 소프트웨어의 동작상태를 파악하고 문제가 발생했을 때 이 동작 파악을 통해서 소프트웨어의 문제를 찾아내고 해결하기 위해 디자인 되었다. 즉, 소프트웨어의 디버깅이나 모니터링을 위하여 정보를 기록하는 곳에 사용되는데 기존의 Debugger나 println에 비해 로그는 다음과 같은 장점이 있다. 상활별 Level을 지정하여 Level별 메세지를 선택가능 응용 프로그램의 실행에 대한 흐름과 에러 확인 가능 프레임워크를 이용하여 간단하고 쉬운 사용환경 조성 가능 모듈 별로 유연하게 메세지 출력 가능 자유로운 출력 위치 및 다양한 출력 형식 지원 Java에서는 이러한 로그에 대해 여러 프레임워크가 존재한다. 로깅 프레임워크에는 slf4j, log4j,l l.. 2024. 3. 30.
[JAVA] Lombok 활용하기(Annotation을 활용한 Getter, Setter 처리) Java 언어를 이용해 개발을 하다 보면 기계적으로 작성해야 하는 코드들(Getter, Setter, ToString 등)이 상당히 많은데, 그런 코드들을 자동화하여 코드 다이어트를 해주는 Java 필수 라이브러리가 Lombok이다. 설명 Lombok이란? 어노테이션 기반으로 코드를 자동완성 해주는 라이브러리 Getter, Setter, Equlas, ToString 등과 다양한 방면의 코드를 자동완성 해준다 Lombok 장점 어노테이션 기반의 코드 자동 생성을 통한 생산성 향상 반복되는 코드 다이어트를 통한 가독성 및 유지보수성 향상 Getter, Setter 외에 빌더 패턴이나 로그 생성 등 다양한 방면으로 활용 가능 Lombok Annotation 종류 Annotation 설명 @Getter @Se.. 2024. 3. 30.
[JAVA] 문자열 Byte로 자르기 문자열을 지정된 Encoding으로 Byte Size만큼 자르는 메서드 - '\n' 값이 없을 경우 Byte Size 로 Split - Byte Size 내의 가장 가까운 '\n' 값을 기준으로 Split - '\n\n' 값이 있을 경우 강제 Split /** * 문자열을 지정된 Encoding으로 Byte Size만큼 자르는 메서드 * @param raw 문자열 * @param len 자를 Byte Size * @param encoding 문자열의 인코딩 방법 ex) UTF-8, EUC-KR, CP949 * @return String[] len에서 지정한 크기로 자른 문자열 결과값을 배열로 반환 */ public static String[] parseStringByBytes(String raw, int.. 2024. 3. 3.
반응형