首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场

init方法
EN

Stack Overflow用户
提问于 2013-01-24 11:43:08
回答 1查看 852关注 0票数 0

我使用和救生筏。我需要知道是否有方法在所有@ModelAttribute注释(类似init方法)之前调用方法。我需要这样做,因为我在所有@ModelAttribute方法中使用从db检索的对象来从对象中提取属性子集。我使用请求参数为db中的行发送pk。我不想在上面注释的所有方法中再次检索对象(这减慢了呈现速度,因为我正在对db进行多个连接以检索完全相同的对象,我可以在类似init的方法中执行一次,在任何呈现/操作请求之前都应该调用该方法)。我尝试过@PostConstruct,但它给了我一个例外,显然这不是解决方案。我甚至不知道spring是否正在考虑这个注释,因为它来自核心的javax。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2013-01-24 21:44:05

编辑:

好的,如果您需要在@(Action/Request)映射之前调用一个方法,您可以使用Spring框架中的拦截器

这个链接可能是有用的。

不回答您的问题( direclty ),但我建议创建一个服务从DB检索对象,然后将该服务注入portlet中:

代码语言:javascript
运行
复制
@Autowired ServiceDao serviceDao

这样,您就可以将数据库访问层与视图层分开(控制器不应该直接查询DB )。

那么,为了解决您的问题,您可以发布一些代码吗?如果您的每个@ModelAttribute都需要来自BD的一些对象,例如,您可以检索它一次,然后将它缓存在您的服务中。

概念上的一些可能有用的资源。

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

https://stackoverflow.com/questions/14500558

复制
相关文章

相似问题

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