오늘은 Spring을 활용하여 웹으로 출력하는 예제입니다.
출력되는 내용 자체는 단순하니 파일 구조 및 코드를 보면서 Spring이 웹에서 어떻게 출력되는지 확인하여 주시기 바랍니다.
파일 구조는 아래와 같이 되어 있습니다. 그리고 아래의 Github 주소에서 관련 파일 확인 가능합니다.
pack.controller 패키지
** HelloController.java **
package pack.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.ui.Model;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
import pack.model.HelloModel;
public class HelloController implements Controller{
private HelloModel helloModel;
public void setHelloModel(HelloModel helloModel) {
this.helloModel = helloModel;
}
@Override
public ModelAndView handleRequest(HttpServletRequest arg0, HttpServletResponse arg1) throws Exception {
//모델과 통신
String result = helloModel.getMessage();
//ModelAndView modelAndView = new ModelAndView("list"); //forward
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("result",result);
modelAndView.setViewName("list");
//modelAndView.setViewName("redirect:/view/list.jsp");
return modelAndView;
}
}
pack.model 패키지
** HelloModel.java **
package pack.model;
import java.util.Calendar;
public class HelloModel { // 모델 파트의 클래스
public String getMessage() {
int h = Calendar.getInstance().get(Calendar.HOUR_OF_DAY);
String ss = "안녕하세요";
if(h >= 6 && h <= 10) {
ss = "좋은 아침";
}else if(h >= 12 && h <= 15) {
ss = "맥런치 먹을 시간";
}else if(h >= 18 && h <= 24) {
ss = "즐거운 저녁 시간";
}
return ss;
}
}
그 외
** index.html **
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="hello.do">인사하기</a>
</body>
</html>
** pom.properties **
#Generated by Maven Integration for Eclipse
#Mon Apr 02 18:11:23 KST 2018
m2e.projectLocation=C\:\\Users\\kitcoop\\git\\espriter_blog_practice_kic\\sweb6_summary
m2e.projectName=sweb6_summary
groupId=sweb4_maven
artifactId=sweb6_summary
version=0.0.1-SNAPSHOT
** pom.xml **
<modelVersion>4.0.0</modelVersion>
<groupId>sweb4_maven</groupId>
<artifactId>sweb6_summary</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>war</packaging>
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.7.0</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>3.0.0</version>
<configuration>
<warSourceDirectory>WebContent</warSourceDirectory>
</configuration>
</plugin>
</plugins>
</build>
<properties>
<!-- web -->
<jsp.version>2.3.1</jsp.version>
<jstl.version>1.2.1</jstl.version>
<servlet.version>3.0.1</servlet.version>
<!-- spring -->
<spring-framework.version>4.3.11.RELEASE</spring-framework.version>
</properties>
<dependencies>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>${jsp.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>javax.servlet.jsp.jstl-api</artifactId>
<version>${jstl.version}</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${servlet.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${spring-framework.version}</version>
</dependency>
</dependencies>
</project>
결과 이미지
본 포스팅은 KIC 캠퍼스에서 박영권 강사의 지도하에 공부하며 작성한 리포트입니다.
혹시 잘못된 내용이 있거나 문제 소지시 댓글 남겨주시면 조치하겠습니다.
댓글 영역