일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 아스키코드
- lombok
- upc
- 어노테이션
- Annotation
- bit
- 백엔드
- 자바
- Spring
- repository
- yeouido
- java
- 이행시
- 윤동주
- StringBuilder
- StringBuffer
- 문자열
- CS
- 삼행시
- Service
- replace()
- 개발
- 항해
- 스프링
- Controller
- string
- Today
- Total
목록분류 전체보기 (32)
Dev.끄적끈적
개발을 하거나 운영을 하는 상황에서 LOGGING 은 아주 중요하다.. Spring boot에서는 로그를 남기는 방법이 많이 있는데, 내가 개발 초기에 항상 썼던 로그는 역시나 System.out.println().. 하지만 이 sout는 기능성면에서 현저히 떨어진다. 그렇다면 로깅 중 가장 편하게 사용되는 @Slf4j 어노테이션을 알아보자. @Slf4j @ Slf4j 란? Slf4j는 로깅에 대한 추상 레이어를 제공하는 인터페이스의 모음이다. (로깅 Facade) 장점은 추후에 필요로 의해 로깅 라이브러리를 변경할 때 코드의 변경 없이 가능하다는 점이다. lombok 라이브러리를 추가해주면 사용 가능하다.! (플러그인이나 Gradle에 추가) 사용 방법 @Slf4j @Controller @Require..
Optional Element Summary CascadeType[] cascade (Optional) The operations that must be cascaded to the target of the association. FetchType fetch (Optional) Whether the association should be lazily loaded or must be eagerly fetched. String mappedBy (Optional) The field that owns the relationship. boolean optional (Optional) Whether the association is optional. Class targetEntity (Optional) The en..
Hibernate란? 하이버네이트는 자바 언어를 위한 ORM 프레임워크에요. JPA의 구현체로, JPA 인터페이스를 구현하며, 내부적으로 JDBC API를 사용해요. JPA는 관계형 데이터베이스와 객체의 패러다임 불일치 문제를 해결할 수 있다는 점과 영속성 컨텍스트(엔티티를 영구 저정하는 환경) 제공이 큰 특징이에요. JPA 자바 애플리케이션에서 관계형 데이터베이스를 사용하는 방식을 정의한 인터페이스에요. 라이브러리가 아닌 인터페이스이므로 특정 기능을 하진 않아요. JDBC 자바 프로그래밍 언어와 다양한 데이터베이스 SQL 또는 테이블 형태의 데이터 사이에 독립적인 연결을 지원하는 표준이에요. 즉, DB 작업을 위한 표준이라 볼 수 있어요. DBMS 회사들이 JDBC 인터페이스를 구현하여 제공해요. 이를..
공부하는 과정에서 작성한 글입니다. 잘못되거나 보충할 내용이 있다면 언제든지 알려주세요:) JPA에서는 데이터를 조회할 때 즉시 로딩(EAGER)과 지연 로딩(LAZY) 두 가지 방식이 있다. 이 두 가지 방식을 간단하게 설명하면 즉시 로딩은 데이터를 조회할 때 연관된 데이터까지 한 번에 불러오는 것이고, 지연 로딩은 필요한 시점에 연관된 데이터를 불러오는 것이라고 할 수 있다. 즉시 로딩(EAGER) @xxToxx(fetch = fetchType.EAGER) 다음과 같이 Member 엔티티와 Team 엔티티가 N:1 매핑으로 관계를 맺고 있다. @Entity public class Member { @Id @GeneratedValue private Long id; private String usernam..
연관관계 매핑 엔티티( Entity )들은 대부분 서로 관계를 맺고 있습니다. 예를들어 Category 엔티티와 Book 엔티티가 있을 때, Category에는 많은 Book을 갖는 관계를 갖고 있습니다. 이렇게 엔티티들이 서로 어떤 연관관계를 맺는지 파악하는 것은 매우 매우 중요합니다. 연관관계 매핑이란 객체의 참조와 테이블의 외래키를 매핑하는 것을 의미합니다. JPA에서는 JDBC( Mybatis )를 사용했을 때와 달리 연관 관계에 있는 상대 테이블의 PK를 멤버변수로 갖지 않고, 엔티티 객체 자체를 통째로 참조합니다. 예를들어 Category 엔티티와 Book 엔티티의 관계에서 Book 엔티티가 Category 엔티티를 참조할 때 Mybatis와 JPA는 아래와 같이 다릅니다. // Mybatis..
[네트워크] OSI 7계층이란 개요 OSI 7 계층은 네트워크 프로토콜이 통신하는 구조를 7개의 계층으로 분리하여 각 계층간 상호 작동하는 방식을 정해 놓은 것이다. ISO(국제표준화기구)가 1984년에 발표했다. 통신이 일어나는 과정을 7단계로 크게 구분하여 한 눈에 들어올 수 있도록 정의했기 때문에 단계별로 파악할 수 있다. 컴퓨터 통신 구조의 모델과 앞으로 개발될 프로토콜의 표준적인 뼈대를 제공하기 위해 개발된 참조 모델이어서 OSI 7 계층 모델을 알면 네트워크 구성을 예측하고 이해할 수 있다. 네트워크에서 트래픽의 흐름을 꿰뚫어 볼 수 있으며, 각 계층은 독립되어 있다. 7단계 중 특정한 곳에 이상이 생기면 다른 단계의 장비 및 소프트웨어를 건드리지 않고도 이상이 생긴 단계만 고칠 수 있다. 개..
빈 (Bean): 스프링이 관리하는 객체 스프링 IoC 컨테이너: 'Bean' 을 모아둔 통 스프링 IoC 컨테이너가 관리하는 객체들을 Bean 이라고 부릅니다. 스프링은 이러한 Bean들의 의존성을 관리하고, 객체를 만들어 주며, Bean으로 등록을 해 주고, 이렇게 만들어진 것들을 관리합니다. 개발자가 이 부분까지 신경쓰지 않아도, 프레임워크가 알아서 해 주는 것입니다. 그리고 스프링 IoC 컨테이너가 위와 같은 관리를 해 줍니다. 이러한 Bean들을 담고 있는 스프링 IoC 컨테이너는 두 가지 중 하나를 사용합니다. ApplicationContext 혹은 BeanFactory ApplicationContext는 BeanFactory를 상속받으므로 둘 다 같은 일을 하는 것임 이러한 스프링에서의 의존..