본문 바로가기
반응형

Language & Framework & GIT/Spring6

[Spring] SpringMVC_3 # Hello 서블릿 스프링 부트 환경에서 서블릿을 등록하고 사용해보자 스프링부트는 톰캣 서버를 내장하고 있으므로,톰캣 서버 설치 없이 편리하게 서블릿 코드를 실행가능하다 내장 톰켓 서버 생성 스프링 부트에서 내장톰켓서버를 띄우고 서블릿 컨테이너를 통해서 서블릿을 생성해줌 GET방식으로 보내면 HTTP가 서버에 던져줌 그후 서버는 request,response객체를 만들어서 싱글톤으로 떠있는 helloServlet을 호출해줌 HttpServletRequest 역할 서블릿은 개발자가 HTTP 요청 메시지를 편리하게 사용할 수 있도록 개발자 대신에 HTTP 요청 메시지를 파싱한다. 그리고 그 결과를 HttpServletRequest 객체에 담아서 제공한다 HttpServletRequest를 사용하면 다음과 같은 HTTP 요청 메.. 2022. 8. 19.
Spring MVC_2#HTML ,HTTP API ,CSR ,SSR 백엔드 개발자가 프론트와 데이터를 주고 받을때 고려해야하는 것 정적 리소스 고정된 HTML파일,CSS,JS,이미지,영상 등을 제공 주로 웹브라우저 HTML페이지 동적으로 필요한 HTML 파일을 생성해서 전달 웹브라우저 : HTML 해석 HTTP API HTML이 아니라 데이터를 전달(데이터만 주고 받으며,UI화면이 필요하면,클라이언트가 별도처리) 주로 JSON형식 사용 다양한 시스템에서 호출 서로 HTML을 보여주는 전송을 제외한 모든 곳에서 사용 SSR-서버 사이드 렌더링 :서버에서 최종 HTML을 생성해서 클라이언트에 전달(HTML이 서버에서 다만들어짐) :주로 정적인 화면에 사용 :관련기술 : JSP,타임리프=>백엔드 개발자 CSR-클라이언트 사이드 렌더링 : HTML 결과를 자바스크립트를 사용해 .. 2022. 8. 17.
SprignMVC_1 #웹서버/WAS/서블릿 웹 서버(Web Server) - HTTP 기반으로 동작 - 정적 리소스 제공, 기타 부가기능 - 정적(파일)HTML,CSS,JS,이미지,영상 ex) NGINX,APACHE 웹 애플리케이션 서버(WAS) - HTTP 기반으로 동작 - 웹 서버 기능 포함 - 동적 HTML,HTTP API(JSON) - 서블릿,JSP,스프링 MVC ex) 톰캣(Tomcat) Jetty,Undertow 웹 서버,웹 애플리케이션의 차이 - 웹 서버 ㅣ 정적 리소스(파일) WAS ㅣ 애플리케이션 로직 - 둘의 용어,경계 모호 웹 서버도 프로그램을 실행하는 기능을 포함 웹 애플리케이션 서버도 웹 서버의 기능을 제공 - 자바는 서블릿 컨테이너 기능을 제공하면 WAS 서블릿 없이 자바코드를 실행하는 서버 프레임워크도 있다 - WAS는.. 2022. 8. 14.
[Spring]@NotNull @NotEmpty @NotBlank 의 차이 @NotNull / @NotEmpty / @NotBlank 다 비슷하게 생겼는데 뭐가 다를까 손병호,손흥민,손석구,손연재 전부 손씨지만 성만 손씨지 다 다르 @NotNull @NotNull은 이름에서 보여주듯 null만 허용하지 않는다. 따라서 "" 나 " "은 허용하게 되는 것이다. 그렇기 때문에 만약 초기화된 String이나 " "(공백)을 허용하지 않는다면 사용해서는 안된다. 즉, 초기화나 공백의 값이 들어와 저장은 되야하지만 Null 로 들어온 경우 오류가 나는 변수를 받을 때 사용하면 된다 @NotEmpty @NotEmpty는 null과 "" 둘다 허용되지 않게 한다. @NotNull에서 ""validation이 추가된 것이다. 즉, @NotEmpty는 Null값과 ""은 막히나," "은 허용된.. 2022. 8. 9.
Spring ORM & DB JPA 이해 💡ORM이란? ORM : Object - Realational Mapping -객체와 모델 사이의 관계를 기술하는 도구 -MVC 패턴에서 모델(Model)을 기술하는 도구 -객체와 데이터베이스의 관계를 매핑해주는 도구 Object : "객체"지향 언어(자바,파이썬) Relational : "관계형" 데이터베이스 (H2,MySQL) 백엔드 개발자(Backend Developer) : 웹 서버를 개발하는 개발자 DBA (Database Administration) : 데이터베이스 관리자,데이터베이스를 설계하는 일을 맡은 사람 ORM 사용 이유 - OOP(Object-Oriented Programming),객체 지향 프로그래밍 vs Relational Database,관계형 데이터베이스 - 객체 .. 2022. 8. 6.
[Spring] @RequestParam RequestParam Spring Controller에서 @RequestParam은 매우매우 유용한 기능이다. request.getParameter의 기능과 비슷하다고 볼수 있는데 RequestParam은 jsp에서 보낸 request값을 효율적으로 받기 위해 사용된다. HttpServeltRequest에서는 getParameter()메소드를 이용했지만,@RequestParam을 이용해서 받아오는 방법도 있다. 메소드의 파라미터값으로 @RequestParam을 넣어주면 된다. 코드를 통해 보면 @Controller public class wooController{ @RequestMapping("/road/roadname") @public String roadname(@RequestParam("id"),.. 2022. 8. 4.
반응형