Computer Science/Spring boot
-
Servlet & DispatcherServletComputer Science/Spring boot 2023. 7. 18. 18:41
1. Servlet 이란 2. 서블릿 컨테이너의 역할 3. 프론트 컨트롤러 패턴과 Spring 에서 DispatcherServlet 1. Servlet이란 - Java 기반의 웹 애플리케이션 개발을 위한 서버 사이드 프로그래밍 기술로서 동적인 웹 컨텐츠를 생성하고 웹 요청을 처리하는 역할을 수행한다. 단순하게 이야기 해서 HTTP프로토콜 통신을 함에 있어 지켜야하는 규약 등을 쉽게 할 수 있도록 도와주는 Java API이다. 2. Servlet Container의 역할 - Servlet의 실행 환경을 제공하고, 서블릿의 라이프사이클 관리, 웹 애플리케이션의 실행을 담당하는 소프트웨어 컴포넌트. HTTP 요청이 들어온다면 해당 요청에 맞는 Servlet을 생성하고 관리한다. 요청이 들어올 때 마다 하나의..
-
Pinpoint를 이용하여 서버 관리하기.Computer Science/Spring boot 2022. 11. 12. 21:35
https://github.com/pinpoint-apm/pinpoint GitHub - pinpoint-apm/pinpoint: APM, (Application Performance Management) tool for large-scale distributed systems. APM, (Application Performance Management) tool for large-scale distributed systems. - GitHub - pinpoint-apm/pinpoint: APM, (Application Performance Management) tool for large-scale distributed sys... github.com Datadog을 사용하다가 pinpoint로 넘어오게 ..
-
Spring boot Entity test codeComputer Science/Spring boot 2022. 10. 7. 01:19
@NoArgsConstructor @Entity @Getter @Table(name = "lof_user") @TypeDef(name = "json", typeClass = JsonStringType.class) public class UserEntity { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "id") private Long userId; @NotNull @Column(name = "token") private String fcmToken; @NotNull @Column(name = "email") private String email; @NotNull @Column(name = "nickname") privat..
-
Spring boot DB 한글 깨짐 현상Computer Science/Spring boot 2022. 10. 6. 23:45
spring: config: activate: on-profile: localDB jpa: hibernate: ddl-auto: create-drop datasource: url: jdbc:mariadb://localhost:3306/lof?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC username: root password: 1234 ?useUnicode=true&characterEncoding=utf8&serverTimezone=UTC 위처럼 utf8을 사용한다는 것을 추가해주면 된다. 뒤의 serverTimezone은 안전을 위해 넣어주면 좋다.(UTC로 통일)
-
Spring boot 생성자 주입으로 사용해야 하는 이유Computer Science/Spring boot 2022. 10. 6. 17:30
생성자 주입은 객체를 처음 생성할 때 한번만 호출 됨으로 불변하다. autowired 같이 필드 주입으로 할 경우 test 등을 할 수 없게 된다. 그렇다고 setter 를 만들어 놓으면 어디선가 수정을 할 수 있게 됨으로 좋지 않은 코드가 된다. 최근에는 Lombok을 이용하여 @RequiredArgsConstructor 어노테이션을 추가하여 사용한다. final이 붙은 값들은 자동으로 생성자 주입코드를 만들어 준다.
-
Spring boot api test codeComputer Science/Spring boot 2022. 10. 6. 14:44
json을 포함하여 body를 받아야하는 post api로 test를 하겠다. test를 진행할 controller 이다. package com.lof.lofserver.controller.user; import com.lof.lofserver.controller.user.request.UserInfoDto; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @RestController @RequestMapping("/v1/user") public class UserController { @PostMapping("/create") public ResponseEntity create..
-
Spring boot 와 Spring의 차이Computer Science/Spring boot 2022. 10. 5. 17:43
본 내용은 김영한님의 스프링 핵심원리 강의를 보고 작성하였습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-%ED%95%B5%EC%8B%AC-%EC%9B%90%EB%A6%AC-%EA%B8%B0%EB%B3%B8%ED%8E%B8/dashboard 스프링 핵심 원리 - 기본편 - 인프런 | 강의 스프링 입문자가 예제를 만들어가면서 스프링의 핵심 원리를 이해하고, 스프링 기본기를 확실히 다질 수 있습니다., - 강의 소개 | 인프런... www.inflearn.com Spring boot 는 Spring framwork를 편리하게 사용할 수 있게 해준다. 이제는 spring 을 spring boot를 통해서만 이용한다고 해도 과언이 아니다. sp..
-
Spring boot 비동기 처리 (Aysnc)Computer Science/Spring boot 2022. 9. 29. 14:24
비동기 처리의 thread 수 등을 설정 할 config 파일을 만들어준다. package com.server.pandascore.config; import org.springframework.context.annotation.Configuration; import org.springframework.scheduling.annotation.AsyncConfigurerSupport; import org.springframework.scheduling.annotation.EnableAsync; import org.springframework.scheduling.concurrent.ThreadPoolTaskExecutor; import java.util.concurrent.Executor; @Configura..