728x90
Spring 설정 파일 | |
Server.xml 경로 : tomcat 이하 |
Context 태그 path="/{프로젝트명}" -> localhost:8080 이하에 삽입할 루트 경로를 의미 -> path="/" 로 변경시, localhost:8080/{파일경로} 로 해당 파일에 접근이 가능하다. |
Resource 태그 DB Connection 관련 부분 |
|
web.xml 경로 : WEB_INF 이하 |
Servlet 태그 Servlet-mapping 태그 이하 servlet-name 에 선언되어 있는 dispatcher 이름을 따라간다. |
Servlet-mapping 태그 (1) <servlet-name>dispatcher</servlet-name> -> dispatcher 의 이름을 선언 (2) <url-pattern>*.do</url-pattern> -> url 패턴이 무엇으로 끝나는지 선언 -> .do 의 패턴의 url이 읽히는 원리 |
|
dispatcher-servlet.xml 경로 : WEB-INF > config 이하 |
servlet-class 태그 (1) Spring의 DispatcherServlet 이라는 class를 사용하겠다고 설정 (2) param-value 태그에 ContextConfiguration 을 선언 -> ContextConfiguration 을 param-value 의 파일로 지정 |
base-package Ex) com.att..* : 선언된 패키지 이하의 경로에 있는 파일들을 읽고 사용하겠다는 의미 |
|
mvc:resources mapping="/resources/**" location="/resources/" Spring이 권장하는 화면단 외의 기능 등의 리소스를 모아두는 폴더 -> 따로 빼면 관리가 쉽다. |
|
<bean id="viewResolver"> 태그 (1) prefix : WEB_INF/jsp -> 이하 경로의 파일들을 view 로 읽겠다. (2) suffix : .jsp -> 원래 url 읽어서 화면이동할 때 .jsp 가 붙으나, 여기서 설정해줌 -> .jsp 가 안붙어도 url 이 읽히고 화면 이동이 되는 원리 Cf. @RequestMapping 어노테이션이 붙은 Controller value = " " 로 url 설정해줄 때 .jsp를 생략 |
|
mybatisConfig.xml 경로 : WEB_INF > config 이하 태그 : typeAlias |
resultMap type="java.util.HashMap" -> JSON 으로 확장하면 더 좋음 |
paramMap type="java.util.HashMap" -> JSON 으로 확장하면 더 좋음 |
1. AOP
Aspect Oriendted Programming (관점 지향 프로그래밍) : 흩어진 관심사를 모듈화할 수 있는 프로그래밍 기법
2. MVC
Model-View-Controller (디자인패턴) : 사용자 인터페이스, 데이터 및 논리 제어 구현
비즈니스 로직과 화면을 구분하는 데에 초점이 맞춰져 있다.
-> 관심사 분리
3. Restful API
3-1. REST : Representational State Transfer (리소스 지향 아키텍쳐 스타일 - 모든 것을 명사로 표현하며 각 세부 리소스에는 id 를 붙임)
URI 와 HTTP 메서드를 이용하여 객체화된 서비스에 접근
REST의 요소.
(1) 리소스
Ex. http://resource/users
(2) 메소드
Ex. HTTP Post (CRUD : GET, POST, PUT, DELETE)
(3) 메시지
Ex. JSON
3-2. RESTful API : URI를 규칙에 맞게 잘 설계함
규칙.
(1) 동일한 URI의 패턴에 맞게 GET, POST, DELETE, PATCH 등의 메소드를 사용했는가
(2) 명사를 사용하며, 리스트를 표현할 때는 복수형을 사용했는가
(3) URI path 에 불필요한 파라미터를 안 넣었는가
728x90
'Server > Spring' 카테고리의 다른 글
[maven] Source option 7 is no longer supported. Use 8 or later. (0) | 2023.08.23 |
---|---|
maven project - dependency 추가 (0) | 2023.08.23 |
[Error]The requested profile "pom.xml" could not be activated because it does not exist. (0) | 2023.08.23 |
[Error] org.apache.catalina.LifecycleException (0) | 2023.08.23 |