From d8526264765c8fce571d47a0e898ca627cd88873 Mon Sep 17 00:00:00 2001 From: xuchengsheng Date: Fri, 20 Oct 2023 15:47:04 +0800 Subject: [PATCH] =?UTF-8?q?@Named=E6=B3=A8=E8=A7=A3=E6=BA=90=E7=A0=81?= =?UTF-8?q?=E5=88=86=E6=9E=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- spring-jsr/spring-jsr330-named/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/spring-jsr/spring-jsr330-named/README.md b/spring-jsr/spring-jsr330-named/README.md index 7cd41dd..70460d4 100644 --- a/spring-jsr/spring-jsr330-named/README.md +++ b/spring-jsr/spring-jsr330-named/README.md @@ -47,7 +47,7 @@ public @interface Named { 1. **Bean标识** + `@Named` 注解可以为一个类提供一个名称,使得这个类可以被识别并管理为一个bean。这样,这个bean就可以在其他地方通过这个名称被引用和注入。 2. **替代默认命名** - + 默认情况下,没有具体指定名称的bean会使用其类名的首字母小写形式作为其名称。使用 `@Named`,你可以`value`属性来覆盖这个默认名称。 + + 默认情况下,没有具体指定名称的bean会使用其类名的首字母小写形式作为其名称。使用 `@Named`,我们可以`value`属性来覆盖这个默认名称。 3. **解决歧义性** + 在依赖注入中,有时候可能有多个bean都符合某个注入点的要求。在这种情况下,`@Named` 可以与 `@Inject` 注解结合使用,明确指定哪个bean应该被注入。 @@ -460,11 +460,11 @@ protected boolean matchSelf(MetadataReader metadataReader) { 4. **类路径依赖** + 要使用`@Named`和其他JSR-330注解,需要确保`javax.inject`库在类路径上。如果没有添加此依赖,使用这些注解会导致类找不到错误。 5. **与JSR-330的其他注解的集成** - + 当使用`@Named`时,您可能还希望考虑使用JSR-330的其他注解,如`@Inject`,以确保一致性。 + + 当使用`@Named`时,我们可能还希望考虑使用JSR-330的其他注解,如`@Inject`,以确保一致性。 6. **避免名称冲突** + 当使用`@Named`为bean指定一个名称时,应确保在Spring上下文中没有其他bean使用相同的名称。否则,可能会出现不可预测的行为或错误。 7. **作用域** - + `@Named`默认的作用域是singleton。但如果您需要不同的作用域,例如prototype,您需要结合使用`@Scope`注解。 + + `@Named`默认的作用域是singleton。但如果我们需要不同的作用域,例如prototype,我们需要结合使用`@Scope`注解。 ### 九、总结