context:annotation-config 是 @AutoWired 的替代品吗?

2023-11-26

我可以这样说吗?context:annotation-config在我的 XML 配置中,它会自动注入 bean 类而不需要任何注释?

因此,不要使用这些注释类型:

public class Mailman
{
    private String name;

    @Autowired
    private Parcel Parcel;

    public Mailman(String name)
    {
        this.name = name;
    }

    @Autowired
    public void setParcel(Parcel Parcel)
    {
        this.Parcel = Parcel;
    }

    @Autowired
    public void directionsToParcel(Parcel Parcel)
    {
        this.Parcel = Parcel;
    }

}

我只需要写这个:

<beans ... >
<bean id="mailMan" class="MailMan">
 <constructor-arg value="John Doe"/>
</bean>
<bean id="parcel" class="Parcel" />
<context:annotation-config />
</beans>

然后我的 MailMan 类看起来会简单很多,不需要注释:

public class Mailman
{
    private String name;

    private Parcel Parcel;

    public Mailman(String name)
    {
        this.name = name;
    }    
}

默认情况下,Spring 上下文不会关注@Autowired注释。为了处理它们,上下文需要有一个AutowiredAnnotationBeanPostProcessorbean 在上下文中注册。

<context:annotation-config/>为您注册其中之一(以及其他一些),因此您确实需要它(除非您注册AutowiredAnnotationBeanPostProcessor你自己,这是完全有效的)。

如果你不喜欢拥有@Autowired在您的代码中,然后您可以使用以下命令在 XML 中显式注入属性<property>,这只是将混乱从一个地方移动到另一个地方。

如果你的上下文是极其简单,那么您可以使用隐式自动装配,如上所述here。本质上,这告诉 Spring 按属性名称或类型自动装配。这需要很少的配置,但它很快就会失去控制 - 它的自动性质意味着它很难控制,并且给您带来很少的灵活性。

@Autowired一般来说,确实是最好的选择。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

context:annotation-config 是 @AutoWired 的替代品吗? 的相关文章

  • Spring Rest POST Json RequestBody 不支持内容类型

    当我尝试使用 post 方法发布新对象时 RequestBody 无法识别 contentType Spring 已经配置完毕 POST 可以与其他对象一起使用 但不能与这个特定对象一起使用 org springframework web
  • 如何限制用户键入时 JTextPane 中的字符数 (Java)

    我需要不允许在输入 X 后输入任何字符 我需要在输入 X 个字符后发出蜂鸣声 我知道如何在用户按 Enter 键后执行此操作 但我需要在用户按 Enter 键之前执行此操作 我从 Oracle 站点找到的方法是将 DocumentSizeF
  • 寻找 WebElements,最佳实践

    在我们当前的自动化 使用 Selenium WebDriver Java 中 我们使用 FindBy very广泛地 例如 FindBy css a name bcrumb protected List
  • 如何在JUnit测试中将MockWebServer端口设置为WebClient?

    我在用着spring boot with WebClient 它被自动装配为一个 bean 问题 写一个junit集成测试 我必须使用okhttpMockWebServer 该模拟始终在随机端口上启动 例如localhost 14321 N
  • splitByWholeSeparatorPreserveAllTokens 和 split 之间的区别

    有什么区别StringUtils splitByWholeSeparatorPreserveAllTokens and String split With splitByWholeSeparatorPreserveAllTokens 我们可
  • 如何使用java避免Mysql数据库中的“数据因列被截断”?

    在我的 Java 程序中 Hibernate Bean 类定义一列 例如 TimtableVO java Column name REPEAT DAYS private WeekdayType repeatDays hear Weekday
  • java中main的返回类型

    我想知道为什么java中main方法只有void返回类型 public static void main String args 为什么main方法除了void之外没有其他返回类型 Thanks 简短的回答是 因为这就是语言规范 http
  • Tomcat JDBC 池中没有足够的空闲连接

    给定以下 Tomcat JDBC 连接设置
  • Ubuntu 的打包 - Web 应用程序

    Web 应用程序没有与 C 或类似文件不同的 make 文件 但是 它需要放置在特定的目录中 例如 var www 我是 Linux 打包新手 所以我的问题是 如何将我的应用程序打包到 deb 中 以便在安装时将其放入 etc myprog
  • 使用java读取Excel工作表的单列

    我有一张 Excel 表格 我想编写一个方法 该方法将参数作为要读取的列号 并返回一个由该列中的所有数据组成的数组 然后将该列元素放置在 xml 工作表中 我怎样才能编写一个方法来做到这一点 使用 Apache POI 您可以在他们的使用页
  • 将 @RequestLine 与 Feign 一起使用

    我有一个工作 Feign 接口定义为 FeignClient content link service public interface ContentLinkServiceClient RequestMapping method Requ
  • jsf 中的类型未找到属性

    我正在尝试调用 jsf 中使用 primefaces 的属性 但我有错误 500 在托管bean PersonelBean 类型上找不到 我正在使用 hibernate jsf 和 spring PersonelBean java Mana
  • 捕获 XSS(跨站脚本)攻击的最佳正则表达式(Java 中)?

    杰夫实际上在净化 HTML http refactormycode com codes 333 sanitize html 但他的示例是用 C 编写的 而我实际上对 Java 版本更感兴趣 有人有更好的 Java 版本吗 他的示例是否足以直
  • 在Java程序中计算zip文件的md5哈希值

    我有一个 zip 文件 在我的 Java 代码中我想计算 zip 文件的 md5 哈希值 有没有我可以用于此目的的 java 库 一些例子将非常感激 谢谢 几周前我通过这篇文章做到了这一点 http www javalobby org ja
  • Java中如何限制文件大小

    我正在我的应用程序中创建一个文件 并继续向该文件中写入一些内容 但是当我的文件达到一定大小 比如说 100 行 后 我想删除第一行并将新行写入底部 要求是我的文件应该受到限制 但它应该保留我写入文件的最新内容 请告诉我在Java中是否可行
  • Google App Engine数据存储区字符串编码问题

    你好 我正在使用 Google App Engine 进行一个项目 并且需要存储一些字符串 我正在使用 Java 和JDOHelper getPersistenceManagerFactory transactions optional 在
  • 从 SQL 语句中检索元数据(表名)

    我使用的是 Visual Studio 2008 我创建了一个 Winforms 应用程序 并且尝试从 SQL 语句中提取表名 con new SqlConnection connString String queryString Sele
  • 如何手动添加Android Studio依赖

    我多次尝试向我的项目添加依赖项 但每次都会出现错误 我想添加它们的依赖项是 de hdodenhof circleimageview 1 3 0 and com github bumptech glide glide 3 6 1 所以我想下
  • 在 Vavr 中结合任一者?

    我有几个Vavr https www vavr io Either https www vavr io vavr docs either的 我想调用一个函数Right每个 Either 的值 例如 Either
  • Spring 和 Hibernate 连接池

    如何使用 Spring 和 Hibernate 配置连接池 Thanks Venu 您可以使用 DBCP 组件

随机推荐

  • loadFromRemoteSourcesenabled="true" // XAML 设计器 // VS 11 beta 和 2012 RC

    我经常被这种情况刺痛 当然总是在最糟糕的时刻 当我编辑 xaml 文件时 收到此错误 System NotSupportedException An attempt was made to load an assembly from a n
  • TRY/CATCH 不适用于 SQL Server 代理错误?

    I use sp start job开始工作 工作 test2 只有一步 select getdate waitfor delay 00 00 10 The TRY CATCH code begin try EXEC msdb dbo sp
  • 使用 SQL 视图还是 SQL 查询?

    我正在开发一个从 MS SQL 服务器获取数据的应用程序 2005 在命令文本中 我可以传递这样的 sql 查询 string query SELECT T1 f1 T1 f2 T2 f3 FROM table1 T1 join table
  • 写入字符串时出现分段错误[重复]

    这个问题在这里已经有答案了 我正在尝试编写一个就地反向函数 并且几乎完全遵循在线代码 但运行以下程序会引发总线错误 我是否向reverse 传递了错误类型的参数 void reverse char str char end str char
  • 如何在Android应用程序中播放直播?

    我想申请板球直播 我想知道以下事情 从哪里可以找到播放板球直播的链接 这些是什么类型的链接 有没有播放器可以播放这种类型的视频 目前 我已经实现了网页 但我正在寻找其他替代方案 下面是我的代码 link1 RelativeLayout fi
  • 暂时禁用关闭按钮

    我需要禁用just暂时关闭按钮 应允许最小化和最大化 我尝试过的每个解决方案都会禁用all按钮或只是永久禁用关闭按钮 有没有办法暂时做到 去的方法永久禁用关闭按钮是设置CS NOCLOSE style对于窗体的窗口类 要从 WinForms
  • EF Code First 迁移在 Azure Web 角色上抛出 StackOverflowException

    在 Azure Web 角色 WS 2012 R2 中执行 EF 6 1 2 代码优先迁移时会出现此问题 即使我将连接字符串指向 Azure Sql 数据库 相同的迁移也可以在本地正常运行 StackOverflowException 是由
  • 整数除法与下限商的比较:为什么会出现这个令人惊讶的结果?

    The 今天 Python 的 整数除 运算符让我感到惊讶 gt gt gt math floor 11 1 1 10 0 gt gt gt 11 1 1 9 0 The 文档读作 x 和 y 的 地板 商 那么 为什么 math floo
  • 需要 JavaScript 原型解释

    我通常在我的项目中以这种方式创建我的类 对象文字 var objectName global variables a somevalue func1 function func2 function 如果我必须将其转换为原型格式 我该怎么做
  • SwiftUI 控制台显示 CVDisplayLink 相关消息?

    当我运行我正在开发的基于 MacOS 的 SwiftUI 应用程序时 我在控制台上收到大量输出 例如 2021 12 08 12 40 14 439565 0000 SpDriveApp 6801 159299 0x7fe6e7830820
  • HTML如何在网页中插入动态日期

    我有一个静态网页 没有任何动态变化 然而 客户希望将日期插入到页面内的文本中 该日期将始终是当前日期加上一天 我怎么做 使用 JavaScript 并在加载时插入日期 看一下这里的工作示例 http jsfiddle net xGDvp 这
  • 被 FoldLeft 错误困惑(在 Eclipse 和 REPL 中)

    其背景非常简单 我的假设基于 Odersky 的书 Programming in Scala 2nd Edition 第 8 5 节描述了 占位符语法 我有一个 List List Boolean 即矩形位图 我试图在其中计算值 true
  • 什么是自动覆盖索引?

    使用时EXPLAIN QUERY PLAN在 SQLite 3 中 它有时会给我输出 例如 SEARCH TABLE staff AS s USING AUTOMATIC COVERING INDEX is freelancer AND s
  • 如何将图像和录制文件保存在临时目录中?

    我想将从我的应用程序中拍摄的相机照片和视频录制存储在临时目录中的单独文件夹中一段时间 当任务完成时 他们将保存到数据库中 如何将从相机和视频录制文件中拍摄的图片保存在临时目录中的单独文件夹中 您正在寻找这个来访问缓存文件夹来存储临时文件 N
  • R:ggfortify:“自动绘图不支持 prcomp 类型的对象”

    我正在尝试使用 ggfortify 来可视化我使用 prcomp 所做的 PCA 结果 示例代码 iris pca lt iris c 1 2 3 4 autoplot prcomp iris pca 错误 自动绘图不支持 prcomp 类
  • JPA Hibernate n+1 问题(Lazy 和 Eager Diff)

    我试图理解 n 1 问题 从而找到正确的解决方案 我有两个实体 公司 Entity Table name company public class Company implements Serializable private static
  • 以最小总距离连接所有点的算法

    我有一组点和适用于每对点的距离函数 我想将所有点连接在一起 总距离最小 你知道我可以使用的现有算法吗 每个点都可以链接到几个点 所以这不是通常的 推销员行程 问题 Thanks 你想要的是一个最小生成树 生成一个最常见的两种算法是 Prim
  • List 是否有协变可变版本?

    我已经将我真正想要注释的代码简化为这个最小版本 def print it numbers or nones for i number in enumerate numbers or nones if number is None numbe
  • 通过浏览器上传大文件(100 GB)

    有没有办法上传大文件 超过 80 GB 通过网络浏览器 以前我一直使用 plupload 上传文件 img png jpg 但它似乎不适用于较大的文件 我还想知道如何实现一个用户可以上传的网页 例如 Mega co nz 或 Drive g
  • context:annotation-config 是 @AutoWired 的替代品吗?

    我可以这样说吗 context annotation config在我的 XML 配置中 它会自动注入 bean 类而不需要任何注释 因此 不要使用这些注释类型 public class Mailman private String nam