![]() |
Модераторы: LSD, AntonSaburov |
![]() ![]() ![]() |
|
CaligoSpiritus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 8.12.2006 Репутация: 1 Всего: 2 |
Уже два года программирую на Java, но никаких "больших" проектов еще не делал. Решил, что уже пора. И вот, с сотрудником решили написать небольшую социальную сеть (по крайней мере, для начала - небольшую
![]() Технологии намереваемся использовать следующие: Spring Framework, Spring MVC, Hibernate для работы с БД, Velocity для темплейтинга. Однако, на счёт остальных компонентов пока сомневаемся. Для пользовательского (web-browser) решено использовать AJAX, но какой движок выбрать? В "Pro Spring" советуют DWR, а какие ещё есть варианты, какие преимущества? У сети будет тяжёлая фото-составляющая. Отсюда вопрос, как лучше хранить изображения - в файловой системе или в БД? (БД планируем использовать Oracle). |
|||
|
||||
Llucas |
|
|||
![]() J2EE Developer ![]() Профиль Группа: Участник Сообщений: 160 Регистрация: 29.11.2006 Где: Одесса Репутация: нет Всего: нет |
Ну все это хорошо и очень даже удобно использовать. Но вот DWR я бы не рекомендовал. Лучше просто использовать какую-нибудь javascript библиотеку (ExtJs, JQuery), где очень удобно делать AJAX-запросы. На мой взгляд это надежнее.
|
|||
|
||||
CaligoSpiritus |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 56 Регистрация: 8.12.2006 Репутация: 1 Всего: 2 |
На первый взгляд понравилась jQuery, но на сколько удобно её можно интегрировать со Spring MVC? Ведь там будут не просто AJAX запросы какого-то контента, вроде кусочка html или картинки, это будет запрос к слою сервисов. (Не уверен, на сколько это умный вопрос - с разработкой на JS ранее не сталкивался). В случае DWR всё понятно - вызываем функцию (на подобие RPC) она отрабатывает и возвращает результат, DWR занимается маршаллизацией этого действа.
|
|||
|
||||
dEEp |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 9.5.2007 Репутация: нет Всего: нет |
а я бы не рекомендовал Hibernate. лучше юзать обычные JDBC запросы. Потому как при использовании Hibernate ваша соц.сеть упадёт при большом кол-ве online пользователей. Hibernate чаще всего применяют для админских целей (страниц).
|
|||
|
||||
AntonSaburov |
|
|||
![]() Штурман ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 5658 Регистрация: 2.7.2002 Где: Санкт-Петербург Репутация: 8 Всего: 118 |
Не надо путать DWR и тот же ExtJS - это разные вещи.
DWR служит для удобного интерфейса JavaScript обхектов на Java - т.е. на серверную часть. А ExtJS - это чистый JavaScript. Так что они прекрасно совмещаются. У нас в проекте как раз такая связка работает. Да еще и JSF подмешана. На серверной стороне Spring, Hibernate. И вполне пристойно все получается. |
|||
|
||||
seth |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
не думаю что она куда то упадет именно из-за хибернейта, не вижу причин... ![]() а насчет самому писать запросы - так это много времени уйдет ;) а так посоветовал бы Flex как бэкэнд (ну или что то более экзотическое из РИА) а еще посоветовал бы юзать платформу facebook если хочется соц сеть ;) идея как для обучения в принципе сойдет но имхо можно придумать что то более интересное ![]() Это сообщение отредактировал(а) seth - 22.9.2008, 15:18 |
|||
|
||||
dEEp |
|
|||
Шустрый ![]() Профиль Группа: Участник Сообщений: 58 Регистрация: 9.5.2007 Репутация: нет Всего: нет |
[QUOTE=seth,22.9.2008, 15:16]
Писать самому долго??? О_о Не сказал бы. Всё зависит от вашего уровня знаний. Лан, это уже offtopic идёт... Это сообщение отредактировал(а) dEEp - 22.9.2008, 15:22 |
|||
|
||||
powerOn |
|
|||
![]() software saboteur ![]() ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 4367 Регистрация: 7.10.2005 Репутация: 28 Всего: 159 |
Были прецеденты? Каковы причины? Интересно очень, ибо сами в проекте расчитанном на большое количество пользователей используем JPA на базе Hibernate. Было бы круто узнать про грабли чтоб потом не напороться. ![]() |
|||
|
||||
seth |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 316 Регистрация: 4.6.2006 Репутация: 1 Всего: 1 |
[QUOTE=dEEp,22.9.2008, 15:22]
тут дело не в уровне знаний а в технологии - SQL хороший язык только не для всего ;) а для работы с объектами (да еще и имеющих сложные иерархии наследования) и связями между ними уж больно долго будут писатся все необходимые запросы из-за их большого колличества и сложности... когда на хибернейте вобщемто генерация кода и мэппингов решит много проблем ;) |
||||
|
|||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 3 Всего: 44 |
используя Hibernate у вас нет возможности проконтролировать и изменить сценарий выполнения запроса. это ограничение как раз таки приводит к падению производительности на БД сервере. возможность влиять на план выполнения запроса является фундаментальной стартегией тюнинга запросов в оракле. ссылка для автора топика, читать "Подход с использованием принципа черного ящика": http://www.citforum.ru/database/oracle/kyte/ CaligoSpiritus, поскольку ты выбрал именно оракл, то либо ты следуешь советам Т. Кайта, либо просто моменяй СУБД. а сэкономленное время приумножим и потратим на переделку системы в самое неподходящее время, т.е. в момент когда ею действительно начнут интересоваться. |
|||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
для оракла существует аналог хибернейт , звётся он TOPLink.
|
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 3 Всего: 44 |
||||
|
||||
v2v |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1620 Регистрация: 20.9.2006 Где: Киев Репутация: 9 Всего: 56 |
да, но DimW, в хибернейт тоже есть возможность менять запрос ![]() |
|||
|
||||
DimW |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1330 Регистрация: 24.2.2005 Где: Орёл Репутация: 3 Всего: 44 |
||||
|
||||
Vasay |
|
|||
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2097 Регистрация: 8.3.2006 Репутация: 18 Всего: 73 |
А социальная сеть будет открытая, или закрытая (только для зарегистрированных пользователей)?
Есть необходимость индексации проекта поисковиками? Если есть - читаем про СЕО и ограничиваем применение ajax только там, где это не вредит СЕО. А JSF вообще лучше обходить стороной, мало того что с СЕО несовместимо, так пользователи материться будут - ни ссылку другу не пошлешь, ни в избранное сохранишь.... -------------------- Придумать идеальную защиту от дурака невозможно, дураки, наудивление, изобретательны. |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Java" | |
|
Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, tux. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Java EE (J2EE) и Spring | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |