Spring mvc 自动装配 RequestMappingHandlerMapping

2024-06-24

我正在尝试自动接线org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping在我的 spring mvc 控制器中,为了获取所有 url 映射并将它们显示在 UI 上,但没有成功。出现缺少bean的错误:

 org.springframework.beans.factory.BeanCreationException: Could    not autowire field: org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping web.controller.WorkController.handlerMapping; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

我的 web.xml:

<display-name>Spring MVC Application</display-name>

<servlet>
    <servlet-name>mvc-dispatcher</servlet-name>
    <servlet-class>
        org.springframework.web.servlet.DispatcherServlet
    </servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>WEB-INF/mvc-dispatcher-servlet.xml</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
    <servlet-name>mvc-dispatcher</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>


<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/root-context.xml</param-value>
</context-param>

<listener>
    <listener-class>
        org.springframework.web.context.ContextLoaderListener
    </listener-class>
</listener>

我的 mvc-dispatcher-servlet.xml:

 <context:annotation-config/>
    <context:component-scan base-package="web.controller"/>
             <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix">
            <value>/WEB-INF/views/</value>
        </property>
        <property name="suffix">
            <value>.jsp</value>
        </property>
    </bean>
</beans>

我的 root-context.xml:

<bean id="helloBean" class="web.beans.HelloBean"/>

java控制器:

package web.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping;
import web.beans.HelloBean;

import java.util.List;

@Controller
public class WorkController {

    @Autowired RequestMappingHandlerMapping handlerMapping;
    @Autowired private HelloBean helloBean;
    @Autowired private ApplicationContext applicationContext;

    @RequestMapping(value = "/index")
    public String index() {
        return "index";
    }
}

您应该在自动装配之前启动 RequestMappingHandlerMapping bean。 它有两种方式:

  1. 在 springxml 配置中,例如 hello bean
<bean name="handlerMapping" class="org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping">
<!-- add your properties here property name="..." value="..."></property-->
</bean>
  1. 或者使用

    @配置

    @Configuration 
    @ComponentScan("your.package") 
    @EnableWebMvc   
    public class AppConfig {  
    ...
        @Bean
        public RequestMappingHandlerMapping requestMappingHandlerMapping() {
           RequestMappingHandlerMapping mapping = new RequestMappingHandlerMapping();
           // add properties here
           return mapping;
        }
    ...
    } 
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring mvc 自动装配 RequestMappingHandlerMapping 的相关文章

  • 导入java spring项目后如何构建maven

    你好 我是 java spring 概念的新手 所以我下载了一个示例spring应用程序并将其导入到eclipse中 我已经阅读了spring教程 要么我必须将maven安装到eclipse中才能运行spring项目 所以我已经安装了mav
  • 多线程以原子方式对大量值求和

    我正在开发一个应用程序 其中有大量线程 并且必须自动添加 100 个值 我在用AtomicLong效果很好 但仍需要提高性能 有没有比 AtomicLong 提供更好性能的东西 您可以使用长加法器 https docs oracle com
  • 我的应用程序中的 google+ 集成

    我是 Android 开发新手 正在创建一个带有 Google 集成的 Android 应用程序 我看到了一个教程并开始遵循它 但自教程以来 Google 已经更新了 Google 集成 例如 在本教程中您曾经单击 获取配置文件 按钮htt
  • Eclipse + Spring Boot 中“抛出 new SilentExitException()”处的断点

    每次我在 Eclipse IDE Spring Tool Suite 中以调试模式运行 Spring Boot 项目时 线程都会停止在throw new SilentExitException 即使没有断点也行 有什么解决方案可以避免这种行
  • 为 HTTPS 连接设置 https.protocols 系统属性时出现问题

    我有一个 Java 实现 各种客户端应用程序使用它来连接到第三方系统 这些第三方系统支持 http https 上的不同协议 在这种情况下 所有客户端应用程序都托管在我的 Java 实现托管的同一服务器中 因此 在这种情况下 各种客户端应用
  • 使用 org.eclipse.xsd 和 Maven2 分析 XML 模式

    我正在尝试实现示例代码本文 http help eclipse org help32 index jsp topic org eclipse xsd doc references articles dwtip1 scpw index htm
  • Java(正则表达式)-获取句子中的所有单词

    我需要将 java 字符串拆分为单词数组 假设该字符串是 Hi I need to split this string into a serie s of words 目前我正在尝试使用这个String strs str split w 但
  • 如何将堆栈跟踪转换为字符串?

    转换结果的最简单方法是什么Throwable getStackTrace 到描述堆栈跟踪的字符串 Use Throwable printStackTrace PrintWriter pw https docs oracle com java
  • Java写入ByteArrayOutputStream内存泄漏

    我正在将图像字节写入ByteArrayOutputStream然后通过套接字发送它 问题是 当我这样做时 ImageIO write image gif byteArray 内存增加很多 有点内存泄漏 我用这个发送 ImageIO writ
  • double 或 BigDecimal 会溢出吗?

    Java 8 给了我们Math addExact https docs oracle com javase 8 docs api java lang Math html addExact int int 适用于整数 但不适用于小数 是否有可
  • JRuby调用了错误的方法

    我在调用 Java 方法时遇到了一个奇怪的问题JRuby http en wikipedia org wiki JRuby 在我的 Java 类中 这些方法定义了两次 看来 JRuby 调用了错误的方法 所以我尝试使用java method
  • Java - 动态创建子类

    我想以编程方式创建一个子类 我想我的选择很少 Javassist CGLib BCEL 或 ASM 用例是一个应用程序的内部是面向类的 而扩展是基于类的 因此 我不能将单个类作为由外部化脚本驱动的多个扩展的基础 现在 我该怎么做呢 我找到了
  • 使用 ProGuard 混淆代码后如何保持 javadoc 可见?

    我使用 progured 4 7 混淆了我的代码 并保留了 A 类 其中包含描述该类功能的 javadoc keep public class com mysite ClassA public keepattributes InnerCla
  • SwingWorker 和 Executor 的区别

    我正在使用 SwingWorker 在我正在制作的应用程序上执行一些重负载任务 虽然今天我遇到了 Executor 类和这个例子 Executors newCachedThreadPool execute new Runnable publ
  • Java中有没有办法随机获取HashMap的值?

    Java中有没有办法随机获取HashMap的值 这有效 Random generator new Random Object values myHashMap values toArray Object randomValue values
  • Scala 不可变 Map 速度慢

    当我创建地图时 我有一段代码 val map gtfLineArr 8 split map split collect case Array k v gt k v toMap 然后我使用这张地图来创建我的对象 case class MyOb
  • GridLayout 中的 JLabel

    如何添加JLabel出于GridLayout 我有一个 8x8 网格布局 Container content getContentPane content setLayout new GridLayout 8 8 2 2 for int f
  • 解决SecurityException:权限拒绝:启动意图。我需要什么许可?

    我想从应用程序打开游戏商店 在三星手机上还好 但在一加手机上却失败了 我不知道在哪里alibaba来自 真奇怪 异常 java lang SecurityException 权限拒绝 启动意图 act android intent acti
  • Java中ThreadFactory的使用

    有人可以简要解释一下如何以及何时使用 ThreadFactory 吗 使用和不使用 ThreadFactory 的示例可能确实有助于理解差异 Thanks 这是一种可能的用法 假设您有一个ExecutorService它执行你的Runnab
  • JFrame.repaint() 和 JPanel.repaint() 之间的区别

    谁能解释一下两者之间的区别JPanel repaint 方法和JFrame repaint 方法 我想两者都调用paintComponent JPanel 中的方法 请澄清 谢谢 Calling repaint 在任何组件上都会向重绘管理器

随机推荐

  • 在 Express Route api 中添加命名参数

    我有一条快速路线 如下所示 app get api v1 username option function req res do stuff 如何修改此路由 以便 URL 显示选项的参数名称 option 例如 http localhost
  • James Gosling 对 Java 字节为何有符号的解释

    最初我对 Java 决定指定这一点感到惊讶byte是有符号的 范围是 128 127 包括的 我的印象是大多数 8 位数字表示形式都是无符号的 范围为0 255相反 例如IPv4 点十进制表示法 http en wikipedia org
  • Lamport 的 Paxos 中的矛盾做了简单的论文

    阶段 2 a 如果提议者收到大多数接受者对其准备请求 编号为 n 的响应 则它向每个接受者发送一个接受请求 以获取编号为 n 且值为 v 的提案 其中 v 是响应中编号最高的提案的值 或者如果响应未报告任何提案 则为任意值 正如论文中提到的
  • 重载方法值与替代方法的聚合

    我有以下函数 但无法编译 private def save pea KStream String String Unit pea groupByKey aggregate gt folder String String value Stri
  • 多行TextView的wrap_content宽度

    我有一个 TextView 宽度和高度都设置为 wrap content max lines 设置为 2 当文本适合一行时 一切都可以完美运行 但是当它换行到第二行时 TextView 的宽度变得尽可能大 它填充父容器 所以 我想要的是 S
  • 如何用 cin 分配 char 指针?

    所以基本上当我尝试这样做时 char inputFileName cout lt lt Filename cin gt gt inputFileName 它允许我输入文件名 但是当我按 Enter 时 我收到未处理的异常错误 有任何想法吗
  • Android API 19 上的 Bitmap.CompressFormat.WEBP alpha 通道变黑

    我编写了一个从 Web 检索图像 JPEG PNG 等 的服务 然后将其以 webp 格式保存到磁盘 我使用以下代码保存图像 try FileOutputStream fos new FileOutputStream imgFile bit
  • 从 PHP 字符串中提取城市和邮政编码

    我需要 PHP 中的一种快速通用方法来从输入字符串中提取城市和邮政编码 如果可用 信息 该字符串可以是以下形式 input str 123 Main Street 纽黑文 康涅狄格州 input str 123 Main Street 纽黑
  • 突出显示字符串中的单词(如果包含关键字)

    如果包含关键字 如何编写包含整个单词的脚本 example 关键字 fun 字符串 这只鸟很有趣 结果 这只鸟 有趣 我做以下事情 str my bird is funny keyword fun str preg replace keyw
  • VK API,社区墙上的帖子访问被拒绝,WALL 权限失败

    我为我的 VK 社区上的帖子构建 API 但我检查了我的应用程序的权限 并且我拥有所有权限 但没有加载 WALL 权限 在 OAuth 的范围中 我放置了所有范围 而不是在 WALL 上工作 我检查 Api console 他们有 访问墙
  • 当我使用 ArrayList 时,如何阻止 GWT 尝试包含每个可序列化的类

    我在 GWT 中有一个 RPC 服务 需要返回一个列表 该列表可以填充各种类型的对象 所有这些对象都是可序列化的 并且所有这些对象都在我的服务中的其他地方引用 因此它们应该可用于 GWT RPC 但是 除非我使用泛型类型参数 例如Array
  • Scala 插入列表中的特定位置

    这是我确实解决的问题 但是作为一个完全命令式的 Scala 菜鸟 我觉得我发现了一些完全不优雅的东西 任何改进的想法表示赞赏 val l1 4 1 2 3 4 Nil original list val insert List 88 99
  • 在循环中有效地使用 matplotlib 的箭袋

    我使用循环在底图上生成矢量场 如下所示 for i in range 365 barbs m quiver x y u i v i scale 100 plt draw barbs remove 该程序每次循环都会占用更多的内存 有办法解决
  • redux 与路由器在更改 url 时保持状态

    我有这个问题 我有一个简单的路由技术包裹在 redux 中 如下所示
  • 无法加载 Rails.config.active_storage.service

    我正在利用 Active Storage 设置一个新的 Rails 5 2 应用程序 并使用 AWS 来托管生产中的图像 但是 我在应用程序读取凭据时遇到问题 2018 07 06T08 11 52 625415 00 00 app web
  • 将 FileSavePicker 与 MessageDialog 的 IUICommand 事件结合使用

    单独来看 所有代码都可以完美运行 用于保存文件的代码片段 用于选择保存文件的目录的代码片段以及消息对话框都非常有效 但是当我将它们结合在一起时 我的访问被拒绝 我没有使用 DocumentsLibrary 功能 因为在这种情况下不需要我这样
  • 我会为此函数制作什么函数原型?

    int myFunc int a int b int c int d c code 我试过这个 int myFunc int int int int 和这个 int myFunc int int int int int 和这个 int my
  • 意外的“继续”

    I have while i lt l if one two continue i 但 JSLint 说 第 1 行第 20 行字符出现问题 意外的 继续 if one two continue 我犯了什么错误 我的代码应该如何really
  • 如何将 UINavigationBar 后退按钮的标题更改为“后退”

    当我将视图推到导航控制器上时 后退按钮的标题将设置为前一个视图的标题 如何让后退按钮只说 后退 将此代码写入您的viewwillappear UIBarButtonItem backButton UIBarButtonItem alloc
  • Spring mvc 自动装配 RequestMappingHandlerMapping

    我正在尝试自动接线org springframework web servlet mvc method annotation RequestMappingHandlerMapping在我的 spring mvc 控制器中 为了获取所有 ur