HomeController.java
@Controller
public class HomeController {
private static final Logger logger = LoggerFactory.getLogger(HomeController.class);
/**
* Simply selects the home view to render by returning its name.
*/
@RequestMapping(value = "/", method = RequestMethod.GET)
public String home(Locale locale, Model model) {
logger.info("Welcome home! The client locale is {}.", locale);
Date date = new Date();
DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
String formattedDate = dateFormat.format(date);
model.addAttribute("serverTime", formattedDate );
//파라미터 넘길때 파라미터명, 넘길 값
return "home";
}
//컨트롤러 추가하는 경우
@RequestMapping(value = "/view", method = RequestMethod.GET)
value는 패키지명/에 입력하여 접근하는 값이다.
URL/패키지명/view 하면 이쪽으로 매핑된다.
public String home(Model model) {
logger.info("Welcome home! The client locale is {}.");
return "board/view";
//servlet-context.xml에 prefix + 뷰 + suffix 로 작성되는데
//위에 home.jsp는 views디렉터리에 있지만, view.jsp는 views디렉터리 아래 board디렉터리에 위치시켰다.
//prefix는 /WEB-INF/views/ 로 작성되있기때문에, 리턴값을 board/view로 해준 다.
}
}
home.jsp
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page session="false" %>
<html>
<head>
<title>Home</title>
</head>
<body>
<h1>
Hello world!
</h1>
<P> The time on the server is ${serverTime}. </P>
//${String args0} 컨트롤러에서 serverTime이라는 이름으로 정했다.
//뷰페이지에서 ${serverTime} 을 작성하면 컨트롤러에서 작동된 시간을 파라미터로 넘겨준다.
</body>
</html>