首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不使用if else的情况下实现工厂模式,或者如何使用注释在spring中切换大小写

如何在不使用if else的情况下实现工厂模式,或者如何使用注释在spring中切换大小写
EN

Stack Overflow用户
提问于 2015-12-09 20:27:04
回答 1查看 388关注 0票数 0

我正在学习春天..我已经浏览了在线资源,并使用switch case实现了工厂模式。

接口:

代码语言:javascript
复制
public interface Printer {
   public void print();
}

实施步骤:

代码语言:javascript
复制
public class Printer1 implements Printer {
   public void print() {
      System.out.println("Printer-1");
   }
}

public class Printer2 implements Printer {
       public void print() {
          System.out.println("Printer-2");
       }
 }

如何根据用户输入加载特定对象?

有没有办法在spring中使用注解实现工厂模式?

EN

回答 1

Stack Overflow用户

发布于 2015-12-09 20:47:18

如果希望在每次调用相应的getter时动态初始化或填充类的某些成员,可以尝试使用here中描述的查找方法注入。检查"3.4.6.1 Lookup method injection“

因此,即使包含动态成员的类是在scope=singletone ( spring bean容器的默认设置)中创建的,每次访问分配了查找方法的字段时,也会根据查找方法中实现的业务逻辑获得适当的对象。在您的示例中,Printer是一个接口,因此您可以轻松地在lookup方法中实现验证,并返回经过验证的对象。

当你配置你的主类时,分配一个查找方法给它的实现Printer接口的成员-当你需要一个实现‘打印机’的bean的新实例时,它就会被调用。

祝好运!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34178823

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档