분류 전체보기

    [Spring-boot] @RestController 와 @Controller

    [Spring-boot] @RestController 와 @Controller

    @RestController와 @Controller는 모두 컨트롤러 빈을 등록할 때 사용하는 어노테이션이지만 차이가 있다. @Controller @Controller는 view page를 반환한다. 만약 json 타입을 반환하고자 하는 경우 @ResponseBody 어노테이션을 추가한다. @ResonseBody를 사용하면 객체를 반환하고, 객체는 HTTP response body가 담을 수 있는 json이나 xml 타입으로 변환하여 Get 요청을 보낸 클라이언트는 json 타입으로 객체를 받게 된다. 즉 viewResolver를 사용하지 않는다. @RestController @RestController는 Restful Controller 라고 생각하면 된다. @Controller와 @ResponseBod..

    AWS로 인프라 구축하는 과정 (요약)

    AWS로 인프라 구축하는 과정 (요약)

    다음과 같은 과정을 통해 AWS 로 인프라를 구축할 수 있다. 1. 사설 ip 대역대에 vpc 구축 vpc : virtual private cloud vpc를 사용하여 클라우드 상에서 독립된 네트워크로 작동할 수 있게 된다. 2. subnet 생성 subnet 안에 리소스들을 위치시킨다 (ex. EC2, RDS

    코테 풀다가 SRP 원칙에 맞게 함수를 바꿔봄.

    코테 대비용 문제를 풀면서 srp 원칙에 맞게 함수명에 맞는 작업만 하도록 코드를 바꿔보았다. 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 기존 방식: 문제를 풀 때 makeCombi 라는 함수에서 소수를 만들기 위한 3개의 숫자를 뽑고, 뽑은 후에는 소수인지 확인 소수인 경우 1을 리턴 하도록 구현했었다. 이는 객체지향 5원칙 중 단일 책임 원칙에 위배된다. 단일 책임 원칙이 지겨지기 위해서는 클래스는 단 한개의 책임을 가져야한다. 문제 푸는 데에는 어떻게 하든 정답이지만.. 바꾼 결..

    [Flutter] pagination: 스크롤 시 추가 데이터 로딩하기(무한스크롤)

    Pagination을 위한 무한 스크롤 동작 구현 스크롤을 바닥까지 내렸을 때 목록에 데이터를 더 불러올 수 있도록 구현함. 블로그를 보면 ListView 위젯을 많이 사용하던데, 나는 SingleChildScrollView 위젯에 스크롤 컨트롤러를 추가하여 구현하였다. ScrollController 선언 final scrollController = ScrollController(); SingleChildScrollView 위젯에 controller 추가 SingleChildScrollView( controller: scrollController, ... ); 스크롤 컨트롤러 리스너 추가 스크롤을 내리거나 올릴 때마다 listener에 등록된 _addScrollController 함수가 호출된다. scr..

    [spring-boot] application.properties-dev로 실행하기

    작성할 때는 다 제대로 보이는데 글 등록하면 대체 왜 인라인 코드 블록이 적용 안되는건지 모르겠다.. 티스토리 어렵네🤷‍♀️ application.properties란? 스프링부트가 자동으로 로딩되기 위한 규약들 mysql 서버 정보, jpa 설정 등 작성함. 기본 설정 파일 application.properties을 개발 환경 용 설정파일 application-dev.properties 로 바꾸는 방법 application.properties 에 active 설정 spring.profiles.active=dev그리고 gradle에서 설치해야한다. bootRun { String activeProfile = System.properties\['spring.profiles.active'\] s..