加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

春季-使用@ModelAttribute的公共方法太多

发布时间:2020-12-15 01:20:43 所属栏目:大数据 来源:网络整理
导读:我有一个1600行长的控制器.这主要是由一堆带有@ModelAttribute批注的公共方法填充的.它还有一些@RequestMapping方法. 我想减少行数并分班.如何使用@ModelAttribute批注处理多个公共方法?它们不是在处理请求时都被调用吗? 最佳答案 I have a controller tha

我有一个1600行长的控制器.这主要是由一堆带有@ModelAttribute批注的公共方法填充的.它还有一些@RequestMapping方法.

我想减少行数并分班.如何使用@ModelAttribute批注处理多个公共方法?它们不是在处理请求时都被调用吗?

最佳答案

I have a controller that is 1600 lines long

喝了

How do you handle multiple public methods with @ModelAttribute annotation? Aren’t they all invoked whenever a request is processed?

当用于对方法进行注释时,此注释指示应使用该方法的返回值填充该控制器类执行的每个请求的模型,而不考虑执行哪个@RequestMapping方法.

我的建议是执行审计,以查看哪些视图(例如JSP)使用各种@ModelAttribute方法提供的模型数据.每个视图可能仅使用该数据的子集.

一旦弄清楚了@ModelAttribute和@RequestMapping方法的组合,然后将它们分解为单独的类.

如果那不可行(也许所有视图确实都使用了所有数据),则可以考虑从类中完全提取@ModelAttribute方法,并使用将它们的输出手动合并在一起的单个方法将它们缝合在一起(例如将Model或ModelMap对象从@RequestMapping方法传递到此新方法,然后将模型的位添加到该对象.

请记住,带@ModelAttribute注释的方法只是添加额外模型数据的便捷方法.它们不是唯一的方法.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读