spring8 [Spring 스터디] Spring Message 처리 / 국제화 악덕? 기획자가 화면에 보이는 문구가 마음에 들지 않는다고, 상품명이라는 단어를 모두 상품이름으로 고쳐달라고 하면 어떻게 해야할까? 여러 화면에 보이는 상품명, 가격, 수량 등, label 에 있는 단어를 변경하려면 다음 화면들을 다 찾아가면서 모두 변경해야 한다. 화면 수가 적으면 문제가 되지 않지만 화면이 수십개 이상이라면 수십개의 파일을 모두 고쳐야 한다.왜냐하면 해당 HTML 파일에 메시지가 하드코딩 되어 있기 때문이다. 이런 다양한 메시지를 한 곳에서 관리하도록 하는 기능을 메시지 기능이라 한다.국제화메시지 파일( messages.properties )을 각 나라별로 별도로 관리하면 서비스를 국제화 할 수 있다.- messages_en.properties item=Item item.id=Item.. Web/📗 Spring 2023. 1. 4. Spring '등록' 기능 구현 및 테스트 코드 작성 [Spring / 스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 등록 기능 만들기 web > dto > PostsSaveRequestDto package com.izero.springboot.web.dto; import com.izero.springboot.domain.posts.Posts; import lombok.Getter; import lombok.NoArgsConstructor; @Getter @NoArgsConstructor public class PostsSaveRequestDto { private Long id; private String title; private String content; private String author; @Builder public PostsSaveRequestDto(String title, String content, S.. Web/📗 Spring 2022. 7. 18. Entity와 DTO [Spring / 스프링 부트와 AWS로 혼자 구현하는 웹 서비스] Entity 클래스와 Controller에서 쓸 Dto는 꼭 분리해야 함. Entity Entity 클래스는 실제 DB 테이블과 매핑되는 핵심 클래스로, 데이터베이스의 테이블에 존재하는 컬럼들을 필드로 가지는 객체 (DB의 테이블과 1:1로 매핑) 데이터베이스와 맞닿은 핵심 클래스. Entity를 기준으로 테이블이 생성되고, 스키마가 변경 됨. @Getter @NoArgsConstructor // 기본 생성자 자동 추가 (public Posts() {}와 같은 효과) @Entity // 테이블과 링크될 클래스임을 나타냄 (SalesManager.java -> sales_manager 테이블) public class Posts { @Id // 해당 테이블의 PK 필드 @GeneratedValue(strat.. Web/📗 Spring 2022. 7. 18. [Spring] 스프링에서 Scheduler 사용하기 스프링에서 scheduler 사용 annotation으로 심플하게 제어 (비딩 사용 방법) xml로 핸들링 스키마 설정 WEB-INT > config > biz-layer.xml이라는 xml에서 작업. xmlns:task라는 스키마를 등록하고 스키마 경로를 지정하기 xmlns:task="http://www.springframework.org/schema/task" xsi:schemaLocation= http://www.springframework.org/schema/task http://www.springframework.org/schema/task/spring-task.xsd" @EnableScheduling and @EnableAsync respectively to replace 출처 : What i.. Web/📗 Spring 2022. 7. 18. 롬복 소개 및 설치하기 [Spring / 스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 롬복은 자바 개발 시 자주 사용하는 코드 Getter, Setter, 기본 생성자, toString 등을 어노테이션으로 자동 생성해 줌. 인텔리제이에서 플러그인으로 설치 가능, Ctrl + Shift + A > plugins > lombok 검색 후 설치 (이미 설치 된 경우 체크 누르기) Settings > Annotation Processor > Enable annotation processing 체크 Web/📗 Spring 2022. 7. 8. 테스트 코드 작성하기 [Spring / 스프링 부트와 AWS로 혼자 구현하는 웹 서비스] src > main > java 에서 오른쪽 클릭해서 springboot 패키지 생성 그 아래에 Application 클래스 생성 Application 클래스에 코드 작성 @SpringBootApplication 위치부터 설정을 읽어가는 것 SpringApplication.run()으로 내장 WAS 실행. package com.izero.springboot; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; // SpringBootApplication 어노테이션이 있는 위치부터 설정을 읽어가므로, 클래스는 항상 프로젝트의 최상단에 위치하여야 .. Web/📗 Spring 2022. 7. 8. gitignore 설정 [Spring / 스프링 부트와 AWS로 혼자 구현하는 웹 서비스] 프로젝트에서 오른쪽 마우스 누르고 ignore File 누르기 화면 나오면 generate 인텔리제이에서 자동으로 생성되는 파일들은 모두 ignore 처리하기 .gradle .idea Web/📗 Spring 2022. 7. 7. build.gradle dependencies의 compile과 testCompile이 작동하지 않는 문제 [Spring / 트러블 슈팅] 🎈 문제 정의 build.gradle에서 책에서 쓰라는 대로 따라가면 사진과 같이 아예 인식을 못한다. 🔑 원인 추론 jdk 버전 문제라고 생각 (X) compile 에서 implementation 과 api 로 변경되었다고 함. (O) compile과 implementation 차이 compile은 연결된 API 모두가 프로젝트에 의해 노출이 되고 implementation은 노출되지 않는다. api가 노출이 되면, API로직에서 유효성 검사 및 기타 원하지 않는 형태의 데이터가 들어와 보안의 위협이 돼서 골치 아파진다. A Web/📗 Spring 2022. 7. 7. 이전 1 다음