先回答你的第二个问题吧,这里用到了视图解析器,根据请求路径解析参数,再去找相应的视图
@Bean
public ViewResolver viewResolver () {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
//配置JSP视图解析器
resolver.setPrefix("/WEB-INF/views/");
resolver.setSuffix(".jsp");
resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}
还有一点,你映射了所有的请求路径,只要访问“/”它就会被拦截
public class SpitterWebInitializer extends AbstractAnnotationConfigDispatcherServletInitializer {
@Override
protected String[] getServletMappings() { //将DispatcherServlet映射到“/”
return new String[]{"/"};
}
@Override
protected Class>[] getRootConfigClasses() {
return new Class> [] {RootConfig.class};
}
@Override
protected Class>[] getServletConfigClasses() {
return new Class> [] { WebConfig.class};
}
}
这里是你所要请求的映射路径路径,
@Controller
public class HomeController {
@RequestMapping(value = "/",method = RequestMethod.GET) //处理对“/”的Get请求
public String home() {
return "home"; //视图名为home
}
}
根据返回值进行选择,
还有一种没有返回值,
@RequestMapping(method = RequestMethod.GET)
public List spittles() {
return spittleRepository.findSpittles(Long.MAX_VALUE,20));
}
当处理器方法像这样返回对象或集合时,这个值会放到模型中,模型的key会根据其类型推断得出。
希望能帮助你,需要自己思考