我有很多 Spring bean 封装了现有的业务逻辑。现在,我希望在我的新Clojure Compojure应用程序内重用那些Spring Bean。我该怎么做呢 ?

我正在寻找的Clojure与此等效

Context context = new ClassPathXmlApplicationContext(....);

MyBean mybean = context.get("mybean", MyBean.class)

有Clojure方法吗?

最佳答案

(let [context (ClassPathXmlApplicationContext. ...)
      mybean  (.get context "mybean" MyBean)]
  ...)

是与Java代码等效的Clojure。 ...是接下来要执行的操作。或者,如果您想返回mybean作为整个东西的值(也许这将被包装在一个函数中):
(let [context (ClassPathXmlApplicationContext. ...)]
  (.get context "mybean" MyBean))

注意ClassPathXmlApplicationContext.末尾的点;这是new的简写,就像(new ClassPathXmlApplicationContext ...)一样。

关于java - 如何在Clojure应用程序中使用Spring Bean?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16930363/

10-09 09:48