Spring/Spring

    IntelliJ 파일 업로드 주의사항

    IntelliJ 파일 업로드 주의사항

    https://ssdragon.tistory.com/99 [Spring] 스프링에서 파일저장하기 https://ssdragon.tistory.com/82 [Spring] IntelliJ 파일 업로드 주의사항 @PostMapping("/filetest") public String addImage2(@RequestParam("Photo") MultipartFile uploadFile, HttpServletRequest request).. ssdragon.tistory.com 파일 저장은 위 게시글을 살펴보자. @PostMapping("/filetest") public String addImage2(@RequestParam("Photo") MultipartFile uploadFile, HttpServletRe..

    Entity 보다는 DTO로 반환하자.

    클라이언트의 요청에 응답하여 보낼 때 Entity로 보내는 경우가 있다. 이럴 때 주의해야할 점을 확인해보자. 1. Entity 반환 시 클라이언트에 과도한 정보 반환 Entity를 반환하면 테이블 공개나 다름없으므로 보안 문제가 있음 (즉, Entity를 UI계층에 노출하는 것은 X) 필요 이상으로 요청과 응답을 한다면 속도 문제 발생 따라서 DTO로 클라이언트에 필요한 값만 반환하는 것이 좋음 2. 양방향 연관관계에서 무한 반복이 일어날 수 있으므로 DTO로 두는것이 좋다. Entity가 서로 참조하는 객체를 계속 호출하는 경우가 생길 수 있음. (e.g. toString) Entity 반환이 잘 되더라도 추후 양방향 연관관계를 추가하고, JSON 직렬화 하다가 무한 반복 발생이 가능 3. Valid..

    스프링부트 View 환경설정

    스프링부트 View 환경설정

    start.spring.io 에서 프로젝트를 생성할 때 Dependencies를 추가하는 곳을 보면 저렇게 Template Engines을 고르는 카테고리가 있다. 이 템플릿 엔진은 MVC 구조에서 V(View)를 담당하는 라이브러리이다. 저기서 스프링부트에서 쓸 템플릿 엔진을 선택하면 된다. jsp가 성능이나 이슈 등 있고, 스프링 프레임워크에서도 권장하지 않기 때문에 저 중에서 쓰면 된다. 🤔 View Template Engine이란? Controller가 model을 통해 전달받는 데이터를 이용해 동적인 웹페이지를 생성할 수 있도록 돕는 엔진이다. 현재 프로젝트를 만들고 실행하여 localhost:8080으로 접속하면 위처럼 뜰 것이다. 그럼 스프링부트에서 제공하는 Welcome Page기능을 사용..

    스프링부트 라이브러리 살펴보기

    스프링부트 라이브러리 살펴보기

    명령 프롬프트 창으로 라이브러리 확인하기 cmd 명령 프롬프트창에서 스프링 프로젝트 파일이 있는 경로로 들어간다. 그 후 gradlew dependencies 를 입력하면 의존 관계를 출력한다. IntelliJ로 라이브러리 확인하기 External Libraries는 가지고 온 라이브러리들이다. 우리가 Dependencies에 추가한 것 말고도 많은데 이것들은 기본적으로 빌드 툴(Maven, Gradle)이 의존관계를 다 관리해주기 때문이다. 즉, 우리가 설정한 라이브러리에 필요한 라이브러리들을 자동적으로 가지고 온다. Gradle 의존관계 보기 우측에 보면 Gradle 버튼이 있는데 누르면 Gradle의 Dependencies에서 의존 관계를 볼 수 있다. 이름 옆에 (*) 이 있는 것은 다른 곳에서 ..

    스프링부트 프로젝트 생성

    스프링부트 프로젝트 생성

    실전! 스프링 부트와 JPA 활용 1 을 보면서 프로젝트를 진행한다. 먼저 스프링 부트의 프로젝트 생성 방법부터 알아보자. 사전 준비물 Java 11 IDE(통합개발환경) : IntelliJ 또는 Eclipse 설치 스프링 부트 프로젝트를 만드는 방법은 2가지 1. 스프링 부트 스타터 ( https://start.apring.io/ ) 에서 프로젝트 생성하기 2. IDE 환경에서 프로젝트 생성하기 저는 스프링 부트 스타터 홈페이지를 통해 만들어보겠습니다. 위와 같이 스프링 부트 스타터 사이트에서 설정하여 만드는 것이다. 간단하게 설명해보겠다. Project Maven은 스프링 프로젝트에서 pom.xml이란 이름으로 쓰고, Gradle은 스프링 부트, 안드로이드에서 쓰고 있다. 최근에는 Gradle로 많이..