Java
-
자바 ORM 표준 JPA 기본편 정리 1📌 JPA란? JPA(Java Persistent API)는 자바 진영의 ORM 기술 표준이다. ORM(Object Relational Mapping)이란 객체는 객체대로, 관계형 DB는 관계형 DB대로 설계하고 중간에서 ORM 프레임워크가 매핑을 수행하는 것을 의미한다. JPA는 Application과 JDBC(Java Database Connectivity) 사이에서 동작한다. 💡 ORM 이란 ? - Object-relational mapping, 객체 관계 매핑- 객체는 객체대로 설계 ,관계형 데이터베이스는 관계형 데이터베이스대로 설계 - 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 의미한다. ORM 프레임워크가 중간에서 매핑- 대..
자바 ORM 표준 JPA 기본편 정리 [1]자바 ORM 표준 JPA 기본편 정리 1📌 JPA란? JPA(Java Persistent API)는 자바 진영의 ORM 기술 표준이다. ORM(Object Relational Mapping)이란 객체는 객체대로, 관계형 DB는 관계형 DB대로 설계하고 중간에서 ORM 프레임워크가 매핑을 수행하는 것을 의미한다. JPA는 Application과 JDBC(Java Database Connectivity) 사이에서 동작한다. 💡 ORM 이란 ? - Object-relational mapping, 객체 관계 매핑- 객체는 객체대로 설계 ,관계형 데이터베이스는 관계형 데이터베이스대로 설계 - 객체와 관계형 데이터베이스의 데이터를 자동으로 매핑(연결)해주는 것을 의미한다. ORM 프레임워크가 중간에서 매핑- 대..
2023.11.23 -
[스프링 부트와 JPA 활용 1] 정리📌김영한님의 강의, 스프링 부트와 JPA 활용 1을 수강하며 들은 내용을 정리하려고 한다. 코드 위주의 설명이나 중요한 개념에 대해서는 설명을 하고 넘어가겠다. 프로젝트 환경 설정과 데이터 베이스 설정 등의 개인적인 설정은 넘어가겠다. 스펙 : Java 11, Intellij IDEA, H2, thymeleaf .. 📚 JPA와 DB 설정, 동작 확인이 부분을 설명하고 넘어가는 것은 실제로 필자가 강의와 똑같이 설정했으나 많은 에러가 발생하여 삽질한 경험이 있어 간략하게 설명을 한다.결과적으로는 강의에서 설명하는 것처럼 띄어쓰기에 주의해야 한다! 띄어쓰기에 유의하여 같은 실수를 반복하지 않길!* yml 과 properties는 의미는 동일하고 작성 형식의 차이가..
[스프링 부트와 JPA 활용 1] 정리[스프링 부트와 JPA 활용 1] 정리📌김영한님의 강의, 스프링 부트와 JPA 활용 1을 수강하며 들은 내용을 정리하려고 한다. 코드 위주의 설명이나 중요한 개념에 대해서는 설명을 하고 넘어가겠다. 프로젝트 환경 설정과 데이터 베이스 설정 등의 개인적인 설정은 넘어가겠다. 스펙 : Java 11, Intellij IDEA, H2, thymeleaf .. 📚 JPA와 DB 설정, 동작 확인이 부분을 설명하고 넘어가는 것은 실제로 필자가 강의와 똑같이 설정했으나 많은 에러가 발생하여 삽질한 경험이 있어 간략하게 설명을 한다.결과적으로는 강의에서 설명하는 것처럼 띄어쓰기에 주의해야 한다! 띄어쓰기에 유의하여 같은 실수를 반복하지 않길!* yml 과 properties는 의미는 동일하고 작성 형식의 차이가..
2023.11.13 -
싱글톤 패턴이란 ? 📌 스프링을 공부하면서 스프링이 없는 순수한 자바 코드에서는 DI 컨테이너를 호출될 때마다 객체를 새로 생성한며, 스프링에서는 이에 싱글톤 패턴을 적용하여 싱글톤 컨테이너를 형성한다는 사실을 알게되었다. 싱글톤 패턴에 대해 정확한 이해를 하기 위해 이 글을 작성한다. 📚 싱글톤 패턴 싱글톤(Singleton) 패턴의 정의는 단순하다. 객체의 인스턴스가 오직 1개만 생성되고 그것을 보장하는 패턴을 의미한다. 그래서 객체를 2개 이상 만들지 못하게 설계를 해야 하는데 이는 코드로 설명하겠다. public class Singleton { // 1. static 영역에 객체를 딱 1개만 생성 private static Singleton instance = new Singleton(); // ..
싱글톤 패턴이란싱글톤 패턴이란 ? 📌 스프링을 공부하면서 스프링이 없는 순수한 자바 코드에서는 DI 컨테이너를 호출될 때마다 객체를 새로 생성한며, 스프링에서는 이에 싱글톤 패턴을 적용하여 싱글톤 컨테이너를 형성한다는 사실을 알게되었다. 싱글톤 패턴에 대해 정확한 이해를 하기 위해 이 글을 작성한다. 📚 싱글톤 패턴 싱글톤(Singleton) 패턴의 정의는 단순하다. 객체의 인스턴스가 오직 1개만 생성되고 그것을 보장하는 패턴을 의미한다. 그래서 객체를 2개 이상 만들지 못하게 설계를 해야 하는데 이는 코드로 설명하겠다. public class Singleton { // 1. static 영역에 객체를 딱 1개만 생성 private static Singleton instance = new Singleton(); // ..
2023.10.25 -
🟢 객체 지향 프로그래밍이란 ?객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 ..
[JAVA] 스프링과 객체지향🟢 객체 지향 프로그래밍이란 ?객체 지향 프로그래밍은 컴퓨터 프로그램을 명령어의 목록으로 보는 시각에서 벗어나 여러 개의 독립된 ..
2023.10.15 -
커네션 풀이란 ? 📌 WAS(Web Application Server) 와 데이터베이스 사이의 연결에는 많은 비용이 든다. MySQL 8.0을 기준으로 INSERT 문을 수행할 때 필요한 비용 중 서버가 DB에 연결하기 위한 Connection 비용이 가장 큰 비율을 차지한다. 이처럼 Connection에 많은 비용이 투자되는 것의 보완할 수 있는 방법이 바로 커넥션 풀(Connection Pool)이다. 커넥션 풀이란 웹 컨테이너(WAS)가 실행 될 때 DB연결을 위해 미리 일정수의 connection 객체를 만들어 Pool에 담아 뒀다가 사용자(클라이언트)의 요청이 발생하면 Pool에서 생성되어 있는 Connection 객체를 넘겨주고 사용자가 사용이 끝나면 Connection 객체를 다시 Pool에..
커넥션 풀(Connection Pool)이란커네션 풀이란 ? 📌 WAS(Web Application Server) 와 데이터베이스 사이의 연결에는 많은 비용이 든다. MySQL 8.0을 기준으로 INSERT 문을 수행할 때 필요한 비용 중 서버가 DB에 연결하기 위한 Connection 비용이 가장 큰 비율을 차지한다. 이처럼 Connection에 많은 비용이 투자되는 것의 보완할 수 있는 방법이 바로 커넥션 풀(Connection Pool)이다. 커넥션 풀이란 웹 컨테이너(WAS)가 실행 될 때 DB연결을 위해 미리 일정수의 connection 객체를 만들어 Pool에 담아 뒀다가 사용자(클라이언트)의 요청이 발생하면 Pool에서 생성되어 있는 Connection 객체를 넘겨주고 사용자가 사용이 끝나면 Connection 객체를 다시 Pool에..
2023.07.31 -
Spring 과 SpringBoot 는 무엇이 다른 걸까IntroSpring과 Spring Boot는 모두 스프링 프레임워크를 기반으로 한 자바 웹 개발 프레임워크이다. 둘 간에는 몇 가지 차이점이 있다. Spring 이란 ? Spring은 Java 기반의 오픈소스 Back-end 프레임워크이다. Spring에서는 개발자가 직접 설정 파일을 작성하여 스프링 컨테이너를 구성하고, 필요한 빈 객체를 등록하고, 빈 객체 간의 의존성을 설정해야 한다. Spring은 특정한 구성을 위해 추가적인 라이브러리와 설정이 필요하다. Spring 프레임워크의 대표적인 특징은 다음과 같다. DI(Dependency Injection)DI란 개발자가 Spring 프레임워크에 의존성을 주입하면서 객체 간 결합을 느슨하게 하는 ..
Spring 과 SpringBoot 의 차이점Spring 과 SpringBoot 는 무엇이 다른 걸까IntroSpring과 Spring Boot는 모두 스프링 프레임워크를 기반으로 한 자바 웹 개발 프레임워크이다. 둘 간에는 몇 가지 차이점이 있다. Spring 이란 ? Spring은 Java 기반의 오픈소스 Back-end 프레임워크이다. Spring에서는 개발자가 직접 설정 파일을 작성하여 스프링 컨테이너를 구성하고, 필요한 빈 객체를 등록하고, 빈 객체 간의 의존성을 설정해야 한다. Spring은 특정한 구성을 위해 추가적인 라이브러리와 설정이 필요하다. Spring 프레임워크의 대표적인 특징은 다음과 같다. DI(Dependency Injection)DI란 개발자가 Spring 프레임워크에 의존성을 주입하면서 객체 간 결합을 느슨하게 하는 ..
2023.07.31 -
HashMap : HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션입니다. Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있습니다. Map은 키와 값으로 구성된 Entry객체를 저장하는 구조를 가지고 있는 자료구조입니다. 여기서 키와 값은 모두 객체입니다. 값은 중복 저장될 수 있지만 키는 중복 저장될 수 없습니다. 만약 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치됩니다. HashMap은 이름 그대로 해싱(Hashing)을 사용하기 때문에 많은 양의 데이터를 검색하는 데 있어서 뛰어난 성능을 보입니다. 개인적인 느낌은 PHP로 따지면 연관배열(?)과 같은 느낌이다. HashMap 사용법 # hashMap 선언 HashMap m..
HashMapHashMap : HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션입니다. Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있습니다. Map은 키와 값으로 구성된 Entry객체를 저장하는 구조를 가지고 있는 자료구조입니다. 여기서 키와 값은 모두 객체입니다. 값은 중복 저장될 수 있지만 키는 중복 저장될 수 없습니다. 만약 기존에 저장된 키와 동일한 키로 값을 저장하면 기존의 값은 없어지고 새로운 값으로 대치됩니다. HashMap은 이름 그대로 해싱(Hashing)을 사용하기 때문에 많은 양의 데이터를 검색하는 데 있어서 뛰어난 성능을 보입니다. 개인적인 느낌은 PHP로 따지면 연관배열(?)과 같은 느낌이다. HashMap 사용법 # hashMap 선언 HashMap m..
2022.10.20 -
오버로딩 & 오버라이딩 오버로딩(Overloading) : 두 메서드가 같은 이름을 갖고 있으나 인자의 수나 자료형이 다른 경우를 말한다. : 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메소드를 정의 할 수 있다. 주의할 점은 리턴 값만 다른 것은 오버로딩을 할 수 없다는 것이다. class OverloadingTest { public static void main(String[] args) { OverloadingMethods om = new OverloadingMethods(); om.print(); System.out.println(om.print(3)); om.print("Hello!"); Syste..
오버로딩(Overloading) & 오버라이딩(Overriding)오버로딩 & 오버라이딩 오버로딩(Overloading) : 두 메서드가 같은 이름을 갖고 있으나 인자의 수나 자료형이 다른 경우를 말한다. : 자바의 한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메소드가 있더라도 매개변수의 개수 또는 타입이 다르면, 같은 이름을 사용해서 메소드를 정의 할 수 있다. 주의할 점은 리턴 값만 다른 것은 오버로딩을 할 수 없다는 것이다. class OverloadingTest { public static void main(String[] args) { OverloadingMethods om = new OverloadingMethods(); om.print(); System.out.println(om.print(3)); om.print("Hello!"); Syste..
2022.09.11