본문 바로가기

Spring/스프링 입문13

[스프링 입문] 5 - (3) 조회 [회원 웹 기능] 1. MemberController 수정 ( /member/new 페이지 만들기 ) src - main - java - hello.hellospring - MemberController 클릭 → 강의자료 코드 붙여넣기 ☞ @GetMapping("/members") : localhost:8080/members 일 때 아래 메서드 호출 ☞ List members = memberService.findMemvers : 저장된 memberService 회원 list로 반환 ☞ model.addAttribute() : Model 객체 파라미터로 받아 데이터 넘기기 (변수 이름, 변수에 넣을 데이터 값); ☞ return "members/memberList" : members - memberList.. 2023. 8. 6.
[스프링 입문] 5 - (2) 회원 등록 [회원 웹 기능] 1. MemberController 수정 ( /member/new 페이지 만들기 ) src - main - java - hello.hellospring - MemberController 클릭 → 강의자료 코드 붙여넣기 ☞ @GetMapping("/members/new") : localhost:8080/members/new 일 때 아래 메서드 호출 ☞ return "members/createMemberForm" : members - createMemberForm.html 호출 2. createMemberForm.html 만들기 src - main - resource - templates 우클릭 → New - Directory 클릭 → members 입력 후 우클릭 → New - HTML .. 2023. 8. 6.
[스프링 입문] 5 - (1) 홈 화면 추가 [회원 웹 기능] 1. HomeController 클래스 만들기 src - main - java - hello.hellospring - controller 우클릭 → New - Java Class 클릭 → HomeController 입력 → 강의자료 코드 붙여넣기 ☞ @Controller : controller 사용시 무조건 해주기 ☞ @GetMapping("/") : localhost:8080/ 때 아래 메서드 호출 ☞ return "home" : home.html 호출 2. home.html 만들기 src - main - resource - templates 우클릭 → New - HTML File 클릭 → home.html 입력 → 강의자료 코드 넣기 ☞ : 문서정보 ☞ ~ : 출력되는 부분 ☞ ~ .. 2023. 8. 5.
[스프링 입문] 4 - (2) 자바 코드로 직접 스프링 빈 등록하기 [자바 코드로 직접 스프링 빈 등록하기] 1.이전의 컴포넌트 스캔 설정 삭제 - MemberController 클래스 제외한 나머지만 삭제 - MemberService 클래스에서 @Service, @Autowired 삭제 - MemoryMemberRepository 클래스에서 @Repository 삭제 2.직접 코드짜기 src - main - java - hello.hellospring - service 우클릭 → New - Java Class → SpringConfig 입력 → 강의자료 코드 붙여넣기 ☞ @Congifuration : 스프링 빈에 등록하라는 명령을 인식 ☞ @Bean : 아래의 코드를 빈에 등록 ☞ public MemberService memberService() : memberServ.. 2023. 8. 5.
[스프링 입문] 4 - (1) 컴포넌트 스캔과 자동 의존관계 설정 [컴포넌트 스캔과 자동 의존관계 설정] - 컴포넌트 스캔 방식 : @로 시작하는 것들 (눌러서 확인해보면 Component라고 적혀있음) (컴포넌트 스캔은 스프링 빈이 자동으로 등록된다) : 컴포넌트를 사용할 때엔 같은 패키지 안에서끼리 사용이 가능하다 - membercontroller가 memberservice, memberRepository를 조작 할 수 있게 의존관계를 설정 - 스프링 빈을 등록하는 방법 2가지 : 컴포넌트 스캔, 의존관계 설정 : 자바 코드로 직접 등록 (이게 더 편리) ** 스프링 빈은 각 클래스 마다 하나씩 등록하도록 해서 서로 공유하도록 한다 (=싱글톤 등록) ** 1. @Controller, @Autowired src - main - java - hello.hellospri.. 2023. 8. 5.
[스프링 입문] 3 - (4) 회원 서비스 개발, (5) 회원 서비스 테스트 [회원 서비스 개발] 1. 회원 가입 만들기 src - main - java - hello.hellospring 우클릭 → New - Package 클릭 → service 입력 후 우클릭 → New - Java Class → MemberService 입력 → 강의자료 코드 붙여넣기 ☞ validateDuplicateMember : 중복회원을 검사하는 메서드 Ctrl + Alt + T 단축키 입력 후 method 라고 검색 Extract Method 클릭하고 Name 설정 ☞ .ifPresent(m -> : m 안에 값이 있다면 아래 로직이 동작한다. ☞ throw new IllegalStateException : 객체의 상태가 매소드 호출에는 부적절한 경우 즉 예외적인 경우의 호출 ☞ return mem.. 2023. 8. 4.
[스프링 입문] 3 - (3) 회원 리포지토리 테스트 케이스 [회원 리포지토리 테스트 케이스 작성] 1. findById 테스트 src - test - java - hello.hellospring 우클릭 → New - Package 클릭 → repository 입력 후 우클릭 → New - Java Class → Test 입력 → 강의자료 코드 붙여넣기 ☞ Member member = new member : main 메서드와 비슷 member.setName(''spring") ☞ repository.save(member) : 리포지토리에 member 저장 ☞ Member result = repository.findById(member.getId()).get() : 반환타입 Optional. 즉 꺼낼 때 get 이용 (단축키 Ctrl + Alt + V 사용) 내가 .. 2023. 8. 2.
[스프링 입문] 3 - (1) 비즈니스 요구사항, (2) 회원 도메인과 리포지토리 [비지니스 요구사항] - 데이터: 회원 ID, 이름 - 기능: 회원 등록, 조회 ▶ 웹 애플리케이션 계층 구조 컨트롤러 웹 MVC의 컨트롤러 서비스 도메인을 이용해 핵심 비즈니스 로직 동작하도록 구현 도메인 비즈니스 도메인 리포지토리 도메인 객체를 DB에 저장하고 관리 [회원 도메인과 리포지토리 만들기] 1. 회원 domain 만들기 src - main - java - hello.hellospring 우클릭 → New - Package 클릭 → domain 입력 → domain 우클릭 → New - Java Class → Member 입력 → 강의자료 코드 붙여넣기 ☞ private Long id : 클래스 안에서 찾기 ☞ private String name : 클래스 안에서 찾기 ☞ Long getId.. 2023. 8. 1.
[스프링 입문] 2 - (3) API [API] - MVC와 달리 View가 필요없다 1. HelloController 수정 (문자용) - 문자를 출력하는 방법 (잘 사용하지 X) src - main - java - hello.hellospring - controller - HelloController 클릭 → 강의자료 코드 붙여넣기 ☞ @GetMapping("hello-string") : localhost:8080/hello-string 일 때 아래 메서드 호출 ☞ @ResponseBody : http에서 헤더부와 바디부가 나눠져 있는데 바디부에 데이터를 직접 넣겠다는 의미 ☞ @RequestParam("name") : RequestParam("실제 값") String 설정할 변수 이름 ☞ return "hello" + name : hel.. 2023. 7. 31.
[스프링 입문] 2 - (1) 정적 컨텐츠, (2) MVC와 템플릿 엔진 [정적 컨텐츠] - 파일을 웹브라우저에 그대로 전달한다 src - main - resources - static 우클릭 → New - File 클릭 → hello-static.html 입력 → 강의 자료 코드 넣기 → run → 인터넷에 localhost:8080/hello-static.html 입력 ※ 과정 localhost:8080/hello-static.html 실행 ↓ 내장 톰켓 서버 입력 받음 ↓ Controller에서 hello-static 있는지 찾는다 ↓ 없으면 내부 resources에서 hello-static 찾는다 ↓ 찾았으면 웹 화면에 출력 [MVC와 템플릿 엔진] - 서버에서 프로그래밍해서 html을 동적으로 바꿔 출력 ( View = 화면그리기 , Controller = 비지니스 .. 2023. 7. 29.