Электронный магазин на Java и XML

         

Метод doPageMid (CatalogServ.java)



Листинг 4.7. Метод doPageMid (CatalogServ.java)

public void doPageMid( HttpServletRequest req, HttpServletResponse resp, PrintWriter out, HttpSession session ){ String action = req.getParameter("action");
String select = req.getParameter("select");
if( "showcatalog".equals( action )){ if( select == null || select.equals("all") ){ completeCatalog( out );
} else { productLineCatalog( out, select );
} } else if( "selectkeyword".equals( action )){ if( select == null || select.equals("all") ){ doKeywordSelect( out );


} } else if( "keywdsearch".equals( action )) { String keyword = req.getParameter("keyword");
if( keyword != null ){ keywordCatalog( out, keyword );
} } else if( "showproduct".equals( action ) || "setcart".equals( action) ){ doShowProduct( req, resp, out, session, action );
}else if( "showcart".equals( action ) ){ doShowCart( req, resp, out, session, action );
} }

В методах completeCatalog (листинг 4.8) и productLineCatalog (листинг 4.9) используется один и тот же подход к генерированию таблицы, содержащей соответствующий список товаров (либо полный, либо одну серию). Основное различие заключается в том, что в методе completeCatalog, как видно на рис. 4.1, в таблице имеются три столбца — по одному на каждую серию товаров. Для выбора одной из этих серий следует вызвать метод setlnitialSelect класса CatalogBean. В случае если у вас имеется более четырех серий товаров, следует искать какой- нибудь другой метод отображения каталога, так как таблица с пятью и более столбцами будет выглядеть не слишком хорошо.

Текст HTML, относящийся к конкретному товару, будет иметь вид, подобный следующему:

<а class="ch3" href="http://localhost/serviet/catalog?асtion= showproduct&id=bk0022">
Guide to Plants </a>
<span class="ch4">
price ea = $12.99 </span>

Этот код делает название товара активной ссылкой, которая отсылает параметры action и id сервлету, что ведет к отображению полной информации о данном товаре. Атрибут class контролирует тип, размер и цвет шрифта различных фрагментов текста путем выбора той или иной таблицы стилей из файла catalog.css.



Содержание раздела