반응형

분류 전체보기 277

[JPA] 값 타입, 임베디드 타입

JPA의 데이터 타입 분류 1. 엔티티 타입 @Entity로 정의하는 객체 데이터가 변해도 식별자로 지속해서 추적이 가능하다 예) 회원 엔티티의 키나 나이 값을 변경해도 식별자로 인식 가능 2. 값 타입 int, Integer, String 처럼 단순히 값으로 사용하는 자바 기본타입이나 객체 식별자가 없고 값만 있으므로 변경시 추적 불가 예) 숫자 100을 200으로 변경하면 완전히 다른 값으로 대체 3. 기본값 타입 자바 기본 타입 (int , double) 래퍼 클래스 (integer, Long) String 임베디드 타입 (embedded type, 복합 값 타입) 컬렉션 값 타입 (Conllection value type) 참고 : 자바의 기본 타입은 절대 공유되지 않는다 int a = 20; i..

Language/Java 2022.11.22

프록시와 연관관계 관계

프록시란? 대리자라는 뜻으로, 클라이언트가 사용하려고 하는데 실제 대상인 것처럼 위장해서 클라이언트의 요청을 받아주는 역할을 말한다. 프록시는 실제 대사인 것처럼 위장함으로서 이를 사용하는 클라이언트는 구체 클래스를 알 필요가 없어진다. 또한 프록시 클라이언트의 요청을 받아서 원래 요청 대상에게 바로 넘겨주는 게 아닌, 다양한 부가기능을 지원할 수 있다. 여기서 원래 요청하려는 대상 즉, 최정적으로 요청을 위임받아 처리하는 실제 오브젝트를 타깃 이라한다. 프록시의 조건 클라이언트의 요청을 대리로 수행해주는 모든 객체가 프록시 인것은 아니다. 객체가 프록시가 되려면 클라이언트는 요청을 보낸 대상이 타깃인지 프록시 인지 구분을 할 수 없어야한다. 즉, 타깃과 프록시는 같은 인터페이스를 확장해야한다. (CGL..

Language/Java 2022.11.16

Spring boot Security 사용법

Spring boot Security 사용법 개발 환경 java 11 gralde 2.7.3 build.gralde 에 Security 추가 더보기 implementation 'org.springframework.boot:spring-boot-starter-security' Spring Security란? Spring 기반의 애플리케이션의 보안(인증과 권한, 인가)을 담당하는 스프링 하위 프레임워크이다. 인증과 권한에 대한 부분을 Filter 흐름에 따라 처리하고 있다. Filter는 Dispatcher Servlet으로 가기 전에 적용되므로 가장 먼저 URL 요청을 받지만, Interceptor는 Dispatcher와 Controller사이에 위치한다는 점에서 적용 시기의 차이가 있다. Spring S..

Spring 2022.11.03

고급 매핑 - 상속관계 매핑, @MappedSuperclass

상속관계 매핑과 @MappedSuperclass에 대해서 알아보도록 하겠다. 상속관계 매핑 관계형 데이터베이스는 상속 관계가 없다 슈퍼타입 서브타입 관계라는 모델링 기법이 객체 상속과 유사하다 상속관계 매핑: 객체의 상속과 구조와 DB의 슈퍼타입 서브타입 관계를 매핑한다. 슈퍼 타입 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법은 3가지가 있다 1. 각각 테이블로 변환 -> 조인 전략 2. 통합 테이블로 변환 -> 단일 테이블 전략 3. 서브타입 테이블로 변환 -> 구현 클래스마다 테이블 전략 조인 전략 엔티티마다 모두 테이블로 만들어주고 부모의 기본키를 기본키 + 외래 키로 사용함. 그래서 조회할 때 조인을 사용함. 다만 객체는 타입이 있는데 테이블은 타입에 개념이 없으니 따로 컬럼을 추가해줘야..

Spring 2022.11.01

Eclipse Svn 설치

어제는 Eclipse에 Azure 설치를 해보았는데 오늘은 Svn를 설치해보도록 할것이다 https://jungkeung.tistory.com/213 Install New Software -> Work with http://community.polarion.com/projects/subversive/download/eclipse/6.0/update-site/ 작성 -> Name : Svn 작성 후 Add 클릭 -> Name 밑에 있는 Svn 두개다 체크 후 Next 눌러준 2. 라이선스 확인 후 Filnsh -> Restart 클릭하면 끝이다. 자세한 내용은 아래 블로그를 참고 해서 하면 좋을거 같다 http://lmc.cs.kookmin.ac.kr/readmore/eclipse-svn

Language/Java 2022.10.28

Eclipse에 Azure 설치 하기

Eclipse마다 Java를 지원해주는 최소의 버진이 있다. Eclipse 4.17 이후로부터는 최소 Java 11 버전을 이용해야 하며 Java 8 이전 버전을 사용하려면 Eclipse 4.16 이전 버전을 사용해야 한다. 나는 4.24 버전이 java 1.8을 지원해주는 줄 알고 계속 구글링을 해보면서 시간을 날렸다.. 아래의 사이트는 Eclipse을 다운로드할 수 있으며 최신 버전부터 이전 버전까지 다운로드가 가능하다 https://www.eclipse.org/downloads/packages/release Eclipse에 Azure 설치 전에 https://learn.microsoft.com/ko-kr/azure/developer/java/fundamentals/java-support-on-azu..

Language/Java 2022.10.27

연관관계 매핑 고려사항 3가지

연관관계 매핑 고려사항 3가지로 뽑는다면 다중성, ( 단방향, 양방향), 연관관계 주인으로 뽑을 수 있다 1. 다중성 다대일 : @ManyToOne 일대다 : @OneToMany 일대일 : @OneToOne 다대다 : @ManyToMany 2. 단방향, 양방향 테이블 외래 키 하나로 양쪽 조인이 가능하다 사실 방향이라는 개념이 없다 객체 참조 용 필드가 있는 쪽으로만 가능하다 한쪽만 참조하면 단방향이다 양쪽이 서로 참조하면 양방향이다. 사실 양방향이라는 것은 별로 사용하지도 않아 그냥 알고만 있는 것이 좋다 3. 연관관계 주인 테이블은 외래 키 하나로 두 테이블이 연관관계를 맺음 객체 양방향 관계는 A -> B, B -> A 처럼 참조가 2군데이다 객체 양방향 관계는 참조가 2군데 있다. 둘 중 테이블의..

Spring 2022.10.25

원격 데스크톱 연결 하여 사용하는 방법

원격 데스크톱 연결하는 방법 시작은 혼자 집에서 개인 프로젝트를 하다 생긴 일이다.. 노트북으로 모든 걸 하다 보니 본체를 사용할 때가 없어 서버로 열어두면 어떨까? 라는 생각에 시작되었다.. 구글에 원격 데스크톱을 작성하면 크롬 원격 데스크톱이 나오는 걸 확인할 수가 있다 하지만 나는 이걸 원하는게 아니다.. 윈도에서 지원해주는 원격 데스크톱을 원하는 것이다.. 노트북은 window 11 pro라 상관이 없지만 집에 있는 본체는 window 10이긴 하지만 pro인지 home인지 생각이 안 나서 살짝 불안했다. window10 pro 이상부터 지원해주기 때문이다. 다행히 window 10 pro 인걸 확인하고 작업을 시작했다. 만약 자신이 window 10 pro 인지 home인지 모르겠으면 내 컴퓨터..

카테고리 없음 2022.10.23

공인IP 와 사설IP가 무엇일까?

공인 IP 란? 공인IP는 (Public IP Address) 인터넷 사용자의 로컬 네트워크를 식별하기 위해 ISP(인터넷 서비스 공급자, Internet Service Provider)가 제공하는 IP주소이다 인터넷 서비스 공급자는 KT,LG,SK 등 기업에서 인터넷 서비스를 제공해주는 것이라고 알고 있으면 된다 공인 IP는 전세계에서 유일한 IP 주소를 갖고있다 공인 IP 주소가 외부에 공개되어 있기에 인터넷에 연결된 다른 PC로부터의 접근이 가능하다. 공인 IP 주소를 사용하는 경우에는 방화벽 등의 보안 프로그램을 설치할 필요가 있다 사설 IP 란? 일반 가정이나 회사 내 등에 할당된 네트워크의 IP주소이며, 로컬 IP, 가상IP라고도 한다. IPv4의 주소 부족으로 인해 서브넷팅된 IP이기 때문에..

카테고리 없음 2022.10.23

연관관계 매핑 기초

목표 1. 객체와 테이블 연관관계의 차이를 이해 2. 객체의 참조와 테이블의 외래 키를 매핑 용어를 알고 가자 방향 (Direction) : 단방향, 양방향 다중성 (Multiplicity) : 다대일 (N:1), 일대다 (1:N), 일대일 (1:1), 다대다(N:M) 연관관계의 주인(Owner) : 객체 양방향 연관관계는 관리 주인이 필요하다 연관관계가 필요한 이유가 무엇일까? 객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다 객체를 테이블에 맞추어 모델링 테이블 연관관계를 보면 Member가 N이고 Team이 1 이다. N:1 관계 -> 다대일 관계 -> Member 대 Team 이라 보면된다. Member Class @Entity public class Member { @Id @..

Spring 2022.10.19
반응형