전체 글53 Generics (Java) 강의를 듣던중 지네릭스 선언 방식, 사용방식이 기억이 나지 않았습니다. 지네릭스에 관한 전반적인 내용을 블로그에 정리해보겠습니다. // 강의 코드 @Slf4j @RequiredArgsConstructor public class TraceTemplate { private final LogTrace trace; public T execute(String message, TraceCallback callback) { TraceStatus status = null; try { status = trace.begin(message); // 로직 호출 T result = callback.call(); trace.end(status); return result; } catch (Exception e) { trace.e.. Java 2024. 2. 12. JVM 메모리 구조 (JAVA) JVM과 JVM 메모리 구조 JVM 메모리 구조를 알아야 하는 이유 대규모 프로젝트를 Java로 개발할 때, 메모리 관리에 따라 프로그램 성능이 월등히 차이날 수 있기 때문입니다. 이것이 어떤 상황을 의미하는지, 메모리 구조를 잘 알고 있다면 어떻게 프로그램 성능 개선에 활용할 수 있는지 아직 알 수 없지만 자바 개발자라면 기본적으로 알고 있어야 하는 덕목인 것 같아서 정리하는 시간을 가져봅니다. 우선 JVM이 무엇인지 알아보겠습니다. JVM이란? JVM은 Java Virtual Machine, 자바 가상 머신 자바와 운영체제사이에서 중계자 역할을 합니다. 그래서 자바가 운영체제 종류에 영향받지 않고 돌아갈 수 있습니다. 메모리 관리를 자동으로 해주는 가비지 컬렉터(GC)의 기능도 있습니다. 이 외의 기.. Java 2024. 2. 8. Statement 대신 PreparedStatement를 사용해야 하는 이유 1) 쿼리의 실행과정 쿼리의 실행과정은 위 그림과 같다. 1) Parsing & Normalization Phase - Query 문법 확인, Semantic check(?) 및 쿼리에 있는 테이블, 컬럼 존재여부 확인 2) Compilation Phase - 쿼리를 machine이 이해할 수 있는 형식으로 컴파일 3) Query Optimization Phase - 쿼리를 실행할 수 있는 방법들을 체크하고, 최적의 쿼리 실행 방법을 선택 4) Cache - 3) 단계의 최적의 방법을 저장 5) Execution Phase - 쿼리 실행 2) Statement, PreparedStatement의 동작 방식의 차이점 1️⃣ 캐시 사용 유무 // [Statement] Connection conn = Driv.. DB & SQL 2024. 1. 30. DB connection 에서 URL이 의미하는 것 김영한님의 스프링 DB 1편을 듣던 중 public abstract class ConnectionConst { public static final String URL = "jdbc:h2:tcp://localhost/~/test"; public static final String USERNAME = "sa"; public static final String PASSWORD = ""; } h2 database에 연결하기 위해 위와 같이 ConnectionConst를 만들고 있다. URL의 의미를 알기 위해 chatGPT에게 질문했다. jdbc: : 모든 JDBC 연결 URL에 공통되며, 이 문자열이 JDBC 연결을 나타낸다는 것을 나타낸다. h2: : 사용되는 DB driver 유형을 가르킨다. (DB dr.. DB & SQL 2024. 1. 10. BasicErrorController에서 @RequestMapping("${server.error.path:${error.path:/error}}")의 의미 [`김영한의 스프링 MVC 2` : `API 예외처리` 강의를 듣던 중 생긴 궁금증] chatGPT 에게 질문해봤다. Question : @RequestMapping("${server.error.path:${error.path:/error}}") what mean? Answer : In the context of a Java web application using the Spring Framework, the @RequestMapping annotation is used to map HTTP requests to a specific method or controller in your application. Let's break down the expression you provided: ```java @.. spring 2024. 1. 8. 이전 1 2 3 4 5 다음