일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- php 프로그래밍 입문 예제
- php 프로그래밍 입문 연습문제
- php 프로그래밍 입문 솔루션
- php 프로그래밍 입문 문제풀이
- php
- 파이썬
- php 프로그래밍 입문 3판
- 최단 경로
- Java
- 자바 스프링
- C
- spring
- php 프로그래밍
- 페이코 추천인
- 플러터 개발환경 설정
- SWEA
- JAVA SPRING
- 한정 분기
- 백준
- C언어
- 자바
- programmers
- php 프로그래밍 입문
- 페이코 추천인코드
- 페이코 친구코드
- 스프링
- 플러터
- Flutter
- 페이코 초대코드
- 배열
- Today
- Total
목록자바 (60)
ImJay
[Java Spring] 1-23. 스프링 데이터 JPA 1. 스프링 부트와 JPA만 사용해도 개발 생산성이 정말 많이 증가하고, 개발해야할 코드도 확연히 줄어든다. 2. 여기에 스프링 데이터 JPA를 사용하면, 기존의 한계를 넘어 마치 마법처럼, 리포지토리에 구현 클래스 없이 인터페이스 만으로 개발을 완료할 수 있다. 그리고 반복 개발해온 기본 CRUD 기능도 스프링 데이터 JPA가 모두 제공한다. 3. 스프링 부트와 JPA라는 기반 위에, 스프링 데이터 JPA라는 환상적인 프레임워크를 더하면 개발이 정말 즐거워진다. 지금까지 조금이라도 단순하고 반복이라 생각했던 개발 코드들이 확연하게 줄어든다. 4. 따라서 개발자는 핵심 비즈니스 로직을 개발하는데, 집중할 수 있다. 실무에서 관계형 데이터베이스를 사..
[Java Spring] 1-10. 회원 리포지토리 테스트 케이스 작성 1. 테스트 케이스의 필요성 : 개발한 기능을 main 메서드나 컨트롤러로 테스트하면 준비와 실행과정이 오래걸리고, 여러 테스트를 한번에 실행하기 어렵다는 단점이 있다. 자바는 JUnit이라는 프레임워크로 테스트를 실행해서 이러한 문제를 해결할 수 있다. 2. 프로젝트 > src > test > java > hello.hellospring > 새로 만들기 > 패키지 3. repository 패키지 생성 4. MemoryMemberRepositoryTest 클래스 생성 5. 코드 작성 package hello.hellospring.repository; import hello.hellospring.domain.Member; import ..
[Java Spring] 1-9. 회원 도메인과 리포지토리 만들기 1. 프로젝트 > src > main > java > hello.hellospring > 새로 만들기 > 패키지 2. domain 패키지 생성 3. domain 패키지 내에 Member 클래스 만들기 4. 코드 작성 ( Member.java ) package hello.hellospring.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public vo..
[Java Spring] 1-8. 비즈니스 요구사항 정리 1. 비즈니스 요구사항 정리 : 강의 목표 자체가 스프링 동작 방식을 이해하기 위함이므로 간단한 예제를 사용 - 데이터 : 회원ID, 이름 - 기능 : 회원 등록, 조회 - 아직 데이터 저장소가 선정되지 않음(가상의 시나리오) 2. 일반적인 웹 애플리케이션 계층 구조 - 컨트롤러 : 웹 MVC의 컨트롤러 역할 - 서비스 : 핵심 비즈니스 로직 구현 ( 예 : 중복 가입 불가 기능 등등.. ) - 리포지토리 : 데이터베이스에 접근, 도메인 객체를 DB에 저장하고 관리 - 도메인 : 비즈니스 도메인 객체 ( 예 : 회원, 주문, 쿠폰 등등 데이터베이스에 저장하고 관리되는 객체 ) 3. 클래스 의존관계 - 아직 데이터저장소가 선정되지 않았기 때문에 리포..
[Java Spring] 1-7. API 1. API : json 등의 데이터 구조 포맷으로 데이터를 전달 ( view, react, 서버끼리 통신할 때 ) 정적 컨텐츠를 제외하면 MVC 를 통해 HTML 로 내리는가, 혹은 API 를 통해 데이터로 바로 내리는가 두가지만 기억하면 된다. 2. 기존 HelloController.java 에 다음과 같은 코드를 추가한다. @GetMapping("hello-string") @ResponseBody public String helloString(@RequestParam("name") String name) { return "hello " + name; } 여기서 중요한 것은 @ResponseBody 이다. @ResponseBody 가 의미하는 것은, HTTP ..
[Java Spring] 1-6. MVC와 템플릿 엔진 1. MVC와 템플릿 엔진 : 서버에서 프로그래밍을 통해 HTML을 동적으로 내려주는 것 (요즘 추세) 2. MVC란? : Model, View, Controller 예전에는 View 에서 모든 작업을 다 했지만, 이제는 View 는 보여주는 것에 집중하고 Model, Controller 가 내부 로직에 비중을 둔다. 당연하겠지만 유지보수 면에서 각자 분리를 하는게 훨씬 효율적이기 때문이다. 3. 기존에 작성했던 HelloController 클래스에 새로운 코드 추가 @GetMapping("hello-mvc") public String helloMvc(@RequestParam("name") String name, Model model) { model..
[Java Spring] 1-5. 정적 컨텐츠 1. 정적 컨텐츠 : 파일을 웹브라우저에 그대로 내려주는 것 2. 프로젝트 > src > main > resources > static > 새로 만들기 > HTML 파일 3. hello-static.html 생성 4. 코드 작성 5. 빌드 ( Alt + Shift + F10 ) 후 localhost:8080/hello-static.html 접속 6. 정적 컨텐츠의 동작 원리 6-1. 내장 톰캣 서버가 요청을 받고 스프링에 넘김 6-2. 스프링이 컨트롤러에 hello-static 이 있는지 찾아봄 ( hello-static 이 우선순위 ) 6-3. 없으면, 그 다음 순서로 hello-static.html 을 찾음 6-4. hello-static.html 을 반환
[Java Spring] 1-4. 빌드하고 실행하기 1. linux 콘솔로 이동한다. ( Windows 환경에서 진행했으므로 Git Bash 를 사용 ) 2. cd "본인의 프로젝트 경로" ll 명령어를 쳤을 때 해당 경로들이 나오면 성공 3. ./gradlw.bat build ( mac 일 경우 gradlew ) - BUILD SUCCESSFUL 일 경우 성공 4. cd buld/libs 5. java -jar hello-spring-0.0.1-SNAPSHOT.jar - 아래와 같이 뜬다면 빌드 성공! 6. 결과화면 확인
[Java Spring] 1-3. View 환경설정 1. WelcomePage 만들기 1-1. 프로젝트 탭 > src > main > resources > static > 새로 만들기 > 파일 1-2. index.html 파일 생성하기 1-3. index.html 에 테스트 코드 작성 1-4. 빌드하여 결과물 확인 (Ctrl + F5) 2. Spring Boot 가 제공하는 Welcome Page 기능 스프링 부트는 웰컴 페이지 기능을 제공한다. static 폴더에서 index.html 파일을 제일 먼저 찾으며 못찾을 경우 index template 를 찾는다. 스프링 부트에서 제공하는 기능들은 Welcome Page 말고도 많다. 아래 페이지에 접속하여 스프링 부트가 기본으로 제공하는 기능들을 찾을 수..
[Java Spring] 1-2. 라이브러리 살펴보기 1. 좌측 하단에서 |□| 버튼을 클릭한다 ( 활성화되면 네모 두개로 바뀜 ) 2. 우측 상단에 Gradle 카테고리를 클릭하고 Dependencies 항목에서 내가 불러온 라이브러리들을 확인할 수 있다. 나는 분명 web, thymeleaf 라이브러리만 불러왔는데, 여러가지 다른 라이브러리들도 많이 보이는 것을 확인할 수 있다. 왜 그럴까? 내가 부른 라이브러리들이 의존 관계로 갖고 있는 라이브러리들이 분명히 존재 할 것이다. Spring Boot 는 해당 라이브러리들이 의존 관계로 사용하는 라이브러리들도 전부 추가해준다. 예시로 고대 개발자들은 웹 개발을 한다고 하면 웹 서버를 직접 서버에 설치를 해야했다. 웹 서버와 개발 라이브러리가 완전 분리돼..