본문 바로가기

Spring/Spring

(10)
spring-boot API 방식 웹을 개발한다는 건 크게 세 가지 방법이 있다.-정적 컨텐츠 -MVC와 템플릿 엔진(가장 많이 씀-jsp, php 등) -API API 방식정적 콘텐츠 방식 제외하고. MVC방식이냐 API방식이냐만 알고 있으면 됨.@GetMapping("hello-string") @ResponseBody public String helloString(@RequestParam("name") String name) { return "hello" + name; //hello spring }@ResponseBody HTTP 통신 프로토콜(그 중 POST)에... header부분과 body부분이 있다. HTML header/body말고 HTTP 통신 과정에 body부분에 이 내용을 직접 넣어주겠다.반응을 HTTP BODY에 넣어..
spring-boot MVC와 템플릿 엔진 웹을 개발한다는 건 크게 세 가지 방법이 있다.-정적 컨텐츠 -MVC와 템플릿 엔진(가장 많이 씀-jsp, php 등) -API MVC와 템플릿 엔진Model, View, Controller예전에는 controller, view 분리가 안 되어 있었음. 오잉... view에서 모든 걸 다 했음. (model 1방식) 지금은 MVC. "관심사의 분리"View는 화면을 그리는데 역량을 집중!Controller, model은 비즈니스 로직, 내부적인 거 처리 집중!쪼개는 게 좋겠다! 그래야 협업도 좋고, 복잡하지도 않고. 안 쪼개? 유지보수 혼자.... ;; @GetMapping("hello-mvc") //public String helloMvc(@RequestParam(name = "name", requir..
spring-boot 정적 컨텐츠, static 웹을 개발한다는 건 크게 세 가지 방법이 있다.-정적 컨텐츠-MVC와 템플릿 엔진(가장 많이 씀-jsp, php 등)-API 정적 컨텐츠-스프링 부트는 정적 Static Content 기본적으로 제공한다.By default, Spring Boot serves static folder~~static 폴더 보이지? 저기임폴더 아래에 hello-static.html을 만든다. 정적 컨텐츠 입니다. 접근 ? 그냥 파일 명 그대로 접근하면 됨소스 보기 해도 똑같음 웹 브라우저에서 localhost:8080/hello-static.html 요청했어.그럼 톰켓 내장 서버가 이걸 받아서 스프링 컨테이너로 넘겨. 컨트롤러(우선 순위 가짐)에서 hello-static 찾아봐! 어 없네?다음 resources안의 stati..
spring-boot gradle 빌드하고 실행하기 및 버전 오류 일단 인텔리J 서버 돌아가는 거 정지시켜 놓고!(8080포트 겹치니까...) 터미널 켜서 → 프로젝트 만들어둔 폴더로 접근해서gradlew build build하면 build폴더가 생김 build 안에 libs 안에 리스트를 보면 jar파일이 만들어진 걸 확인할 수 있다.rw-r--r-- 1 dhgpcks 197121 18775598 3월 10 18:17 hello-spring-0.0.1-SNAPSHOT.jar java -jar 이름이렇게 하면 jar파일을 실행할 수 있는데...this version of the Java Runtime only recognized class file versions up to 5.2.0뭔가... 버전 맞지 않다는 에러 뜸 (ㅠㅠ) 다 지우고 다시 깔았는데도 실패..뭘까 ..
spring-boot View 환경 설정 index.html만들어서 쓰니까 바로 사용가능하네resources - static - index.html 여기는 static폴더의 index.html파일입니다 정적 페이지에요. 요청 받아서 그냥 파일을 그냥 던져준 것! 스프링은 거의 웹 전반에 대한 모든 걸 제공하고 있다.스프링 부트는 좀 더 편하게 쓸 수 있게 해준다. 필요한 걸 찾는 능력이 중요하다.spring.io 공홈이얌. 다양한 내용 찾아서 쓸 수 있어. 템플릿 엔진템플릿 엔진은 페이지 내용을 바꾸거나 할 수 있도록 기능을 지원한다.(스프링에서 제공하는 기본적인 Template Engines은 FreeMarker, Groovy, Thymeleaf, Mustache가 있다)우리는 템플릿 엔진 중에 thymeleaf 템플릿을 쓰겠다.https:/..
spring-boot 프로젝트 생성 프로젝트 환경설정 프로젝트 생성 사전 준비물-Java 11 설치-IDE, InteliJ 또는 Eclipse설치 인텔리 J 많이 쓴다. 추천추천! 인텔리 합니다 : ) '스프링 부트 스터디 사이트로 이동해서 프로젝트 생성'https://start.spring.io 스프링 기반으로 스프링 부트 관련 프로젝트를 만들어주는 사이트 -Maven Project냐 Gradle Project나 고르는 게 있어. 라이브러리 가져 오고, 관리해주고, build해주는 툴 이다 과거에는 Maven많이 썼으나 요즘에는 Gradle을 많이 쓴다. Gradle 써보자.-Language는 Java-Spring Boot에서는 버전을 골라야 함. SNAPSHOT은 아직 시험 버전. -Project MetadataGroup 기업 도메인 ..
스프링과 싱글톤(Singleton) 싱글톤? 싱글톤에 대해 이해하기 위해서는 먼저 객체의 동일성과 동등성에 대해 알고 있어야 한다. ▼ 이 글을 참고하면 좋다. tang-co.tistory.com/160 싱글톤이란 클래스의 인스턴스를 딱 한 개만 만드는 거다. 객체가 여러 개 있으면 메모리를 많이 잡아먹으니까. 안에 든 값이 똑같은 건 객체 한 개로 공유한단 뜻이다. 스프링은 모든 빈 들을 싱글톤으로 관리한다. 그 이유는 스프링이 사용되는 곳이 대부분 엔터프라이즈급의 서버 환경이기 때문이다. 이용하는 사람도 많고, 요청 횟수도 엄청 많기 때문이다. 사용자가 10번 요청하면 10개의 객체를, 100번 요청하면 100개의 객체를 만들어줘야 한다. 그래서 스프링은 각각의 빈들을 싱글톤으로 관리하고 여러 스레드에서 이를 공유해서 사용할 수 있도록..
Gradle(그레이들) 설치하기 1. Gradle(그레이들) 설치 그레이들 홈페이지에 접속해서 그레이들을 다운로드 받아주도록 한다. Gradle Build Tool Accelerate developer productivity. Gradle helps teams build, automate and deliver better software, faster. gradle.org Download의 complete를 클릭해서 다운받아주도록 한다 2021년 1월 기준 최신버전은 v6.8이다 * Gradle을 사용하기 위해선 Java version 8 이상이어야 한다고 함 내 PC - C드라이브 처럼 찾기 쉬운 곳에 압축을 풀어주도록 한다. (저는 C:\Program Files\gradle-6.8로 했습니다) 압축을 제대로 풀었다면 [메이븐설치폴더..

반응형