led网站制作seo比较好的优化
web/
2025/10/9 13:11:54/
文章来源:
led网站制作,seo比较好的优化,免费网站代码下载,谁给个网站呀可见性得以保障,并不意味着是的#xff0c;所以可以说您正在编写一个Spring MVC应用程序#xff0c;然后您决定#xff1a;“我想做一些单独的封装算法#xff0c;这些算法可以互换来执行特定的行为”。 对此的经典回应是“您需要一个战略模式男孩#xff01;”。 所以所以可以说您正在编写一个Spring MVC应用程序然后您决定“我想做一些单独的封装算法这些算法可以互换来执行特定的行为”。 对此的经典回应是“您需要一个战略模式男孩”。 所以这就是我所做的考虑下面的代码… 接口 public interface MealStrategy {cook(Meat meat);
} 首要策略 Component
public class BurgerStrategy implements
MealStrategy {Autowired CookerDao cookeryDao;Overridepublic void cook(Meat meat) {cookeryDao.getBurger(meat);}
} 下一个策略 Component
public class SausageStrategy implements
MealStrategy {Autowired CookerDao cookeryDao;Overridepublic cook(Meat meat) {return cookeryDao.getSausage(meat);}
} 上下文... Component
Scope(prototype)
public class MealContext {private MealStrategy mealStrategy;public void setMealStrategy(MealStrategy strategy) {this.strategy strategy;}public void cookMeal(Meat meat) {mealStrategy.cook;}
} 现在说这个上下文是通过mvc控制器访问的例如... Autowired
private MealContext mealContext;RequestMapping(method RequestMethod.POST)
public ResponseBody Something makeMeal(Meat meat) {mealContext.setMealStrategy(new BurgerStrategy());mealContext.cookMeal(meat);
} 通常这对于与策略模式一起使用非常有意义。 但是使一切崩溃的那一行是控制器中的那一行… mealContext.setMealStrategy(new BurgerStrategy()) 这将导致在Spring的应用程序上下文之外创建bean的新实例。 这很好奇如果您不能使用new来创建新实例那么应该如何在Spring中实现模式呢 在StackOverflow上问了这个问题之后我得出的结论是使用依赖注入模式根据Spring中的标准自动装配并进行策略的单独注入。 首先我需要修改策略以便它们命名组件。 Component(burger)
public class BurgerStrategy implements MealStrategy { ... }Component(sausage)
public class SausageStrategy implements SausageStrategy { ... } 现在在控制器中我有单独的策略可以使用因此除了设置策略外我还只是选择合适的注入策略。 Resource(name burger)
MealStrategy burger;Resource(name sausage)
MealStrategy sausage;RequestMapping(method RequestMethod.POST)
public ResponseBody Something makeMeal(Meat meat) {burger.cookMeal(meat);
} 参考 策略模式不适用于Spring 从我们的JCG合作伙伴 David Gray在Code Mumble博客上获得。 翻译自: https://www.javacodegeeks.com/2013/11/strategy-pattern-aint-meant-for-spring.html可见性得以保障,并不意味着
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/89646.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!