繁体   English   中英

春天注入类

[英]Spring Injected Class

我是Spring的新手,我刚刚加入了一个开发团队,他们正在利用它来开发我们正在开发的产品。 我开始了解IoC。 但是,我对一个特定的观点感到困惑。 我已经找到了答案,但一直找不到任何答案。

我正在查看的类上设置了@Controller注释。 其中一个方法有@RequestMapping注释。 此特定方法的方法签名包含我公司的一个专有类的参数。 这个专有类在Spring上没有任何注释,也没有在Spring配置文件中列出。

所以,我的问题是: 当没有任何东西可以帮助框架识别它时,该参数如何被注入?

我怀疑它能够做到这一点,因为在上一个事务中,专有类通过ModelAndView.addObject()添加到模型中,但我希望有人可以确认或否认。

具体情况如下:

  1. 用户请求登录页面
  2. addObject(proprietaryClass)
  3. 用户显示登录页面
  4. 用户单击按钮登录
  5. 方法在方法签名中使用专有类调用。

任何帮助都会很棒。

在bean配置中的某处,您将找到转换服务bean。 如果其他开发人员很好,他们会将其命名为“ConverterFactory”,它可能会扩展org.springframework.format.support.FormattingConversionServiceFactoryBean 您还可以使用org.springframework.format.FormatterRegistry的代码库。

这在Spring参考手册中有所描述。

春天很聪明......真聪明。 它可以查看请求参数的名称,并按字段名称将它们映射到POJO。 例如,如果您的用户有“first”和“last”字段,则可以传入user.first = Joe&user.last = Blow,它会尝试设置用户对象的“first”和“last”属性。 请查看http://www.jpalace.org/docs/technotes/spring/mvc-params.html,特别是名为Binding Domain Objects的部分。

另一种选择是他们已经实现了转换器或转换器工厂。 在我的项目中,我实现了一个处理我的任何数据库实体的通用ConverterFactory,获取Long并通过id查找它将其转换为实体化实体。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM