SpringMVC前后台控制器、文件架构、数据拦截相关配置

在使用SpringMVC开发网站时候,前后台文件目录如何设置比较合理?   控制器怎么区分前后台请求 ? 拦截器如何只拦截后台请求? 首页如何跳转?

我来说说我的方法,欢迎大家一起讨论:

1、所有文件放在WEB-INF目录下包含起来,最好分为前台,后台2个文件夹:

WEB-INF/jsp/admin/

WEB-INF/jsp/front/

2、后台控制器也分为前后台控制器两个不同的package:

com.dream.http.controller.admin

com.dream.http.controller.front

所有请求admin下的控制器都会带上/admin/这一前缀

所有请求front下的控制器都会带上/front/这一前缀

如:/admin/goods/addgood.do

      /front/product/getProductList.do

这样从方法上就能判断哪些是后台请求,哪些是前台请求。还便于后面拦截器的配置。

3、拦截器只拦截后台请求:

< mvc:interceptors>
            <mvc:interceptor >
                 <mvc:mapping path = "/admin/**"/>
                 <bean class= "com.dream.http.interceptor.SessionInterceptor" >  
                     
                 </bean >
            </mvc:interceptor >
</mvc:interceptors >

4、默认首页问题:

首先在web.xml上配置一个<welcome-file>

<welcome-file-list>
   	<welcome-file>index</welcome-file>
  </welcome-file-list>

然后给SpringMVC的servlet配置一个servlet映射:

<!-- 配置spring mvc mapping -->
  <servlet-mapping>
	<servlet-name>SpringMVC</servlet-name>
	<url-pattern>/index</url-pattern>
  </servlet-mapping>
  
  <servlet-mapping>
	<servlet-name>SpringMVC</servlet-name>
	<url-pattern>/</url-pattern>
  </servlet-mapping>

 这样就会默认进入index控制器,可以从index控制器取值并发送给index.jsp了

@Controller
public class FrontController extends BaseController{
	@RequestMapping("/index")
	public String ToFrontIndex(){
		return "/front/index";
	}
}

如果有不合理的地方,欢迎指正!

相关推荐