전체 글 183

5. 스프링 공부 / 2021-07-15 (단방향 연관 관계)

오늘 공부의 목표란다! 연관관계가 필요한 이유 => 객체지향 설계의 목표는 자율적인 객체들의 협력 공동체를 만드는 것이다. 예제 시나리오 - 회원과 팀이 있다 - 회원은 하나의 팀에만 소속될 수 있다. - 회원과 팀은 다대일 관계다. //==============Member.class package jpabook.jpashop.domain; import javax.persistence.*; @Entity public class Member { @Id @GeneratedValue @Column(name = "MEMBER_ID") private Long id; @Column(name = "USERNAME" , nullable = false) private String username; @Column(name..

Spring 2021.07.15

4. 스프링 공부 / 2021-07-14 (실전1 - 요구사항 분석과 기본 매)

그러면 실제로 어떻게 쓰이는지 한번 보도록 하자 요구사항 분석 회원은 상품을 주문할 수 있다. 주문 시 여러 종류의 상품을 선택할 수 있다. 기능 목록 - 회원 기능 회원 등록 회원 조회 - 상품 기능 상품 등록 상품 수정 상품 조회 - 주문 기능 상품 주문 주문내역조회 주문취소 위와 같은 것을 이제 개발자의 입장에서 class를 만드는 것이랑 DA입장에서 만드는 것은 좀 차이가 있다. Order테이블에서 이제 Member정보를 꺼내고 싶다면 Order.class안에 Member를 선언할 것이다. 근데 JpaMain.class에서 그러면 어떻게 보이냐? package jpabook.jpashop.domain; import javax.persistence.*; import java.time.LocalDat..

Spring 2021.07.14

3. 스프링 공부 / 2021-07-14 (필드와 컬럼 매핑 ~)

필드와 컬럼 매핑 package hellojpa; import javax.persistence.*; import java.util.Date; @Entity @Table(uniqueContraints = "testing") //위에서 처럼 unique 키를 설정 시 이름을 선언 가능 public class Member { @Id // pk Mapping private long id; @Column(name = "name", insertable = true, updatable = true,nullable = false, unique = true, length = 10 , columnDefinition = "varchar(100) default 'EMPTY'" ) // column name 설정 //inser..

Spring 2021.07.14

2. 스프링JPA 공부 / 2021-07-13 (준영속 상태)

준영속 상태 Member member = em.find(Member.class, 150L); member.setName("AAAAA"); em.detach(member); // 특정 엔티티만 준 영속 상태로 만든다 em.clear(); // 통째로 다 초기화 Member member2 = em.find(Member.class,150L); // 앞에서 초기화해서 다시 조회 쿼리가 나감 em.close(); // 영속성 컨텍스트를 종료 뭐... 이게 아직은 어디에 쓰일지 모르겟다. 나중에 웹 application 개발할 때 자세히 알려 주신다고 한다. 그래서 결국 JPA에서 가장 중요한 2가지는 뭘까? 1. 객체와 관계형 데이터베이스 매핑하기 (Object Relational Mapping) 2. 영속성 컨..

Spring 2021.07.13

7. 리눅스 공부 / 2021-07-13

19강 - Shell Script 1 : intro 우선 위와 같은 명령을 실행했다고 하자 script라는 directory를 생성했다. 그리고 touch a.log b.log c.log로 log 파일 3개를 script 디렉토리에서 생성! 그다음에는 이것을 bak이라는 directory안에 복사한 것이다 그러면 복사가 된 것을 확인할 수 있다. 그런데... 만약에 script 디렉토리에 있던 log파일들이 수정이 되어서 수정을 한다면 복사한 내용들도 다시 복사해야 할 것이다. 이러한 반복되는 작업들을 처리하는데 유용한 것이 Shell Script이다! 20강 Shell Script 사례 그럼... Shell Script 사례들을 한번 보자! 우선 파일을 Shell Script를 만들기 위해서 nano에..

1. 스프링 공부 / 2021-07-12

이 내용은 inflearn의 김영한 팀장의 spring jpa 강의 과정을 복습하려는 목적으로 만들었따. 9강. 플러시 음... 사실 앞에 내용들도 많은데 귀찮아서 정리를 안하다가 머리에 무언가를 남기려면 이렇게 정리를 하면서 해야만 하기 때문에 귀찮음을 꾹 참고 한다 가즈아~~@!!! 그래서 플러시가 뭐임? 영속성 컨텍스트의 내용을 DB에 날려준다고 생각하면 된다 영속성 컨텍스트는 뭐지? https://velog.io/@neptunes032/JPA-%EC%98%81%EC%86%8D%EC%84%B1-%EC%BB%A8%ED%85%8D%EC%8A%A4%ED%8A%B8%EB%9E%80 JPA 영속성 컨텍스트란? 영속성 컨텐스트란 엔티티를 영구 저장하는 환경이라는 뜻이다. 엔티티 매니저를 통해 엔티티를 저장하거..

Spring 2021.07.12

5. Linux 공부 / 2021-07-12

저번 시간 Redirection - output에 이어서 14강을 이어서 진행중이다. UNIX Programs에 대한 고찰을 그럼 해보자! 간단히 보면 우리가 치는 명령어들이 input이고 그로 인해 일어나는 것은 standard output / error 가 있는 것이다. ">" 를 쓰는 것은 Standard Output을 Redirect하는 것이다! 그러므로 empty.txt 를 삭제한 후 실행하면 error는 redirect를 안해주니 오류가 난다! 그러면 위와 같은 에러 결과를 저장할 수 있을까? 이렇게 rm empty.txt 2> error.log로 적게 되면 rm empty.txt > result.txt의 경우(standard output)와 다르게 error output을 처리하겟다는 것임...

4. 리눅스 공부 / 2021-07-06

후... cloud9을 이용해서 공부를 진행하려 했는데 try again이라는 문구만 나오는 채로 자꾸 개발 환경 create에 실패한다 그래서 차라리 내 컴퓨터에 우분투를 다운받기로 결심했다도! 여기 윈도우에서 리눅스 사용하는 방법을 잘 설명해놓으신 선배님이 계신다. https://diplabs.tistory.com/36 윈도우에서 리눅스 사용하기 - WSL 윈도우와 리눅스 개발자들뿐만 아니라 학생, 또는 공부하는 사람은 윈도우가 아닌 리눅스 환경이 필요할때가 많다. 나도 프로젝트를 하거나 과제를 할 때 리눅스가 자주 필요했다. 그 때마다 듀 diplabs.tistory.com 이것을 바탕으로 다운을 받고 username / password를 입력하니 잘 된다... password에는 아무것도 입력이 ..

3. 리눅스 공부 / 2021-07-06

10강 Package Manager. Linux 에는 대표적인 Package Manager로 apt와 yum이라는게 있다. 우리는 apt를 기준으로 공부할 예정... 이었는데!!! 이번에 ubuntu로 새롭게 개발환경을 cloud9으로 생성하고 있는데 이런 오류가 나온다... 사이트에서 찾아보니 마지막줄에... try creating the development environment again... 이라는데... 그냥 다시 시도하라는 거라서 나중에 한번 더 해보도록 하겟다...