Паттерн: Цепочка обязанностей (Chain of Responsibility)
Исходник: NewsPage.java, язык: java [code #486, hits: 6569]
автор: this [добавлен: 04.10.2007]
  1. package chainOfResponsibility;
  2.  
  3. import java.util.Iterator;
  4. import java.util.List;
  5. import java.util.Date;
  6. import java.util.logging.Logger;
  7. import java.sql.SQLException;
  8.  
  9. public class NewsPage {
  10. DAO_I data;
  11.  
  12. public NewsPage(DAO_I data) {
  13. super();
  14. this.data = data;
  15. }
  16.  
  17. public void Draw() {
  18. try {
  19. News latest = data.GetLatestNews();
  20. DrawHeader(latest);
  21. } catch (SQLException e) {
  22. Logger.getLogger("root").warning("ошибка выборки последних новостей");
  23. }
  24.  
  25. List<News> allNews = data.GetAllNews(new Date());
  26. for (Iterator<News> iter = allNews.iterator(); iter.hasNext();) {
  27. News one = iter.next();
  28. // ...
  29. }
  30.  
  31. }
  32.  
  33. protected void DrawHeader(News latest) {
  34. // ...
  35. }
  36. }
Сущность Client

Функционал отображения последних новостей, используя цепочку обязанностей при реализации DAL уровня.
Тестировалось на: java 1.5.0_04

+добавить реализацию