글 전체보기27 [자바 웹개발] Chap 02. 웹과 데이터베이스 📚 JDBC 프로그램 'Java Database Connectivity'의 약자 자바 프로그램과 데이터베이스를 네트워크 상에서 연결해 데이터를 교환하는 프로그램 JDBC 드라이버를 통해 해당 프로그램 작성 가능 📚 JDBC 프로그램 작성 순서 네트워크를 통해 데이터베이스와 연결 맺기 데이터베이스에 보낼 SQL을 작성하고 전송하기 필요하다면 데이터베이스가 보낸 결과를 받아서 처리하기 데이터베이스와 연결을 종료하기 ✏️ DDL (Data Definition Language) : 데이터베이스에서 실행하는 SQL 중 특정한 방식의 테이블을 생성하거나 객체들을 생성할 때 사용하는 SQL 종류 ✏️ DML과 쿼리문 간의 차이점 DML 쿼리문 의미 : insert/update/delete문 의미 : select문 몇.. 2024. 1. 21. [자바 웹개발] Chap 01. 웹 프로그래밍의 시작 [자바 웹개발] 카테고리는 '자바 웹 개발 워크북' 책을 공부하는 글이 업로드될 예정이다. 블로그 글에는 간단한 정리 내용들을 작성하고, 코드들은 마지막에 깃허브 링크를 첨부할 예정이다. https://m.yes24.com/Goods/Detail/111136639 자바 웹 개발 워크북 - 예스24 자바 웹 개발자로 취업이나 이직을 준비 중이라면!성장하는 개발자가 되기 위한 맞춤 안내서서블릿에서 스프링 부트까지 한번에, API 서버를 위한 REST 방식과 JWT 처리까지이 책은 제목 그대로 워 m.yes24.com 📚 웹 기본 동작 방식 이해하기 브라우저는 자신이 원하는 정보를 전달하기 위해 두 가지 방식을 이용한다. GET 방식 주소창에 직접 원하는 데이터를 적거나 링크를 클릭해서 호출 원하는 웹의 주소.. 2024. 1. 16. [스프링5 입문] Chap 08. DB 연동 📚 커넥션 풀이란? 여기에 생성된 커넥션은 지속적으로 재사용된다. 한 커넥션이 영원히 유지되는 것은 아니고, DBMS 설정에 따라 일정 시간 내에 쿼리를 실행하지 않으면 연결을 끊기도 한다. 이런 문제로 일어날 문제 상황을 방지하려면 커넥션 풀의 커넥션이 유효한지 주기적으로 검사해야 한다. 이와 관련된 속성 minEvictableIdleTimeMillis timeBetweenEvictionRunsMillis testWhileIdle 커넥션 풀을 사용하는 이유는? 성능 때문이다. 매번 새로운 커넥션을 생성하면 그때마다 연결시간이 소모된다. 커넥션 풀을 사용하면 미리 커넥션을 생성했다가 필요할 때에 커넥션을 꺼내 쓰므로 커넥션을 구하는 시간이 줄어 전체 응답 시간도 짧아진다. -> 커넥션 풀을 초기화할 때 .. 2024. 1. 12. [스프링5 입문] Chap 07. AOP 프로그래밍 📚 프록시란? 핵심 기능의 실행은 다른 객체에 위임하고 부가적인 기능을 제공하는 객체를 부르는 말 프록시의 특징 핵심 기능은 구현하지 않는 점 아래와 같은 코드의 경우, ImpeCalculator, RecCalculator는 ‘팩토리얼 연산’이라는 핵심 기능을 구현한다. (각 클래스에서) 반면, ExeTimeCalculator 클래스는 팩토리얼 연산 자체를 구현하고 있지 않다. public class MainProxy { public static void main(String[]args) { // 기존 코드의 변경 없이 실행 시간을 출력할 수 있다. // factorial() 기능 자체를 구현하기 보다는 다른 객체에 factorial()의 실행을 위임한다. // 계산 기능 외에 다른 부가적인 기능을 실행.. 2024. 1. 8. [스프링5 입문] Chap 06. 빈 라이프사이클과 범위 // 1. 컨테이너 초기화 (빈 객체의 생성, 의존 주입, 초기화) AnnotationConfigApplication ctx = new AnnotationConfigApplication(AppContext.class); // 2. 컨테이너에서 빈 객체를 구해서 사용 Greeter g = ctx.getBean("greeter", Greeter.class); String msg = g.greet("스프링"); System.out.println(msg); // 3. 컨테이너 종료 (빈 객체의 소멸) ctx.close(); 📚 빈 객체의 라이프 사이클 객체 생성 → 의존 설정 → 초기화 → 소멸 @Configuration public class AppCtx { @Bean public Client client().. 2024. 1. 7. [스프링5 입문] Chap 05. 컴포넌트 스캔 📚 @Component 애노테이션 스프링이 검색해서 빈으로 등록이 가능하려면 클래스에 @Component 애노테이션을 붙여야 한다. @Component 애노테이션은 해당 클래스를 스캔 대상으로 표시한다. @Component public class MemberDao { ... } 위 경우에는 Component 애노테이션에 값을 주지 않았다. 이 경우 클래스 이름의 첫 글자를 소문자로 바꾼 이름을 빈 애노테이션으로 사용한다. (memberDao) @Component("infoPrinter") public class MemberInfoPrinter { ... } 위 경우는 Component 애노테이션에 값을 주었다. 클래스 이름은 MemberInfoPrinter이지만 빈 이름으로 “infoPrinter”를 사.. 2024. 1. 6. 이전 1 2 3 4 5 다음