SpringMVC用java配置 访问404

小行星2号 2018-05-21 01:40:50
求助,我按照Spring实战写,但是却无法访问!访问路径、请求映射、jar包都检查了没找出原因

配置类
public class WebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{
@Override
protected Class<?>[] getRootConfigClasses() {
return new Class<?>[] {RootConfig.class};
}
@Override
protected Class<?>[] getServletConfigClasses() {
return new Class<?>[]{WebConfig.class};
}
@Override
protected String[] getServletMappings() {
return new String[] { "/" };
}
}

配置类
@Configuration
@EnableWebMvc
@ComponentScan("com.heima.springmvc.controller")
// WebMvcConfigurationSupport
public class WebConfig extends WebMvcConfigurerAdapter {
// 配置JSP视图解析器
@Bean
public ViewResolver viewResolver() {
InternalResourceViewResolver resolver = new InternalResourceViewResolver();
// 设置前缀
resolver.setPrefix("/WEB-INF/jsp/");

resolver.setExposeContextBeansAsAttributes(true);
return resolver;
}
@Override
public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
configurer.enable();
}
}

配置类
@Configuration
@ComponentScan(basePackages= {"com.heima.springmvc"},
excludeFilters= {@Filter(type=FilterType.ANNOTATION,value=EnableWebMvc.class)}
)
@EnableAspectJAutoProxy
public class RootConfig {
}

操作
@Controller
@RequestMapping("/hello")
public class HelloController {

/*查询全部items*/
@RequestMapping(value="/home",method=GET) //访问路径映射。可以指定method参数
public String home() {
System.out.println("hi,.....");
//直接返回jsp
return "success.jsp";
}
}

测试类
public class HomeControllerTest {
@Test
public void testHome() throws Exception {
HelloController c=new HelloController();
MockMvc mockmvc=standaloneSetup(c).build();
mockmvc.perform(get("/hello/home")).andExpect(view().name("success.jsp"));
}
}
测试的结果:
INFO [main] - Mapped "{[/hello/home],methods=[GET]}" onto public java.lang.String com.heima.springmvc.controller.HelloController.home()
INFO [main] - Looking for @ControllerAdvice: org.springframework.test.web.servlet.setup.StubWebApplicationContext@617c74e5
INFO [main] - Initializing Spring FrameworkServlet ''
INFO [main] - FrameworkServlet '': initialization started
INFO [main] - FrameworkServlet '': initialization completed in 3 ms
hi,.....
...全文
904 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
yjsl__ 2018-05-22
  • 打赏
  • 举报
回复
放到服务器上也是404吗?
toitorse2 2018-05-22
  • 打赏
  • 举报
回复
需要分析错误提示

81,091

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧