java controller getMapping 使用策略模式代替if-else返回页面并携带model参数,每个页面获取不同参数放到model中
时间: 2023-05-20 17:06:18 浏览: 124
Java 设计模式 策略模式
5星 · 资源好评率100%
答案:
可以使用策略模式来代替 if-else 返回页面并携带 model 参数。具体实现方式是,定义一个接口,例如 PageStrategy,其中包含一个方法 getPageName(),用于返回页面名称,以及一个方法 getModel(),用于返回页面需要的 model 参数。然后,针对每个页面,实现一个具体的 PageStrategy 类,实现 getPageName() 和 getModel() 方法。在 Controller 中,通过依赖注入的方式,获取对应的 PageStrategy 实例,调用其 getPageName() 方法获取页面名称,调用 getModel() 方法获取页面需要的 model 参数,最后返回页面即可。这样做的好处是,可以避免 if-else 嵌套过深,代码更加清晰易懂,也方便扩展和维护。
阅读全文