好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Springmvc工程跳转controller无效的解决

Springmvc跳转controller无效

在实际搭建Springmvc工程,通过controller进行业务处理和逻辑跳转,经常发现接口URL拼写正确但是访问不到控制层,这里 给出两点说明,可供排查:

1、springmvc-servlet.xml

(只说明controller其他配置自行添加),在配置文件中添加

?

1

2

<!-- 自动扫描包,实现支持注解的IOC -->

< context:component-scan base-package = "com.bj58.automation.controller" />  //路径基于实际需求添加

2、web.xml,在改配置文件中将

?

1

2

3

4

< servlet-mapping >

   < servlet-name >springmvc</ servlet-name >

    < url-pattern >*.do</ url-pattern >

  </ servlet-mapping >

修改成

?

1

2

3

4

< servlet-mapping >

    < servlet-name >springmvc</ servlet-name >

     < url-pattern >/</ url-pattern >

   </ servlet-mapping >

controller格式如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

@Controller

@RequestMapping ( "/task" )

public class TaskController {

     @Autowired

     InsertTask insertTask; //注入添加任务接口

     @RequestMapping (value= "/insertTask" )

     public void insertTask( @RequestParam ( "productId" ) int productId, @RequestParam ( "taskname" ) String taskname,

             HttpServletRequest request,Model model) {

         insertTask.insertTaskService(productId, taskname);

     }

     @ResponseBody

     @RequestMapping (value= "/demo" ,method=RequestMethod.GET)

     public String name() {

         System.err.println( "demo123" );

         return "demo" ;     

     }

接口访问路径格式如下:http://localhost:8080/task/demo

springmvc无法进入controller、后台也不报错

说说解决思路

1、检查是否配置

处理器映射器、处理器适配器

?

1

< mvc:annotation-driven />

2、是否配置

扫描 controller包

?

1

< context:component-scan base-package = "cn.ssm.controller" />

3、controller类是否加上

@contaoller注解

?

1

2

3

4

5

6

7

8

9

10

11

12

@Controller

public class ItemController {

     @Autowired

     private ItemService itemService;

     @RequestMapping ( "/item/{itemId}" )

     @ResponseBody

     public TbItem getItemById( @PathVariable Long itemId) {

         System.err.println( 123 );

         TbItem tbItem = itemService.getItemById(itemId);

         return tbItem;

     }

}

4、视图解析器

是否配置正确

?

1

2

3

4

5

< bean

      class = "org.springframework.web.servlet.view.InternalResourceViewResolver" >

      < property name = "prefix" value = "/WEB-INF/jsp/" />

      < property name = "suffix" value = ".jsp" />

  </ bean >

5、web.xml文件是否配置

springmvc文件启动

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

<!-- springmvc的前端控制器 -->

     < servlet >

         < servlet-name >springmvc</ servlet-name >

         < servlet-class >org.springframework.web.servlet.DispatcherServlet</ servlet-class >

         <!-- contextConfigLocation不是必须的, 如果不配置contextConfigLocation, springmvc的配置文件默认在:WEB-INF/servlet的name+"-servlet.xml" -->

         < init-param >

             < param-name >contextConfigLocation</ param-name >

             < param-value >classpath:spring/springmvc.xml</ param-value >

         </ init-param >

         < load-on-startup >1</ load-on-startup >

     </ servlet >

     < servlet-mapping >

         < servlet-name >springmvc</ servlet-name >

         < url-pattern >/</ url-pattern >

     </ servlet-mapping >

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

原文链接:https://blog.csdn.net/zw1_csdn/article/details/89517259

查看更多关于Springmvc工程跳转controller无效的解决的详细内容...

  阅读:40次