본문 바로가기

🌐 Language6

[ Java ] Bufferedreader VS Scanner 백준에서 알고리즘을 풀기 시작하면서 입력을 받을 때 Scanner와 Bufferedreader를 사용할 수 있는데, 어떤 차이점이 있을까? 하는 생각에 기록하게 됐다. 💻 Scanner와 BufferedReader의 사용법 💡 Scanner 클래스는 입력받은 데이터(바이트)를 다양한 타입으로 변환하여 반환하는 클래스이다. 간단하게 기본형과 String 타입을 정규표현식을 사용해 파싱(parse)할 수 있다. import java.util.Scanner; public class Input { public static void main(String[] args) { Scanner sc = new Scanner(System.in); String input = sc.nextLine(); } } Scanner 클.. 2023. 1. 10.
[ Java ] 오버로딩(Overloading) & 오버라이딩(Overriding) 📌 오버로딩(Overloading) / 확장 - 오버로딩은 자바의 한 클래스 내에 같은 이름의 메서드를 여러개 가지면서 매개변수의 타입과 개수를 다르게 하여 다양한 유형의 호출에 응답할 수 있도록 하는 방식 ( 인자를 기준으로 판단! ) - 오버로딩은 메서드 오버로딩과 생성자 오버로딩이 있으며 실제 적용되는 것은 같다 🔸 오버로딩의 조건 ⭐⭐⭐ 메소드의 이름이 같아야 한다. 매개변수의 개수 또는 타입이 달라야 한다. 접근제어자도 자유롭게 지정해 줄 수 있다. (public, default, protected, private) return값만 다르다고 해서, 접근제어자만 다르다고 해서, 매개 변수 이름이 다르다고 해서 오버로딩이라 하지 않는다. 오버로딩은 매개변수의 차이로만 구현할 수 있다. 리턴 값만, .. 2023. 1. 3.
[JPA] 연관관계 매핑 @OneToMany @ManyToOne @OneToOne @ManyToOne ⭐ 항상 Enitity 본인 중심으로 관계를 생각! : 주인공인 객체를 판단해서 어떤 어노테이션을 붙여야되고, 그 어노테이션 하위에는 어떤 다른 객체가 들어갈 수 있는지 이것들을 반드시 사전에 설계할 때 고려해 줘야 함 - 1:N) 하나의 주문은 여러 음식을 가질 수 있다. - 1:1) 하나의 주문은 하나의 쿠폰을 적용할 수 있다. - 음식점주는 여러명이 될 수 있고 레스토랑은 하나이다. (N:1) - 여러명의 고객은 여러개의 레스토랑을 좋아한다. 2022. 10. 10.
[JPA] JPA(Java Persistence API) 💡 ORM - ORM(Object-Relational Mapping)은 객체와 관계형 DB를 매핑한다는 뜻 (Java 진영에 국한된 기술은 아님) ORM 프레임워크를 사용하면 객체를 마치 자바 컬렉션에 저장하듯 저장할 수 있고, 이에 대해 ORM 프레임워크가 적절한 SQL을 생성해서 DB에 객체를 저장해준다. 즉, 객체가 테이블이 되도록 매핑시켜주는 것을 말한다. ORM을 이용하면 SQL Query가 아닌 직관적인 코드(메서드)로서 데이터를 조작할 수 있다. 예를들어, MySQL에서는 SELECT * FROM user; 라는 query를 실행해야 하지만, ORM을 사용하면 User 테이블과 매핑된 객체를 user라 할 때, user.findAll() 라는 메서드 호출로 데이터 조회가 가능하다. 💡 JPA.. 2022. 10. 7.
[ Java ] - JAP 기본적인 CRUD / DB-H2 (2) 🔻🔻🔻 환경설정: https://bkyungkeem.tistory.com/16 [ Spring Boot ] - JAP 환경 설정 / DB-H2 (1) 🔨 프로젝트 생성 인텔리제이 - Spring Initializr Type: Gradle Language: Java Java Version: 11 Type: Gradle Lombok Spring Web Spring Data JPA H2 Database MySQL Driver 🔨 H2 웹콘솔 띄워보기 경로 : src > main > resource bkyungkeem.tistory.com 🔨 기본적인 클래스 만들기 경로 = 패키지 클래스 = 클래스파일 경로: dto > 클래스: MemoRequestDto.java @Getter p.. 2022. 10. 4.
[ Java ] - JAP 환경 설정 / DB-H2 (1) 🔨 프로젝트 생성 인텔리제이 - Spring Initializr Type: Gradle Language: Java Java Version: 11 Type: Gradle Lombok Spring Web Spring Data JPA H2 Database MySQL Driver 🔨 H2 웹콘솔 띄워보기 경로 : src > main > resources > application.properties spring.h2.console.enabled=true spring.datasource.url=jdbc:h2:mem:testdb;MODE=MYSQL; spring.jpa.show-sql=true - Application.java 파일 run - http://localhost:8080/h2.. 2022. 10. 4.