Java自学之SpringMVC:视图定位

学习目的:在Servlet的学习中,我们知道,要想访问WEB-INF文件夹的资源是不能直接访问到的,只能使用forward,不能用redirect。通过SpringMVC的视图定位,也能访问到该目录下的资源。

Part 1

基于Java自学之springMVC:Hello Spring MVC一文中的项目,修改springmvc-servlet.xml配置文件,新增下面的配置信息。该调配置是把视图约定在/WEB-INF/page/*.jsp这个位置,其中“*”代表下面要访问的路径,如/index。

<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
   <property name="prefix" value="/WEB-INF/page/" />
   <property name="suffix" value=".jsp" />
</bean>

修改完成如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
	<bean id="viewResolver" class="org.springframework.web.servlet.view.InternalResourceViewResolver">
   		<property name="prefix" value="/WEB-INF/page/" />
  		<property name="suffix" value=".jsp" />
	</bean>
	<bean id="simpleUrlHandlerMapping"
		class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
		<property name="mappings">
			<props>
				<prop key="/index">indexController</prop>
				<prop key="/hello">helloController</prop>
			</props>
		</property>
	</bean>
	<bean id="indexController" class="controller.IndexController"></bean>
	<bean id="helloController" class="controller.HelloController"></bean>
</beans>

Part 2

修改IndexController类,如下:

package controller;
 
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
//import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
 
public class IndexController implements Controller {

	@Override
	public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws Exception {
        ModelAndView mav = new ModelAndView("index");
        mav.addObject("message", "Hello Spring MVC");
        return mav;
    }
}

Part 3

在WEB-INF下新建一个文件夹,命名为page吧,把原来位于WebContent目录下的index.jsp移动到新建的page中。

v2-7a56eb3cc91841bcb10fd17fea1e45a0_b.jpg

Part 4

将项目部署在Tomcat上,并启动Tomcat服务器。在浏览器地址栏输入http://localhost:8080/springMVC/index,页面成功显示出信息。达成学习目的。

v2-b16a6c01e96ffbf60c7c31e00a4cb803_b.jpg

posted @ 2020-02-20 22:39  IMKKA  阅读(6)  评论(0)    收藏  举报  来源