웹 개발/Spring (28) 썸네일형 리스트형 [Spring 기본] 객체 지향 설계와 스프링 스프링과 객체 지향?스프링에 객체 지향 이야기가 왜 이렇게 많이 나올까?스프링은 다음 기술로 다형성 + OCP, DIP를 가능하게 지원한다. DI(Dependency Injection): 의존관계, 의존성 주입DI 컨테이너 제공자바 객체들을 컨테이너 안에 넣어 놓고 의존관계를 연결하고 주입하는 기능 제공이렇게 함으로써 클라이언트 코드의 변경 없이 기능 확장할 수 있다. * 인프런 '스프링 핵심 원리 -기본편' 강의를 참고하여 작성했습니다. [Spring 기본] 스프링이란? 지금까지 스프링 회원가입 프로젝트를 진행하면서 스프링을 사용해보고, 전체적인 흐름을 파악했다. 이제부터 스프링의 핵심 기능에 대해 좀 더 깊이있게 다뤄보고자 한다. 스프링 프레임워크핵심 기술 : 스프링 DI 컨테이너, AOP, 이벤트, 기타웹 기술 : 스프링 MVC, 스프링 WebFlux데이터 접근 기술: 트랜잭션, JDBC, ORM 지원, XML 지원기술 통합: 캐시, 이메일 원격접근, 스케줄링테스트: 스프링 기반 테스트 지원언어: 코틀린, 그루비최근에는 스프링 부트를 통해서 스프링 프레임워크를 편리하게 사용할 수 있다. 스프링 부트스프링 부트는 스프링을 편리하게 사용할 수 있도록 지원하는 기술이다. 스프링 부트의 장점단독으로 실행할 수 있는 스프링 애플리케이션을 쉽게 생성Tomcat 같은 웹 서버.. [Spring 기초] AOP AOP 가 필요한 상황모든 메서드의 호출 시간을 측정하고 싶다면? 모든 메서드에 시간을 측정하려고 한다면 수정할 메서드가 너무 많을 것이다. 예제를 통해 한 번 살펴보자. 예제 public Long join(Member member) { long start = System.currentTimeMillis(); try { validateDuplicateMember(member); // 중복 회원 검증 memberRepository.save(member); return member.getId(); } finally { long finish = System.currentTimeMillis(); long timeMs = finis.. [Spring 기초] API API정적템플릿이 아닐 경우 두 가지 방법이 있다. Html로 내리는 방법과 데이터를 내리는 방법이다. 데이터를 내리는 방식이 API 인데 코드를 통해 살펴보자. 예제1. 컨트롤러에 아래 내용을 추가해보자. HelloController.java @GetMapping("hello-string") @ResponseBody public String helloString(@RequestParam(value = "name", required = false) String name, Model model) { return "hello" + name; } => @ResponseBody 는 http에 body 부분에 데이터를 직접 넣어주겠다는 의미이다. 이전 템플릿 엔진.. [Spring 기초] MVC와 템플릿 엔진 MVCMVC: Model, View, Controller과거에는 JSP 등에서 View에서 비즈니스 로직을 개발하는 Model1 방식을 사용했었다. View는 화면을 그리는 역할, Model은 비즈니스 로직을 처리하는 역할, Controller는 View와 Model을 연결하는 역할을 한다. 책임과 역할을 분리하기 위해 View와 Model을 나눠서 개발하는 디자인 패턴을 MVC 패턴이라 한다. 예제1. HelloController.java 에 아래 내용 추가 @GetMapping("hello-mvc") public String helloMvc(@RequestParam("name") String name, Model model) { model.addAttribute("name",.. [Spring 기초] 스프링 웹 개발 기초 스프링 웹 개발 기초정적 컨텐츠정적 컨텐츠는 서버에서 특별한 처리 없이 파일을 웹 브라우저에 그대로 내려주는 것을 의미한다. resources/static 경로에 hello-static.html 파일을 생성해보자 . 정적 컨텐츠 입니다. => 정적 파일이 그대로 반환된다. * 인프런 '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 강의를 참고하여 작성했습니다. [Spring 실습] View 환경설정 View 환경설정스프링 부트는 resources/static/index.html을 만들면 welcome page로 제공한다. 1. resources/static 에 index.html 파일을 생성하자. Hellohello 2. 서버를 재실행해보자. => 자세히 알아보고 싶으면 https://spring.io/ => project => Spring boot 에 문서를 참고하자. thymeleaf https://www.thymeleaf.org/ ThymeleafIntegrations galore Eclipse, IntelliJ IDEA, Spring, Play, even the up-and-coming Model-View-Controller API for Java EE 8. Write Thymeleaf i.. [Spring 실습] 프로젝트 생성 프로젝트 생성1. start.spring.io 접속 2. 인텔리제이에서 생성한 파일을 오픈해보자. 3. 실행하고 localhost:8080에 접속해보자. * 인프런 '스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술' 강의를 참고하여 작성했습니다. 이전 1 2 3 4 다음 목록 더보기