Tag: 弹簧

Spring注解@Repository和@Service

使用@Repository和@Service有什么好处? 不要告诉我有关组件扫描等,我期待着一些额外的好处或function,如果有的话。 如果我不使用它会怎么样? 我会错过什么?

当find多个匹配的bean时,Spring如何通过名称自动装载?

假设我有这样的接口: interface Country {} class USA implements Country {} class UK implements Country () 和这个configurationxml的片段: <bean class="USA"/> <bean id="country" class="UK"/> <bean id="main" class="Main"/> 我如何控制下面哪个依赖项是自动assembly的? 我想要一个英国人。 class Main { private Country country; @Autowired public void setCountry(Country country) { this.country = country; } } 我正在使用Spring 3.0.3.RELEASE。

Spring @PostConstruct与init-method属性

在Spring XMLconfiguration中使用@PostConstruct注解和声明与init-method相同的方法是否有区别?

Spring MVC中的@RequestParam处理可选参数

弹簧控制器可以处理这两种请求吗? 1) http://localhost:8080/submit/id/ID123432?logout=true 2) http://localhost:8080/submit/id/ID123432?name=sam&password=543432 如果我定义一种单一的控制器: @RequestMapping (value = "/submit/id/{id}", method = RequestMethod.GET, produces="text/xml") public String showLoginWindow(@PathVariable("id") String id, @RequestParam(value = "logout", required = false) String logout, @RequestParam("name") String username, @RequestParam("password") String password, @ModelAttribute("submitModel") SubmitModel model, BindingResult errors) throws LoginException {…} 具有“注销”的HTTP请求不被接受。 如果我定义了两个控制器分别处理每个请求,Spring会抱怨“已经有'Controller'bean方法…映射”的exception。

有没有办法在Spring XML中指定一个默认的属性值?

我们使用一个PropertyPlaceholderConfigurer在我们的Springconfiguration中使用java属性( 详细信息在这里 ) 例如: <foo name="port"> <value>${my.server.port}</value> </foo> 我们想添加一个额外的属性,但是有一个分布式系统,现有的实例可以使用默认值。 有没有办法避免更新所有的属性文件,通过在Springconfiguration中指定一个默认值,当没有定义重写属性值?

Spring Java Config:如何用运行时参数创build一个原型范围的@Bean?

使用Spring的Javaconfiguration,我需要获取/实例化一个原型范围的bean,它具有只能在运行时获得的构造函数参数。 考虑下面的代码示例(简洁起见): @Autowired private ApplicationContext appCtx; public void onRequest(Request request) { //request is already validated String name = request.getParameter("name"); Thing thing = appCtx.getBean(Thing.class, name); //System.out.println(thing.getName()); //prints name } Thing类定义如下: public class Thing { private final String name; @Autowired private SomeComponent someComponent; @Autowired private AnotherComponent anotherComponent; public Thing(String name) { this.name = name; } public String […]

在@RequestParam中绑定列表

我以这种方式从一个表单发送一些参数: myparam[0] : 'myValue1' myparam[1] : 'myValue2' myparam[2] : 'myValue3' otherParam : 'otherValue' anotherParam : 'anotherValue' … 我知道我可以通过添加一个参数来获得控制器方法中的所有参数 public String controllerMethod(@RequestParam Map<String, String> params){ …. } 我想绑定参数myParam [](而不是其他的)到一个列表或数组(任何保持索引顺序),所以我尝试了一个语法,如: public String controllerMethod(@RequestParam(value="myParam") List<String> myParams){ …. } 和 public String controllerMethod(@RequestParam(value="myParam") String[] myParams){ …. } 但没有一个绑定myParams。 即使我向地图添加一个值,也不能绑定参数: public String controllerMethod(@RequestParam(value="myParam") Map<String, String> params){ …. } 有没有任何语法来绑定一些参数列表或数组,而不必创build一个对象作为@ModelAttribute与列表属性在它? 谢谢

在多个项目/模块中使用多个属性文件(通过PropertyPlaceholderConfigurer)

我们目前正在编写一个分为多个项目/模块的应用程序。 例如,我们来看看下面的模块: 对myApp-DAO 对myApp-叽里咕噜 每个模块都有自己的Spring上下文xml文件。 对于DAO模块,我有一个PropertyPlaceholderConfigurer,它使用必要的db连接参数读取一个属性文件。 在jabber模块中,我还有一个用于jabber连接属性的PropertyPlaceHolderConfigurer。 现在主要的应用程序包括myApp-DAO和myApp-jabber。 它读取所有的上下文文件并启动一个大的Spring上下文。 不幸的是,似乎每个上下文只能有一个PropertyPlaceholderConfigurer,因此无论哪个模块首先被加载,都能够读取它的连接参数。 另一个抛出一个exception,如“无法parsing占位符'jabber.host'” 我很清楚问题是什么,但是我并不真正了解解决scheme – 或者是我的用例的最佳实践。 我如何configuration每个模块,使每个模块能够加载自己的属性文件? 现在我已经将PropertyPlaceHolderConfigurer从单独的上下文文件中移出,并将它们合并到主应用程序的上下文中(使用一个PropertyPlaceHolderConfigurer加载所有的属性文件)。 这很糟糕,因为现在每个使用dao模块的人都必须知道,他们在上下文中需要一个PropertyPlaceHolderConfigurer ..另外,dao模块中的集成testing也会失败等等。 我很想听到从stackoverflow社区解决scheme/想法..

我可以在哪里下载Spring Framework jars而不使用Maven?

SpringSource.org将其网站更改为http://spring.io 有人知道如何在没有Maven / github的情况下获得最新版本吗? 来自http://spring.io/projects

什么是Spring中的Dispatcher Servlet?

在这个图片(我从这里得到), HTTP请求发送一些事件到Dispatcher Servlet。 我的问题是调度程序Servlet是做什么的? 是像从网页上抛出的信息,并把它扔到控制器?