| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Помогите орпеделиться с выбором технологии |
| Автор: zhz 27.6.2011, 15:24 |
| Всем привет! Необходима помощь, нужно срочно начинать писать код, а чтобы начать, нужно знать , что для это нужно(помимо головы и рук)))) Перед тем, как задать вопрос начал читать java ee basic concepts. Думаю проще излагать вещи тем языком что написаны там. Есть back-end tier(сервер MSSQL, Oracle,) с данными которыми надо манипулировать. Требования к Business tier: это должно крутится на FreeBSD, это должно быть бесплатно, это должно быть на джаве, чтобы и духу майкрософтовского не было(я верю что будущее за свободным ПО)))))). С разбегу получилось поставить на фряху JDK Diablo, Tomcat 7, ну и maven в догонку. Glassfishv3 как то не получилось, но и особо не старался. После этого вычитал что томкат это веб контейнер, т.е. используя его можно будет реализовать только web-tier (т.е. клиентскую веб морду) и то, без извращений, только JSP(c первого взгляда JSF показался проще, если его можно назвать аналогом). А вот написать Guiшный client-tier ужо не получится. Мораль сей басни - надо чтобы логика крутилась на сервере, клиенты были(уже плевать - не принципиально) или gui(swing) или web-морда, что проще!!!?? Если веб-морда, то чтобы интефейс писать методом перетаскивания готовых компонентов(кнопочек, едитов, и т.п.) а не вставлять уродливые конструкции вида println("хтмл тег такой-то"), вообщем чтобы написание кода(читай обучение java ee) проходило с комфортом. Использовать думаю NetBeans. Посоветуйте необходимое ПО, framework'и какие нибудь, вообщем инструментарий зы. пояснение к тому что будут делать клиенты, тыкать кнопочки, получать результат в табличном виде, распечатывать его, вносить данные, должны выполнятся хранимые процедуры на mssql, часть служебной информации можно(и думаю нужно) разместить на все том же BSD в mysql. и еще, нужно что то , что может графы рисовать, что то вроде graphviz, только для java. Прощу прощения за сумбурность, если в чем не прав, - поправьте, дополните. |
| Автор: Vasay 27.6.2011, 17:06 | ||||
zhz,
Боюсь, сначала нужно будет хорошо поучиться годик другой, а потом писать код.
Забудьте. Это зло. В Java куча путей, по которым можно пойти, пытаясь решить вашу задачу. Java SE знаете? |
| Автор: Entwickler 28.6.2011, 00:14 |
| интерессный пост... много думалЬ ;-) zhz ты в начале пути судя по изложению... единственно верно, как и сказал уже Vasay нужно поучится пару лет, а уж потом, писать код! а где это пишится UI с помошью "конструкции вида println("хтмл тег такой-то")"?!! |
| Автор: powerOn 28.6.2011, 08:57 |
| Как вариант: server: Tomcat view: JSF infrastructure: Spring persistence: Hibernate как альтернатива: server: Tomcat view: FreeMarker infrastructure: Jersey + Spring persistence: MongoDB и еще: server: Glassfish view: JSF infrastructure: EJB persistence: Hibernate |
| Автор: Старовъръ 28.6.2011, 10:10 |
Начинай с маленьких проектиков, потом перейдешь к своему крупному (или делай свой крупный из маленьких). Если сразу начнешь с крупного, завалишь (тем паче с твоим запалом и нежеланием слушать старших, он на пользу не пойдет). Этот список нужно пройти всем молодым (и не очень) джедаям:
|
| Автор: zhz 4.7.2011, 07:53 |
| А насколько необходимо использование persistence? Мне будет необходимо вызывать хранимые процедуры MSSQL сервера, напрямую с таблицами работать практически не нужно, там где нужно, тоже думаю обойтись запросами. Как я понял, основное назначение перистентности, - это работа с таблицами как с объектами. Или персистентность действительно нужна? |
| Автор: Vasay 4.7.2011, 11:50 | ||
Зависит от задачи. Если у Вас многое завязано с MS SQL, то, наверно, имеет смысл написать свои DAO, в которых работать c базой посредством SQL. Ну а методы DAO уже будут возвращать/принимать сущности в виде POJO. |
| Автор: powerOn 4.7.2011, 14:42 |
под persistence имеется ввиду та часть твоей программы, которая занимается сохранением данных в постоянное хранилище (файл, SQL БД, NoSQL БД, и .т.п.) без привязки к конкретной технологии. |
| Автор: Embedded 4.7.2011, 21:15 |
| zhz, Вот не знаю даже правильно ли это, но я наваял сайт по урокам Стампеде из сериала: http://forum.vingrad.ru/forum/topic-124877.html В принципе я не жалею, нашел много полезного для себя и сейчас продолжаю углубляться, хотя до сериала толком не изучил Java SE. Старшие товарищи, а подскажите JSF это реально конкурент JSP? Я вроде что-то слышал, что JSF можно использовать хоть c Velocity. Сейчас просто заполняю пробелы по SE и еще там не был... |
| Автор: zhz 5.7.2011, 00:54 |
| Embedded, Спасибо. powerOn, только лишь сохранением? Как я понял такие технологии как hibernate созданы для того чтобы, как уже сказали, быть независимым от конкретной субд, и работать с данными как с объектами Why was Hibernate created? Almost all contemporary, large applications are written in an object way. It is also true for J2EE applications, written in a typically object language: Java. As opposed to that, data are relational by nature and databases store them in a relational way. Both: object orientation for applications and relation of databases are totally natural. It is much faster to write object systems, they are also easier to design and divide tasks. Moreover, their implementation is usually very suitable for any kinds of alternations. Similarly, relational databases seem to be irreplaceable, mainly because they are very effective and introducing another model of storing databases soon is very unlikely. Nevertheless, almost every application must store data somehow, therefore we have to combine in one system both: object orientation of its structure and relational model of storing data. http://www.hibernatetutorial.com/Hibernate-tutorial-introduction.html При этом, считаю, что при работе с хранимыми процедурами, использование данных вещей не совсем подходит, согласны? |
| Автор: powerOn 5.7.2011, 13:41 | ||
Угу. Это типичное разделение в трехзвенной архитектуре.
Да, не совсем подходит. |
| Автор: emmanuil 5.7.2011, 20:15 | ||
Даже не знаю, можно ли их так сравнивать... Ранее в jsf для разметки использовался jsp, jsf был основан на нем. Но после доработки jsf для разметки стали использовать facelets, хотя при желании можно и поюзать jsp, но рекомендуют первое. JSF это стандарт JEE - view. Компонентно-ориентированный. JSF шире, есть свои менеджед бины, но лучше юзать CDI бины, например, если с сервлет контейнером. А если с апп. сервером, то все мощь EE. |
| Автор: Embedded 6.7.2011, 14:51 |
| emmanuil, Спасибо братец за развернутый ответ. Я тебе поставлю + тока надо добраться до сотни) Но я зпомню |
| Автор: AlexSerov 9.7.2011, 01:35 | ||
Строго говоря конкурентом JSP может быть только нечто что разививает принципы на которых сами JSP построены. Иначе это альтернативы, а не конкуренты. Посмотрите HybridJava. Возможно (но не обязательно) Вас после этого перестанет интересовать JSP, JSF, а уж Velocity и подавно. |
| Автор: Embedded 9.7.2011, 10:00 |
| AlexSerov, А Вы случаем не из команды разработчиков HybridJava? |