본문 바로가기
728x90
반응형

전체 글202

[스프링 DB 접근 기술] 스프링 통합 테스트 스프링 통합 테스트 @SpringBootTest @Transactional public class MemberServiceIntegrationTest { @Autowired MemberService memberService; @Autowired MemberRepository memberRepository; @Test void 회원가입() { // given Member member = new Member(); member.setName("spring"); // when Long saveId = memberService.join(member); // then Member findMember = memberService.findOne(saveId).get(); assertThat(member.getName(.. 2022. 1. 22.
[스프링 DB 접근 기술] 순수 JDBC 순수 JDBC build.gradle 파일을 아래와 같이 수정 > 오른쪽 위 코끼리 마크 클릭 application.properties 파일을 아래와 같이 수정 spring.datasource.url=jdbc:h2:tcp://localhost/~/test spring.datasource.driver-class-name=org.h2.Driver spring.datasource.url값은 JDBC URL 값이다. JdbcMemberRepository.java 생성 public class JdbcMemberRepository implements MemberRepository { private final DataSource dataSource; public JdbcMemberRepository(DataSourc.. 2022. 1. 21.
[스프링 DB 접근 기술] H2 데이터베이스 설치 H2 데이터베이스 설치 https://www.h2database.com/html/download-archive.html 1) 1.4.200 download 2) h2-2019-10-14\h2\bin\h2.bat 실행 > 연결 클릭 > 왼쪽 위 버튼을 눌러 연결을 끊는다. 3) 홈에 test.mv.db 파일이 있는지 확인 4) .JDBC URL : jdbc:h2:tcp://localhost/~/test 로 수정 (안하면 웹 컨트롤과 같이 접근이 안될수 있다.) 참고) 연결이 잘 안되면 test.mv.db 파일을 지운뒤 다시 해본다. 5) 아래 SQL 실행 > 왼쪽에 MEMBER 생성 drop table if exists member CASCADE; create table member ( id bigint .. 2022. 1. 20.
[회원 관리 예제 - 웹 MVC 개발] 회원 웹 기능 - 조회 회원 웹 기능 - 조회 회원 조회를 위한 list() 메소드와 memberList.html @Controller public class MemberController { ... @GetMapping("/members") public String list(Model model) { List members = memberService.findMember(); model.addAttribute("members", members); return "members/memberList"; } } # 이름 List로 반환된 members를 받아 member의 id, name을 출력 결과 spring, spring2로 회원가입 후, 회원 목록 클릭 인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, .. 2022. 1. 19.
[회원 관리 예제 - 웹 MVC 개발] 회원 웹 기능 - 등록 회원 웹 기능 - 등록 회원 등록을 하기위해 "회원 가입"을 클릭하면 가게 되는 /members/new 를 만들어야 한다. 회원 가입 /members/new 를 만들기 위해 MemberController에 createForm() 메소드 추가 @Controller public class MemberController { ... @GetMapping("/members/new") public String createForm() { return "members/createMemberForm"; } } return 한 members/createMemberForm 의 html 작성(templates/members/createMemberForm.html) 이름 등록 name="name"값을 저장하기 위한 Member.. 2022. 1. 18.
[회원 관리 예제 - 웹 MVC 개발] 회원 웹 기능 - 홈 화면 추가 회원 웹 기능 - 홈 화면 추가 HomeController.java, home.html 생성 @Controller public class HomeController { @GetMapping("/") public String home() { return "home"; } } Hello Spring 회원 기능 회원 가입 회원 목록 static/index.html이 있는데 templates/home.html이 실행된 이유는? 아래와 같이 스프링 컨테이너에 관련 Controller가 있는지 먼저 찾은 뒤에 없으면 static을 찾는다. Controller에 맵핑된 "/"가 있기 때문에 home.html이 실행된다. 인프런 강의 "스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술"을 정리한.. 2022. 1. 17.
[스프링 빈과 의존관계] 자바 코드로 직접 스프링 빈 등록하기 자바 코드로 직접 스프링 빈 등록하기 아래와 같이 @Service, @Repository, @Autowired 를 지운뒤 실행하면 오류가 나는 상태로 만든다. @Controller public class MemberController { // private final MemberService memberService = new MemberService(); private final MemberService memberService; // 여러 인스턴스를 생성할 필요가 없고 하나만 만들어 공유해서 쓰면 된다. // 스프링 컨테이너에 등록하여 사용한면 된다. // @Autowired를 생성자에 쓰면 MemberController가 생성될때, // 스프링 빈으로 등록되어 있는 MemberService를 넣어준.. 2022. 1. 16.
[스프링 빈과 의존관계] 컴포넌트 스캔과 자동 의존관계 설정 @Controller : 스프링이 @Controller의 객체를 생성해서 들고 있다. 다른 말로 스프링 컨테이너에서 스프링 빈이 관리된다 라고 함 @Controller public class MemberController { // private final MemberService memberService = new MemberService(); private final MemberService memberService; // 여러 인스턴스를 생성할 필요가 없고 하나만 만들어 공유해서 쓰면 된다. // 스프링 컨테이너에 등록하여 사용한면 된다. // @Autowired를 생성자에 쓰면 MemberController가 생성될때, // 스프링 빈으로 등록되어 있는 MemberService를 넣어준다.(의존관계.. 2022. 1. 15.
728x90
반응형