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

http://pilesoska.ru/Saturn.html          

Методы getArtist...



Листинг 6.63. Методы getArtist, getlmage и getClip (UpdateProduct.java)

boolean getArtist( String i, HttpServletRequest req, Product product ) { String artist = req.getParameter( "artist" + i );
if( artist == null || artist.equals( "" ) ) { return false; } product.addArtist( artist );
return true; } boolean getImage( String i, HttpServletRequest req, Product product ) { String format = req.getParameter( "img" + i + "-format" );
if( format == null || format.equals("") ) { return false; } Image img = new Image();
img.setFormat( format );
String src = req.getParameter( "img" + i + "-src" );
img.setSrc( src );
String height = req.getParameter( "img" + i + "-height" );
img.setHeight( Util.getInteger( height ) );
String width = req.getParameter( "img" + i + "-width" );
img.setWidth( Util.getInteger( width ) );
String caption = req.getParameter( "img" + i + "-caption" );
img.setCaption( caption );
product.addImage( img );
return true; } boolean getClip( String i, HttpServletRequest req, Product product ) { String format = req.getParameter( "clip" + i + "-format" );
if( format == null || format.equals("") ) { return false; } Clip clip = new Clip();
clip.setFormat( format );
String src = req.getParameter( "clip" + i + "-src" );
clip.setSrc( src );
String title = req.getParameter( "clip" + i + "-title" );
clip.setTitle( title );
String length = req.getParameter( "clip" + i + "-length" );
clip.setLength( length );
String size = req.getParameter( "clip" + i + "-size" );
clip.setSize( size );
String description = req.getParameter ( "clip" + i + "-description" );
clip.setDescription( description );
product.addClip( clip );
return true; } }

JSP-страницы и сервлеты, представленные в этой главе, показывают, как можно использовать приложение, работающее через браузер, для добавления, редактирования и удаления элементов каталога, размещенного на сервере. Таким образом, возможности WWW расширяются от простого представления статических данных до полноценной системы обработки информации.

Представленное в этой главе решение лишено некоторых свойств, которые потребовались бы для настоящего крупномасштабного сайта. Следовало бы улучшить обработку ошибок, которая не слишком хорошо организована. У нас отсутствует синхронизация доступа к файлам XML, так что если два человека одновременно возьмутся редактировать один и тот же файл, то изменения, внесенные одним из них, будут потеряны. Но, несмотря на эти недостатки, данное приложение справилось бы с задачей редактирования XML-каталога товаров небольшого сайта.



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