웹 개발99 스프링 개념 정리(3) ObjectMapper Java 객체를 Json 형식으로 매핑하거나 Json 형식을 Java 객체로 매핑할 때 사용하는 클래스다. MockMvc란? MockMvc는 웹 어플리케이션을 애플리케이션 서버에 배포하지 않고 테스트용 MVC환경을 만들어 요청 및 전송, 응답기능을 제공해주는 유틸리티 클래스다. 다시 풀어서 이야기 하자. 내가 컨트롤러 테스트를 하고싶을 때 실제 서버에 구현한 애플리케이션을 올리지 않고(실제 서블릿 컨테이너를 사용하지 않고) 테스트용으로 시뮬레이션하여 MVC가 되도록 도와주는 클래스다! 🧐MockMvc 사용법 컨트롤러를 테스트한다고 가정하자! class ControllerTest{ @Autowired private MockMvc mockMvc; // mockMvc 생성 @Test p.. 2022. 9. 1. 스프링 개념 정리(2) @ToString 객체의 속성 값들을 콘솔에 출력 @RequestParam 아래 modelattribute에서 설명함 @ModelAttribute @RequestParam과 달리 객체 자체를 매핑한다. @RequestParam는 객체의 속성을 각각 맵핑 해야되지만 @ModelAttribute는 객체 자체를 맵핑하기 때문에 만약 다른 속성이 추가된다면 수정이 용이하다. @RequiredArgsConstructor final이 붙거나 @NotNull 이 붙은 필드의 생성자를 자동 생성해주는 롬복 어노테이션 필드 주입방식을 사용한 기존 Service @Service public class BannerServiceImpl implements BannerService { @Autowired private Bann.. 2022. 9. 1. 스프링 개념 정리(1) 스프링과 Vue.js로 블로그를 만들고 있다. 지금까지 CRUD 기능을 구현하였는데 중간점검을 위해서 지금까지 배운 것들을 정리해보려고 한다. 코드는 아래 commit에서 확인할 수 있다. https://github.com/Lemon-soju/Vue_Spring/commit/67e89498fde5d403de7f1dd44f450dbb896ad3f7 Delete Posts · Lemon-soju/Vue_Spring@67e8949 Show file tree Showing 4 changed files with 49 additions and 0 deletions. github.com [ Spring Bean 이란? ] Spring에서는 Spring의 DI Container에 의해 관리되는 POJO(Plain Ol.. 2022. 8. 27. Elastic Beanstalk 포기 AWS의 엘라스틱 빈스톡 서비스를 이용해서 로드 밸런싱, 오토 스케일링, 도메인 구입 등 여러가지를 실습하려 했는데 벡엔드 서버는 잘 동작하는데 프론트엔드인 React.js는 동작하지 않는다. 코드를 빌드해서 올리면 502 Gateway Error가 떠서 3일 동안 문제를 해결하려고 했는데 결국 해결하지 못했다. 로컬에서 실행하면 AWS에 올린 벡엔드 서버와 통신이 원활하게 되는데 인스턴스로 올리기만 하면 동작하지 않아서 짜증난다. 아마 설정파일의 어딘가가 잘못된거 같은데 리액트 부분은 지식이 얕아서 해결하기에는 아직 이른 것 같다. 400 페이지 중 20 페이지를 남기고 멈춰야하는게 찝찝하지만 나중에 다시 도전하면 되니깐 일단 못한 부분은 책으로라도 공부한 다음 조금 더 수련하고 나서 다시 도전해야겠다. 2022. 7. 28. 프로덕션 개발 완료 https://github.com/Lemon-soju/react-spring-aws/commit/c94f13905c681124ade71b9346fee8e9451c49a3 Merge pull request #24 from Lemon-soju/slave-01 · Lemon-soju/react-spring-aws@c94f139 Add SignUp Page github.com 회원가입, 로그인, 로그아웃 기능을 구현하였고 Todo List 모든 기능을 구현했다. 앞으로는 로컬이 아닌 다른 사람들이 내가 만든 페이지에 접근할 수 있도록 AWS 서비스를 이용할 예정이다. 데이터베이스, 오토 스케일링 그룹, 로드 밸런서를 구축할 예정인데 어쩔수 없이 도매인을 구매하고 SSL 인증서를 생성하기위해서 약간의 돈이 들지만.. 2022. 7. 24. 백엔드, 프론트엔드 통합 https://github.com/Lemon-soju/react-spring-aws/commit/e73912517dbe9423d6b0c2ffd36d97db52fde64d Merge pull request #14 from Lemon-soju/slave-01 · Lemon-soju/react-spring-aws@e739125 Add Entity, Repository, Controller github.com 백엔드와 프론트엔드를 통합하였다. CROS 문제가 발생했지만 리액트에서 설정 파일을 만들어 해결했다. 로그인 기능을 구현하기 위해 백엔드에 사용자 레포지토리, 서비스, 컨트롤러를 추가했다. 기본적인 틀만 만들었고 세부적인 기능은 작동하지 않는다. 2022. 7. 16. 프론트엔드 개발[리액트] https://github.com/Lemon-soju/react-spring-aws/commit/a50897e3fa1fd9be0509f10b2546396d940824c1 Merge pull request #11 from Lemon-soju/slave-01 · Lemon-soju/react-spring-aws@a50897e Update Function github.com 리액트를 이용해서 Todo list의 추가, 삭제, 수정 기능을 만들었고 UI는 material-ui을 사용하여 만들었다. 이후 백엔드 서버와 프론트엔드를 통합할 계획이다. 2022. 7. 7. 백엔드 개발 [스프링] https://github.com/Lemon-soju/react-spring-aws/commit/f35de0237157fd7f65a233011d5b80a576bbc1af Merge pull request #5 from Lemon-soju/slave-01 · Lemon-soju/react-spring-aws@f35de02 Delete Function github.com 지금까지 백엔드 부분을 작성했는데 CRUD 기능을 구현하였다. 이후 프론트엔드 부분을 작성할 계획이다. 2022. 7. 5. 스프링, 리액트, AWS 조합하기 프로젝트 시작 이전 프로젝트인 맨땅에 헤딩 프로젝트에서는 백엔드 부분은 스프링으로 구현하였고 프론트 엔드 부분은 스프링의 템플릿 엔진 타임리프를 통해서 웹서버를 구성했었다. 하지만 아무래도 스프링으로만 모든 것을 구현하다 보니 프론트엔드와 백엔드 서버가 분리된 아키텍처에 비해 확장성이 떨어지고 불편한 점이 많은 것 같다. 그래서 이번 기회에 프론트엔드 쪽도 공부하고 AWS를 통해 서비스를 배포하는 것에 그치지 않고 로드 밸런서, 오토스케일링그룹 등 스케일링에 필요한 서비스를 사용하고 HTTPS를 위한 인증서를 발급받아 설치하는 작업까지 공부하려고 한다. 요약하자면 조금 더 실제 서비스가 배포되는 전체적인 과정을 공부하기 위해 이번 프로젝트에서는 스프링으로 백엔드를 구성하고 리액트로 프론트엔드를 구성하여 REST API.. 2022. 7. 2. 이전 1 2 3 4 5 6 7 8 ··· 11 다음