[Spring] MVC 웹페이지 구현 - Eclipse & xml 설정
2020. 10. 7. 09:24ㆍ개발공부/Spring
728x90
MVC 패턴을 이용해 클라이언트 요청이 오면 웹페이지를 띄워주는 본격적인 Spring으로 웹 구현하기에 돌입했습니다.
클라이언트가 요청(request)를 보내면 Tomcat 서버를 통해 DispatchServlet이 받아줍니다. Controller는 요청에 맞는 응답(response)를 반환하고 다시 DispatchServlet으로 간다음 ViewResolver가 클라이언트에 보여줄 View 페이지를 찾아 반환해줍니다. 이러한 일련의 요청-응답(request-response)과정이 MVC 패턴입니다.
1) Spring을 위한 IDE 설정
-강의 IDE는 Ecplise를 사용합니다.-
우선 pom.xml 파일에 관련된 dependency 들을 추가해줍니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
|
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>sp</groupId>
<artifactId>spring08</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<dependencies>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.0.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>4.1.0.RELEASE</version>
</dependency>
<!-- DB연동 관련 -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>4.1.0.RELEASE</version>
</dependency>
<dependency>
<groupId>com.mchange</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.2.1</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>oracle</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>utf-8</encoding>
</configuration>
</plugin>
</plugins>
</build>
</project>
|
cs |
다음으로 Tomcat 서버 연결하기 다운로드 링크
Spring 구현 중심으로 설명할 것이기 때문에 서버 연결 방법이 궁금하시면 구글을 이용해주세요.
마지막으로 Help > Eclipse Marketplace으로 들어가서 Spring 관련된 Add on을 plug in 해줍니다.
마지막이 아니었군요. web.xml 설정을 해줘야합니다. 주로 DispatchServlet 관련된 설정을 추가해줍니다. 구체적으론 요청이 어떻게 들어왔을 때 mapping 해주는지, Controller xml파일은 무엇인지, 그리고 한글 인코딩을 위한 UTF-8 필터입니다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<display-name>spring08</display-name>
<servlet>
<servlet-name>dispatcher</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<!-- controller path 입력 --> <init-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:spring-mvc.xml
classpath:spring-controller.xml
classpath:spring-member.xml
</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
<!-- 한글 인코딩 filter --> <filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
|
cs |
글이 길어져 간단한 웹페이지 구현은 다음 글에서 다루겠습니다.
'개발공부 > Spring' 카테고리의 다른 글
[Spring] MyBatis 연동 (0) | 2020.10.14 |
---|---|
[Spring] MVC 웹페이지 구현 - Model & 회원가입 페이지 (0) | 2020.10.07 |
[Spring] AOP ④ - (예제) HashMap으로 Cache 기능구현 (0) | 2020.09.30 |
[Spring] AOP ③ - @Pointcut, @Around... (0) | 2020.09.24 |
[Spring] Interface를 활용한 자동 메서드 실행 ② AOP (0) | 2020.09.24 |