Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > интернет магазин на java


Автор: miofthena 26.12.2006, 18:10
нужно создать ajax интернет магазин .
известно что будет использоваться oracle в качестве базы данных . 
магазин достаточно крупный . 
хотелось бы услышать ваше мнение на тему какие связки технологий предпочтительлно использовать ?
какой сервер приложений (JBoss)?
и как к нему прикрутить к примеру GWT ..
простите если говорю какие-нибудь глупостиsmile

Автор: chief39 26.12.2006, 21:40
А кто будет создавать?

Будет ли всё реализовано в сервлетах/JSP/JSF и т.п. или очень хочется уровень бизнес-логики вкрутить(имхо, для магазина - не стоит)?

Если просто сервлетах/JSP/JSF/etc. джибосс не нужен - томката хватит.

И откуда взялось ajax-требование? 

Какие данные исходные?
Кто-то заказал?
Какая команда будет создавать?
Требоваиня к магазину?

Автор: miofthena 26.12.2006, 22:01
Цитата

А кто будет создавать?

делать будут люди которые недавно перешли с php на java .

Цитата

Будет ли всё реализовано в сервлетах/JSP/JSF и т.п. или очень хочется уровень бизнес-логики вкрутить(имхо, для магазина - не стоит)?

Планируется бизнес-логика , от этого и обратили внимание на jboss

Цитата

И откуда взялось ajax-требование? 
    
ajax требование от заказщика ,ничего уж тут не поделаешь , сейчас это модно .
поэтому появились мысли о  GWT ..

Цитата

Какие данные исходные?

исходные данные это несколько интернет-каталогов и один старенький магазин .

более всего интересует взаимодействие GWT + jboss. 

Автор: unkis 26.12.2006, 23:35
 smile 
извините за офтоп, но я ни как не могу понять что вообще такое это бизнес логика, может кто-то объяснит на этом примере, что в этом примере можно будет отнести к бизнес логике.

Автор: miofthena 26.12.2006, 23:41
Цитата(unkis @ 26.12.2006,  23:35)
smile 
извините за офтоп, но я ни как не могу понять что вообще такое это бизнес логика, может кто-то объяснит на этом примере, что в этом примере можно будет отнести к бизнес логике.

http://ru.wikipedia.org/wiki/%D0%91%D0%B8%D0%B7%D0%BD%D0%B5%D1%81-%D0%BB%D0%BE%D0%B3%D0%B8%D0%BA%D0%B0

Автор: tux 27.12.2006, 00:00
Цитата(miofthena @  26.12.2006,  22:01 Найти цитируемый пост)
делать будут люди которые недавно перешли с php на java .

Учитывая этот факт могу порекомендовать UI делать с использованием связки Spring+Velocity. Spring - универсальный фреймворк для разработки практически любых типов java-приложений, в том числе веб-приложений. Весьма удобный, хотя понадобится какое-то время на изучение. Velocity - скриптовый язык, синтаксис которого напонимает Perl и PHP. Поэтому на него будет проще переходить чем на JSP. На мой взгляд основная сложность - переключиться с написания кода внутри веб-страниц на четкое разделение модели, представления и контроллера. Надеюсь с этим справитесь. smile

Цитата(miofthena @  26.12.2006,  22:01 Найти цитируемый пост)
Планируется бизнес-логика , от этого и обратили внимание на jboss

Видимо бизнес-логика ассоциируется с EJB. Не думаю, что стоит вообще использовать полноценный J2EE-сервер. Достаточно использовать веб-контейнер. Контейнер EJB весьма полезен как интегратор программных компонентов, но можно прекрасно обойтись и облегченными контейнерами программных компонентов (тот же Spring). Скажу больше, в современных программных системах EJB используется не так часто, а если не использовать EJB, то по большому счету не нужен и сервер приложений.

Цитата(miofthena @  26.12.2006,  22:01 Найти цитируемый пост)
исходные данные это несколько интернет-каталогов и один старенький магазин .

Вот это, конечно, отлично, у вас есть база, с которой можно начинать. 

Цитата(miofthena @  26.12.2006,  22:01 Найти цитируемый пост)
более всего интересует взаимодействие GWT + jboss. 

С GWT совершенно не знаком, но я уверен, что тяжелого сервера приложений ему не надо, в конце концов технология относится только к UI. 

Автор: miofthena 27.12.2006, 00:16
Цитата

С GWT совершенно не знаком, но я уверен, что тяжелого сервера приложений ему не надо, в конце концов технология относится только к UI. 

поэтому речь и идёт о бизнес-логике, GWT можно использовать лишь в роли верхней графической прослойки . 

Мне вообще импонирует идейная подноготная GWT : пишем java классы , а они компилируются в js , чем обеспечивается достаточная производительность  .

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

А существует ли что-то на подобие GWT , но для бизнес логики ? Я понимаю , что технология JDBC и т.п. очень мощна ,но хотелось бы что-нибудь более высокоуровневое .

Автор: tux 27.12.2006, 00:36
Цитата(miofthena @  27.12.2006,  00:16 Найти цитируемый пост)
Но так как магазин планируется достаточно тяжёлый , мощный если можно сказать ,то графику хотелось бы отделить от работы с данными по средствам написания бизнес-логики .

Так это основная цель паттерна MVC, который реализуется целой группой существующих веб-фреймворков, и которые можно использовать. С этим у вас проблем не возникнет никаких. Естественно, при грамотной архитектуре приложения. Бизнес-логику лучше сконцентрировать в слое бизнес-классов. В общем рекомендовал бы почитать про паттерны MVC и Inversion of Control (IoC). Связка веб-фреймворка и облегченного контейнера (который реализует паттерн IoC) - это то, что вам нужно. Однако, вынужден оговориться, что прежде чем придет понимание, что это действительно нужно, пройдет возможно какое-то время. И изучение всего набора займет время. И то и другое в обном флаконе - это Spring. Есть и альтернативы, при необходимости могу привести ссылки.

Цитата(miofthena @  27.12.2006,  00:16 Найти цитируемый пост)
А существует ли что-то на подобие GWT , но для бизнес логики ? Я понимаю , что технология JDBC и т.п. очень мощна ,но хотелось бы что-нибудь более высокоуровневое . 

Еще раз оговорюсь, что ничего не знаю о GWT, поэтому не смогу провести ассоциации с JDBC. Из общих соображений рекомендую посмотреть Hibernate - это библиотека объектно-реляционного отображения. Похожие вещи есть и для PHP - http://wiki.cc/php/Object_Relational_Mapping. Такого рода библиотеки позволяют выполнять запросы к базе данных, работая с обычными классами Java.

Автор: miofthena 27.12.2006, 01:00
Спасибо ,Spring кажется реализует ещё и Object_Relational_Mapping , который в данном случае ой как пригодится . 

Спасибо  ,tux ,очень ценная информация =) 

Я только пока одного не понял , всё это крепится к стороннего серверу приложений  или у него он свой ?

Автор: tux 27.12.2006, 01:12
Цитата(miofthena @  27.12.2006,  01:00 Найти цитируемый пост)
Спасибо ,Spring кажется реализует ещё и Object_Relational_Mapping , который в данном случае ой как пригодится . 

Нет, сам по себе Spring ORM не реализует, он только упрощает работу с ORM-библиотеками, что тоже немаловажно.

Цитата(miofthena @  27.12.2006,  01:00 Найти цитируемый пост)
Я только пока одного не понял , всё это крепится к стороннего серверу приложений  или у него он свой ?

Нет, своего у него нет. Для разработки веб-приложения будет достаточно веб-контейнера - Tomcat, Jetty или что-то подобное.

Автор: miofthena 27.12.2006, 02:15
в итоге получается такая схема Spring+Hibernate+GWT(я почитал , существует возможность глубокой интеграции) всё это на Tomcat , если очень захочется ,то и на jboss. понятненько . 


tux,спасибо большое ,вы мне очень помогли .  smile 

Автор: check 27.12.2006, 07:57
Цитата(tux @  27.12.2006,  00:00 Найти цитируемый пост)
На мой взгляд основная сложность - переключиться с написания кода внутри веб-страниц на четкое разделение модели, представления и контроллера. Надеюсь с этим справитесь.

 smile 
А откуда такое представление, что в PHP все так и пишут до сих пор код внутри 
страниц?   Уверяю вас это не так.  

Автор: chief39 27.12.2006, 12:15
Цитата(tux @  27.12.2006,  00:00 Найти цитируемый пост)
Видимо бизнес-логика ассоциируется с EJB. Не думаю, что стоит вообще использовать полноценный J2EE-сервер. Достаточно использовать веб-контейнер. Контейнер EJB весьма полезен как интегратор программных компонентов, но можно прекрасно обойтись и облегченными контейнерами программных компонентов (тот же Spring). Скажу больше, в современных программных системах EJB используется не так часто, а если не использовать EJB, то по большому счету не нужен и сервер приложений.

Согласен.
miofthena, EJB - штука тяжёлая, сложная и мощная. Поэтому и платят за неё много. Вобщем... для инет-магазина EJB - будет дороговато. И людям переучиваться дольше, и, когда переучатся, придётся больше платить(и за магазин тоже). Выходит - из пушки по воробьям...


Цитата(miofthena @  27.12.2006,  02:15 Найти цитируемый пост)
в итоге получается такая схема Spring+Hibernate+GWT(я почитал , существует возможность глубокой интеграции) всё это на Tomcat , если очень захочется ,то и на jboss. понятненько . 

Да. на джибосс ничего мигрировать не надо - джибосс - это и сборник контейнеров: вэб-контейнер(томкат), еджиби-контейнер и т.д.
То есть томкат в нём есть встроенный.
Ну, tux всё верно расписал.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)