Springmvc工程跳转controller无效的解决

目录
  • Springmvc跳转controller无效
    • 1、springmvc-servlet.xml
    • 2、web.xml,在改配置文件中将
  • springmvc无法进入controller、后台也不报错
    • 1、检查是否配置
    • 2、是否配置
    • 3、controller类是否加上
    • 4、视图解析器
    • 5、web.xml文件是否配置

Springmvc跳转controller无效

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

1、springmvc-servlet.xml

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

 <!-- 自动扫描包,实现支持注解的IOC -->
<context:component-scan base-package="com.bj58.automation.controller" />  //路径基于实际需求添加

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

 <servlet-mapping>
   <servlet-name>springmvc</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>

修改成

<servlet-mapping>
   <servlet-name>springmvc</servlet-name>
    <url-pattern>/</url-pattern>
  </servlet-mapping>

controller格式如下:

@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、检查是否配置

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

  <mvc:annotation-driven />

2、是否配置

扫描 controller包

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

3、controller类是否加上

@contaoller注解

@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、视图解析器

是否配置正确

   <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文件启动

<!-- 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>

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

(0)

相关推荐

  • SpringMVC找不到Controller路径的解决方案

    SpringMVC找不到Controller路径 自己用的是HBuilder,也不知道HBuilder能不能运行web项目. 猜测: 1.是Tomcat服务器的问题. 2.是少了Springmvc的配置. 应该是HBuilder的内置服务器匹配不上SpringMVC的实力. 又或者jdk1.8的问题,前者的可能性比较大. 解决方法: 1.重新用ssm的方式在eclipse中重写一个 2.找出问题所在 SpringMVC解决 系统找不到指定路径 问题展示: 问题原因: 这个原因是因为maven默认

  • 关于Spring MVC在Controller层中注入request的坑详解

    前言 记一次为了节省代码没有在方法体中声明HttpServletRequest,而用autowire直接注入所钻的坑 结论:给心急的人. 直接在Controller的成员变量上使用@Autowire声明HttpServletRequest,这是线程安全的! @Controller public class TestController{ @Autowire HttpServletRequest request; @RequestMapping("/") public void test

  • 详解springMVC—三种控制器controller

    在springmvc中提供了三种controller的配置,1.针对不需要controller代码的,也就是只起到跳转页面的作用.2.可以接受实体类型的controller.3.可以接受表单数据的controller,它只允许POST提交,在配置文件中需要指定提交FORM,请求成功的FORM. 1.直接转发到页面,不需要添加controller代码. <bean id="toLogin" name="/toLogin.do" class="org.s

  • Springmvc工程跳转controller无效的解决

    目录 Springmvc跳转controller无效 1.springmvc-servlet.xml 2.web.xml,在改配置文件中将 springmvc无法进入controller.后台也不报错 1.检查是否配置 2.是否配置 3.controller类是否加上 4.视图解析器 5.web.xml文件是否配置 Springmvc跳转controller无效 在实际搭建Springmvc工程,通过controller进行业务处理和逻辑跳转,经常发现接口URL拼写正确但是访问不到控制层,这里

  • thinkphp中session和cookie无效的解决方法

    本文实例讲述了thinkphp中session和cookie无效的解决方法.分享给大家供大家参考.具体分析如下: 问题描述: 在本地调试时session和cookie是用没有问题的,我是用session保存当前登录账户的信息,上传服务器之后,发现跳转之后session不复存在,为什么呢?在当前页面输出session是存在的. 遇到这个问题三天了,因为是自学没有老师可以请教,身边也没有几个是弄PHP的,所以真的是很悲剧,于是乎百度,而百度上很多人都是屁话连天,没有什么可以解决问题的,经过三天的修改

  • wxpython中Textctrl回车事件无效的解决方法

    本文实例讲述了wxpython中Textctrl回车事件无效的解决方法.分享给大家供大家参考,具体如下: 今天使用wxptyhon的Textctrl控件开发客户端时遇到了一个问题, 按照HTML表单的逻辑, 我们在Textctrl里回车应该提交查询, 但是wxpython的Textctrl很奇怪, 回车了居然是像Tab作用一样跳转到下一个控件.这样的话,要完成查询, 要么是鼠标点击按钮, 要么需要按两次或者两次以上. Google了一下, 无答案, 但是得到了一些有用的资料: TextCtrl支

  • IE6浏览器中window.location.href无效的解决方法

    本文实例讲述了IE6浏览器中window.location.href无效的解决方法.分享给大家供大家参考.具体方法如下: window.location.href是js中跳转功能,很多人在ie6中都会发现window.location.href不能跳转了,下面我给大家来介绍一下其原因与解决方法. 问题代码如下: 复制代码 代码如下: <a href="javascript:void(0);" onclick="javascript:test();">点击

  • JQuery 设置checkbox值二次无效的解决方法

    在此MVC ASP.NET 项目,我利用jquery ajax传输数据给后台controller控制层,返回数据给JQuery数据. 首先必须清除checkbox的选中,因为是ajax的异步操作,是不刷新页面的,所以需要手段充值控件值,使得其为空,不影响下次的拿到数据显示. 言归正传,$("#checkboxID").attr('checked', false);//设置checkbox为不选中状态, $("#checkboxID").attr('checked',

  • springboot controller无效的处理方案

    目录 springboot controller无效 springboot无法识别controller springboot controller无效 最近在学习spring boot,刚配置好项目,写了一个controller,运行后发现无法正常显示 在网上搜了一下,这是因为controller的路由没被注册. 原因:启动类application跟controller不在一个包中,扫描不到controller,应该让启动类和Controller的包在同一级目录下 如启动类在com.xxx.a,

  • springboot多数据源使用@Qualifier自动注入无效的解决

    目录 @Qualifier自动注入无效的解决 问题 问题的根本原因 其中问题出在 解决问题的方法 @Qualifier的作用和应用 @Qualifier的作用 @Qualifier自动注入无效的解决 问题 使用springboot进行多数据源时,发生了单例DataSource对应多个DataSourceBean的问题. 具体错误如下:XXXXX required a single bean, but 3 were found.通过@Qualifier来区分,或是在@Bean中添加name属性来区

  • BootStrap 标题设置跨行无效的解决方法

    最近在使用BootStrap的表格做一个报表界面(不需要报表的功能,只需要预览并且行列定好无需根据数据量变化,如有更好的框架欢迎推荐.),发现标题设置跨行属性rowspan无效.html如下: <table class="table table-bordered"> <thead> <th colspan="2" rowspan="2">功能分类</th> <th>第二列</th&

  • mysql运行net start mysql报服务名无效的解决办法

    运行net start mysql报服务名无效的解决办法,供大家参考,具体内容如下 1. 症状 以前电脑上安装了 MySQL,今天在电脑上运行,发现没有 MySQL 服务了 C:UsersAdministrator>net start mysql 服务名无效. 请键入 NET HELPMSG 2185 以获得更多的帮助 2. 解决办法 输入 mysqld.exe -install MySQL 安装在:D:\wamp\bin\mysql\mysql5.1.53 以上就是本文的全部内容,希望对大家的

随机推荐