JAVA

+ 배경지식 https://splendidlolli.tistory.com/561 [JDBC] DB Connection을 얻어서 query 실행 | DriverManager과 DataSource를 통하여 (+ Connection Pool 개념)JDBC JDBC는 Java에서 DB에 접속할 수 있게 하는 API이다. JDK에 포함되어있다. Persistence Layer(즉 DB와 연결하는 부분)을 위해 존재한 최초의 Component가 JDBC이다. 즉 JDBC는 역사가 깊은 API다. JDBC driver Java에splendidlolli.tistory.comJava에서 DB와 연결되기 위해서는 Jdbc api를 거쳐야 한다. 개발자는 Jdbc api를 사용하여 DB에 접근(query 보내기 등)할 수 ..
· JAVA
JDBC JDBC는 Java에서 DB에 접속할 수 있게 하는 API이다. JDK에 포함되어있다. Persistence Layer(즉 DB와 연결하는 부분)을 위해 존재한 최초의 Component가 JDBC이다. 즉 JDBC는 역사가 깊은 API다. JDBC driver Java에서 DB를 사용하려면 JDBC 드라이버가 있어야 한다. JDBC 인터페이스를 각 DBMS에 적절하게 구현한 것이 JDBC 드라이버이다. JDBC 드라이버는 자신이 사용할 DBMS에 맞춰 다운로드 받으면 된다. 백엔드 개발자는 DB 종류와 상관없이 JDBC API를 사용해서 DB와 연결한다. 아래 그림을 보면 개발자는 JDBC api를 사용하여 db에 접근하도록 되어있다. DB와 연결 ─> Connection을 얻는다 JDBC ap..
· JAVA
List에 문자열을 담고 for문 내에서 동적으로 처리(삭제)해야 할때 흔히 Iterator를 사용한다. Iterator의 remove() 메서드를 사용하여 삭제할 수 있다. 내가 오늘 새롭게 알게 된 것은 Iterator객체의 현재 요소를 remove()하면 원본 List에서 삭제된다는 것이다. 처음에는 Iterator 객체와 List 객체를 완전히 분리하여 생각했기 때문에 몰랐던 내용인데, Iterator가 컬렉션을 읽는 방법 중 하나이고 컬렉션을 내재하고 있다는 사실을 알게 되고 나서 이해가 잘 되었다. ↓ ● 일단 Iterator라는 것은 뭘까? 자바 컬렉션의 요소들을 읽어오는 방법을 표준화한 방법 중 하나이다. 즉, 컬렉션 요소를 Iterator로 읽어올 수 있다. 그러면 컬렉션이 뭔지 알아야겠..
· JAVA
Java의 String에 대해 정리한다. 잘 이해하려면 사전지식을 알고 가자. ∨ 사전지식 : 문자열 리터럴 vs 문자열 객체 - 문자열 리터럴 객체 : heap의 상수풀(String constant pool)에 담긴다 (java7 이상 : 상수풀이 heap영역에 위치) : 문자열은 상수풀에 하나만 생성된다. 상수풀에는 동일 문자열이 중복으로 생성될 수 없다. : 문자열 변수가 동일한 문자열을 가리킨다면, 그것은 상수풀 내의 같은 문자열을 참조한다. - 문자열 객체 (리터럴x) : heap에 담긴다 : 동일 문자열이 서로 다른 객체로 존재한다. String 더하기 여러 String을 더할 때 "기본"은 이렇다. 그냥 String 객체끼리 더해주는 것이다. String str1 = "aaaaaa"; Str..
· JAVA
교내활동때문에 개설했지만 일단 웹 공부한 내용은 여기에 정리하려구한ㄷr 스프링(부트) 중심이다 https://cherryjubilee.tistory.com 체리쥬빌레롸잇나우 cherryjubilee.tistory.com --- 참고: 이제 다시 이 블로그에 올리려고 함. 저 시절 한시적으로 사용했던 블로그였음.
· JAVA
오버라이딩 조건 중 하나는 반환타입이 같아야 한다는 것이다. 하지만 완전히 똑같아야 하는 것은 아니다. 기존 반환타입이 부모타입 & 오버라이딩한 반환타입이 자식타입인 케이스는 가능하다. 즉 오버라이딩시 반환타입을 변경하고 싶을 경우 상속관계가 있는 반환타입으로 변경할 수 있다. [ 예시 상황 ] xxxRepository가 CrudRepository을 상속하고있고 부모인 CrudRepository는 findAll()메서드를 가지고 있으며 반환타입은 Iterable이다. 그러나 Iterable로 반환하고 싶지 않고 그냥 List로 반환하고 싶을 수도 있다. 여기서 오버라이딩의 조건이 생각난다. 오버라이딩시 반환타입이 동일해야 한다는 조건이다. 하지만 반환타입이 동일하지 않다고 해서 망설일 필요가 없다! It..
· JAVA
지난 학습 : 2022.03.26 - [JAVA/자바 학습] - 실전 Java 소프트웨어 개발 | 입출금 내역 분석기 실습하기 이번에는 지난시간(챕터2)의 입출금내역 분석기를 확장하면서, JAVA소프트웨어 개발의 다른 원칙을 배운다. [ 입출금 내역 분석기 - 확장 ] 정리 내용 1. 확장된 프로젝트 구조 2. 실습에서 배운 것 3. 도전과제 해결 4. 앞으로 더 알아가야 할 것 1. 확장된 프로젝트 구조 기존 클래스의 구조도 개선하긴 했는데 일단 덮어두고, 아예 새롭게 추가한 클래스는 이렇다. Validator : 읽어온 데이터에 대한 검증(예외처리)을 하는 Validator Notification : 예외 내용은 여기에 기록해둔다. 함수형 인터페이스 Filter : 비슷한 메서드(month월에 amo..
· JAVA
Java로 코딩테스트를 칠 때, 느리다고 유명한 Scanner보다 BufferedReader를 쓰라는 말이 있다. 지금까지는 나는 Scanner를 사용했었다. 왜냐하면, 직접적으로 BufferedReader의 필요를 느끼는 순간이 금방 올 거라고 생각했고, 그 순간에 BufferedReader의 효과를 직접 느끼면서 Scanner -> BufferedReader로 갈아끼우고 싶어서이다. 이번에 그 순간이 왔다! 이 문제를 풀면서다. BOJ2448 이 문제의 입출력 특징 : 입력 : 맨 처음에 정수 하나만 들어온다. 출력 : matrix의 모든 내용물을 for문을 돌며 출력해줘야 한다. 첫 시도에서는 여기서 System.out.print()를 사용해주었는데, 시간 초과를 만났다. 그래서 print대신에 B..
· JAVA
* 한빛미디어+O'REILLY의 Real-World Software Development (실전 자바 소프트웨어 개발)의 실습내용을 정리한 것이다. 실전 자바 소프트웨어 개발 이제 막 경력을 쌓기 시작한 자바 개발자가 최신 소프트웨어 개발 방법까지 알기란 벅찬 일입니다. 테스트 주도 개발 같은 객체지향 원칙을 배워야 할지, 함수형 프로그래밍을 배워야 할지 갈피 www.hanbit.co.kr 책택배를 받고나서 바로 다음날이 마침 주말이라, 바로 실습해봤다. 이 책을 한마디로 표현하자면 멈출 수 없는 맛...🤣 첫번째 실전 자바 소프트웨어 실습, [ 입출금 내역 분석기 ] 정리 내용 1. 프로젝트 구조 2. 실습에서 배운 것 3. 도전과제 해결 4. 앞으로 더 알아가야 할 것 1. 프로젝트 구조 이번 실습한..
· JAVA
알고리즘 공부하다가 enum이라는 타입과 다시 만났다. 내가 작년 7월 5일에 학습했던 타입이다. 거의 1년 전에 한번 슥 보고 지나갔더니 잊어서 다시 공부한다. 1년간 크게 발전하지 못했음을 반성하며 학습에 들어간다. 열거 타입(enum): 한정된 값만을 갖는 타입이다. 예를 들어 보자. 아래 사진에서 열거타입(enum)인 Week는 한정된 7개의 값(MONDAY...SUNDAY)만을 가진다. 한정된 7개의 값(MONDAY...SUNDAY)은 '열거 상수'라고 한다. 한정된 열거 상수 중 하나의 상수를 저장하는 타입이 바로 enum 즉 열거타입이다. ▶ 이름짓기 관례 - 열거타입 이름은 관례적으로 첫 글자를 대문자로 (예시에서는 Week) - 열거 상수는 관례적으로 모두 대문자로 작성 (MONDAY....
히어로맛쿠키
'JAVA' 카테고리의 글 목록 (5 Page)