일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- spring
- 자바
- MariaDB
- 네트워크
- github
- Linux
- 오블완
- Python
- error
- java
- docker
- IntelliJ
- pandas
- mysql
- 인덱스
- PostgreSQL
- iBatis
- 후기
- Kibana
- 티스토리챌린지
- Javascript
- SQL
- 명령어
- git
- oracle
- mssql
- DBMS
- 쉘스크립트
- 독서
- 리눅스
- Today
- Total
목록java (19)
hanker
자바에서 Base64 인코딩/디코딩을 할 때 아직도 sun.misc.BASE64Encoder를 사용하고 있다면, 이제는 사용할 수 없다.Java 8부터 사용이 권장되지 않았고(deprecated), Java 9부터는 아예 코드에서 제거되었기 때문에 최신 자바 환경에서는 컴파일조차 되지 않는다. 대신, Java 8부터 표준 라이브러리에 포함된 공식적인 대체재인 java.util.Base64 클래스를 사용해야 한다.이 클래스는 Base64 작업을 위한 안정적이고 안전하며 공식적으로 지원되는 방법을 제공한다. Java 11 버전 이상에서 Base64 인코딩/디코딩 예제 import java.util.Base64;public class Base64Example { public static void mai..

Java 8 이후 3년 만에 출시된 Java 11 버전 (LTS 버전)의 주요 차이점들을 알아보자. 주요 요약표구분Java 8Java 11HTTP 클라이언트HttpURLConnection새로운 HTTP Client APIString 처리기본 메서드isBlank(), strip(), repeat() 등 추가파일 I/O복잡한 코드Files.readString(), writeString()라이선스무료Oracle JDK 유료화 (OpenJDK 무료) 1. 라이선스 정책의 변화 Java 11의 가장 큰 변화 중 하나는 Oracle JDK의 라이선스 정책이다.Oracle JDK는 상업적 사용 시 유료 라이선스가 필요하게 되었지만, OpenJDK는 여전히 무료로 사용할 수 있다. 대부분의 기업은 OpenJDK 기..

Java String to 전화번호 형식으로 포맷팅 방식/** * 전화번호 포맷팅 클래스 */public class PhoneNumberFormatter { /** * 전화번호 문자열을 받아서 표준 포맷으로 변환합니다. * @param phoneNumber 원시 전화번호 문자열 (예: "01012345678", "(010)12345678") * @return 포맷팅된 전화번호 문자열 또는 포맷팅이 불가능한 경우 원본 문자열 반환 */ public static String formatPhoneNumber(String phoneNumber) { // 1. 전화번호에서 숫자만 추출합니다. String digits = phoneNumber.repl..

Enum 클래스는 Java에서 상수 집합을 정의하기 위한 특수한 데이터 타입이다.Java 5에서 도입된 enum은 단순한 상수 나열 이상의 기능을 제공하며, 객체지향적인 설계를 도와준다. 이번 글에서는 Enum 클래스의 주요 특징과 사용법, 내부 메커니즘에 대해서 알아보자. 1. Enum 이란? Enum은 한정된 상수들의 집합을 나타내며, 타입 안전성을 보장한다.즉, 미리 정의된 값 이외의 값이 할당되지 않아 코드의 안정성을 높인다.public enum Day { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY}위의 예제는 요일을 상수로 정의한 Enum 이다. 2. Enum의 내부 구조와 동작 2-1. Java.lang.Enum 상속모..

Java에서 Set이란 단순하게 얘기하면 중복을 제거해주는 컬렉션이다. 이번 글에서는 단순하게 중복을 제거하는 컬렉션 이상의 내용을 알아보자.1. Set의 기본 사용법 1-1. Set이란?Set은 중복된 값을 허용하지 않으며 순서가 보장되지 않는다. 1-2. HashSet, TreeSet, LinkedHashSet 사용 예제public class Main { public static void main(String[] args) { // HashSet: 빠른 검색(O(1)), 순서 보장X Set hashSet = new HashSet(); hashSet.add("Python"); hashSet.add("Java"); hashSet.add..
웹 개발을 하다 보면 페이징 처리는 필수적으로 하게 되는데,그리드 라이브러리를 쓰지 않고 처리하게 될 경우 페이징은 손수 개발자가 직접 구현해야 한다. 이번 글에서는 페이징 처리를 하기 위해 각 SQL 별로 페이징 쿼리를 알아보자. 1. Client → Server 파라미터 값 - page : 현재 페이지 번호 - 1 (예를 들어 3페이지면 page = 2)- size : 페이지당 데이터 건수 (한 페이지당 보여질 데이터 수)- offset : page * size * offset 값은 항상 page * size로 계산2. 각 DBMS 별 Query 2-1. MySQLMySQL인 LIMIT과 OFFSET구문을 사용한다.-- MySQL-- offset = page * sizeSELECT *FROM use..

https://hanke-r.tistory.com/entry/Java-CheckedException%EA%B3%BC-UncheckedException%EC%9D%B4-%EB%AD%90%EC%A7%80 이전에 예외처리 관련해서 글을 작성했었는데, 해당 내용만으로는 실제 활용하기에는 어려움이 있어, 보다 더 자세하게 예외처리에 대해서 작성해 본다. 이번 글에서는 예외처리를 어떻게 사용하는지와 효율적으로 관리하는 방법에 대해서 알아보자. 1. 예외의 종류와 특징 자바의 예외는 크게 Checked Exception과 Unchecked Exception으로 나뉜다.위 링크에 상세하게 설명해 있으니 간단하게만 작성하고 넘어가도록 하자. 1-1. Checked Exception- 컴파일러가 예외 처리를 강제- 반드시..
자바에서 객체지향 프로그래밍(OOP) 개념에서 상속과 다형성은 매우 중요하다. 이번 글에서 어떤 개념인지, 어떻게 활용하는지에 대해서 알아보자. 1. 추상 클래스와 인터페이스https://hanke-r.tistory.com/entry/JAVA-JAVA%EC%97%90%EC%84%9C-%EC%9D%B8%ED%84%B0%ED%8E%98%EC%9D%B4%EC%8A%A4%EC%99%80-%EC%B6%94%EC%83%81-%ED%81%B4%EB%9E%98%EC%8A%A4%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C JAVA - JAVA에서 인터페이스와 추상 클래스의 차이점은 무엇일까?Java에서 인터페이스와 추..

클라이언트와 서버 간 데이터를 효율적으로 주고받기 위해 RESTful API가 널리 사용되고 있다.오늘은 Java 기반의 Spring Boot를 활용해 RESTful API를 설계하는 기본 개념과 방법을 알아보자! 1. RESTful API란? REST(Representational State Transfer)는 웹 서비스 아키텍처 스타일 중 하나로, HTTP 프로토콜을 기반으로 클라이언트와 서버 간 데이터를 주고받는 방법이다. RESTful API는 다음과 같은 특징을 가진다.URL 기반: URI는 특정 리소스를 식별하는 통합 자원 식별자를 나타냄 (예: /users, /products/1). HTTP 메서드 활용:- GET: 자원 조회- POST: 자원 생성- PUT: 자원 수정- DELETE: 자원..

Java에서 가비지 컬렉션(Garbage Collection)은 더 이상 참조되지 않거나 사용되지 않는 객체를 자동으로 메모리에서 해제하여 메모리 누수(Memory Leak)를 방지하고 효율적으로 메모리를 관리하는 기능이다. 이 과정은 JVM(Java Virtual Machine)에 의해 자동으로 수행되며, 프로그래머가 메모리 관리를 직접적으로 수행할 필요가 없다.https://hanke-r.tistory.com/entry/JAVA-JDK-JRE-JVM%EC%9D%98-%EC%B0%A8%EC%9D%B4%EC%A0%90%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C JAVA - JDK, JRE, JVM의 차이점은 무엇일까?자바를 처음 접하다 보면 다양한 용어에 혼란을 느..