일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 카카오2023신입공채
- 테크잇
- 스프링부트
- 리코쳇로봇
- 프로그래머스
- 자바ORM표준JPA프로그래밍
- 영속성
- 엔에첸
- 시소 짝꿍
- 인프런
- 전적 검색
- already use
- 최주호
- 알고리즘
- 스프링 입문을 위한 자바 객체 지향의 원리와 이해
- 조회수중복
- 올리브영 고객센터
- 김영한
- DFS
- java
- 포트 죽이는법
- 더티체킹
- JPA
- 멋쟁이사자차럼
- 백엔드 스쿨3기
- 인텔리제이 에러
- 라이엇 API
- 백준
- BFS
- 자바
- Today
- Total
목록김영한 (4)
My Blog
객체에는 양방향 연관관계라는 것이 없다. 서로 다른 단방향 연관관계 2개를 애플리케이션 로직으로 잘 묶어서 양방향인 것 처럼 보이게 할 뿐이다. 반면에 데이터베이스 테이블은 외래 키 하나로 양쪽이 서로 조인이 가능하다. 따라서 테이블은 외래 키 하나만으로 양방향 연관관계를 맺는다. 객체 연관관계의 예시는 다음과 같다 회원 -> 팀 연관관계 1개(단방향) 팀 -> 회원 연관관계 1개(단반향) 테이블 연관관계는 다음과 같다 회원 팀의 연관관계 1개(양방향) JPA에서 이걸 사용하려면 회원과 팀을 예시로 들어보자. 회원 - 팀 이 있다면 OneToMany(일대다) = 한 회원은 여러 팀에 속할 수 있다. ManyToMany(다대다) = 여러 회원은 여러 팀에 속할 수 있다. ManyToOne(다대일) = 여러..

스프링 빈과 의존관계 등록은 크게 두가지가 있는데 컴포넌트 스캔과 자동 의존관계 설정은 어노테이션으로 등록하는 것으로 @Service, @Repository, @Controller가 있다. 이 어노테이션들 안에 @Component가 들어가있어서 @Component라고 입력해도 상관이없다. @Autowired = 스프링이 연관된 객체를 스프링 컨테이너에서 찾아서 넣어준다. 이렇게 객체 의존관계를 외부에서 넣어주는 것을 DI(Dependency Injection), 의존성 주입이라고 한다. 2. 자바코드로 직접 스프링 빈 등록하기. package hello.hellospring.service; import hello.hellospring.repository.MemberRepository; import hel..
Junit과 assertj에서 지원하는 테스트 기능으로 TDD를 경험해볼수있다. 어떤 기능을 만들었을 때 그 기능이 잘 동작하는 지를 확인해보려면 테스트코드를 만들어야한다. 테스크코드가 없이 개발을 하면은 혼자하면 상관이 없는데 협업할 때와 라인이 몇만개가 넘어갈 때 테스트코드없이 개발이 거의 불가능한 수준임. 클래스에서 Command + N하면 테스트클래스를 편리하게 만들 수 있음 Command + option + V = 자동으로 값을 담을 수 있는 변수 생성 @Test public void 중복_회원_예외() { //given Member member1 = new Member(); member1.setName("spring"); Member member2 = new Member(); member2.s..

gradle = 버전 설정하고 라이브러리 땡겨오는 걸로 dependencies = 내가 선택한 라이브러리? gitignore = 깃에 불필요한것들을 안올릴수있는 ? 제외하는 것 @GetMapping("hello") 라는 뜻은 웹 브라우저가 hello라는 데이터를 들고왔을 때 스프링부트에 있는 내장 톰켓 서버가 이것을 보고 hello라는 메소드가 있는지 확인하고 있으면 그 메소드로 안내하는 것이다. @GetMapping("hello") public String hello(Model model){ model.addAttribute("data", "hello!!"); //컨트롤러에서 리턴 값으로 문자를 반환하면 뷰 리졸버가 화면을 찾아서 처리한다. //resourse return "hello"; } 여기서 m..