假设项目首页就需要从数据库获取数据并展示,怎么配置默认访问的controller。
从Struts2转到SpringMVC过程中,产生了一个疑问,怎么像Struts2那样,通过配置default-action来确定项目默认访问的action。
现在发现有两种方法:
首先看controller代码,这块代码是不变的(service层和dao层代码没有影响,这里就不写了)
@Controller
@RequestMapping("/task")
public class TaskController {
@Resource
private TaskService taskService;
/**
* 默认访问的方法,获取码值表数据
*
* @param
* @return 码值表所有数据
* @throws
*/
@RequestMapping("/code")
public String getComCode(Model model){
List<ComCde> list = taskService.getComCode();
model.addAttribute("codeList", list);
return "task";
}
}
重点:两种方法都是在web.xml文件里修改
方法一、配置welcome-file-list和servlet-mapping
<!-- 将默认欢迎页配置为要访问的controller路径 -->
<welcome-file-list>
<welcome-file>task/code.do</welcome-file>
</welcome-file-list>
<!-- 配置拦截的后缀 -->
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
方法二、同样是配置welcome-file-list和servlet-mapping
<!-- 不用.do后缀 -->
<welcome-file-list>
<welcome-file>task/code</welcome-file>
</welcome-file-list>
<!-- 另外配置一个servlet-mapping拦截欢迎页配置的路径 -->
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/task/code</url-pattern>
</servlet-mapping>
第一次写博客,有问题欢迎指出交流。