GD Star Rating
loading...

привет, чуваки.

вопрос за инструментарий.
тут у меня возник проект с SOAP, REST/JS, ORM и немножко вэба с логами, аудитом и правами доступа и так как мне это для души, то я сам же выбираю что, как и зачем.

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

пока я остановился на Spring для среды и его AOP логгинга, аудита и доступа, Hibernate, Apache CXF для сервисов.

Но я честно, как впервые из лесу в магазин игрушек – а вдруг это всё не правильно?
Ну и наверное ещё maven. Меня он пугает и я пару раз просто не дождался когда он закончит своё волшебство. Таки взять себя в руки и встретить его лицом к лицу или ну его?

И это. Не холивору для а правда интересно.

Админы и сочувствующие посетители hardblog.net посчитали злободневным: про тачки и их ремонт

Tagged with →  

25 Responses to проект с SOAP, REST/JS, ORM

  1. Ocser:

    я не разработчик 🙁 но apache tuscany, apache openJPA

  2. Ovenode:

    ява для души лол, возми рельсы или джангу, или что нибудь на эрланге если совсем для души.

  3. Peeef:

    Maven надо. Если в Яве и есть частичка прекрасного, то это вот она. Ставь его плагином в Эклипс, тогда лицом к лицу встречать даже не придется, он сам все сделает. AOP по-моему нахрен. Spring OK. Hibernate OK.
    Подозрительно только что я с явой уже лет 10 как особо не связан, а слова эти знаю. Наверняка за 10 лет что-нибудь более интересное или удобное появилось. Ну там, Play какой-нибудь штоле…

  4. Peeef:

    : ХОЛИВОООР!!!

    Только Scheme, только хардкор!

  5. Aklre:

    : я специально написал, что jvm, что к счастью не обозначает жэйву. ну и мне тут чувакам показывать будет нужно, поэтому эрланг будет когда будет совсем для души и не будет интересовать результат.

  6. Aklre:

    : блин. там же уже под шесть сотен артефактов в стандартной установке. буду смотреть, спасибо.

  7. Ovenode:

    : ну возми тогда хотябы скалу, хотя под жвм можно и жрельсы через жруби запустить и джангу через жопитон.

  8. Aklre:

    : а кто? и почему ЖПА а не хибернейт, например?

  9. Aklre:

    : я не про язык сейчас. я про, скажем так, технологии.
    то есть вот фронтенд будет простой MVC на spring’e, может я совсем ничего не понимаю и только Lift (это я с потолка придумал). и на самом деле фронтенд довольно маленькая часть.

    и у скалы настолько глючный плагин к эклипсе, что я однажды даже устал. или мне не повезло.

  10. Ocser:

    : хибернейт ширше, зато openJPA – имплементация стандарта JPA, которая под Java EE может быть изменена на любую другую

  11. Lagapp:

    А ты вообще уверен что тебе нужен прям ORM?

  12. Lagapp:

    : Есть ещё более современные альтернативы типа ivy и gradle. Это всё конечно дело привычки и вкусовщина, но для более-менее стандартных проектов мне кажется они полаконичнее. Оба используют мавеновские репозитории, есличо.

  13. Lagapp:

    Алсо вот сюда ещё посмотри. Очень хвалят.

  14. Aklre:

    : могу придумать кучу аргументов.

    во-первых, я ими полноценно не пользовался. этого уже, в принципе, достаточно 😉
    во-вторых, в любом проекте с бд так или иначе есть момент маппинга из записей в объекты. и я понимаю, что сделать запрос и потом вручную перенести из строки в поля – это самый быстрый способ, но я не сильно фанатею от сиквеля(особенно в коде) и неоднократно видел, что даже в прокетах с требованием к производительности люди придумывают автоматизацию для маппинга ибо задрачивает однотипный код строчить. кстати, не слышал о проектах, генерящих монотонные DAO классы по тем же JPA аттрибутам которые потом исходниками добавляешь в проект.
    в третьих, для этого проекта условие не привязываться к одному провайдеру бд, то есть если и сиквель, то ванильный.
    и в четвёртых, опять же проектноспецифическое, я ожидаю, что чтений будет минимум на порядок-два больше, чем записей, так что уже готовое кеширование будет мне только на руку. хотя сдаётся мне это ситуация 95% проектов.

  15. Aklre:

    : прикольно, очень похоже на asp.mvc хотя понятное дело, что ноги у микрософта ростут из чужих задниц.

  16. HytZero:

    все правильно выбрал, только я бы посоветовал использовать для веб-сервисов JAX-WS. там есть еще JAX-RS для RESTful веб-сервисов. периодически приходится делать SOAP-морды для интеграции, делаю на JAX-WS.

    под это все есть отличные плагины под maven, которые тебе соберут и задеплоят готовую сборку куда укажешь. плюс есть тулза в поставке JDK: wsgen и wsimport, что значительно облегчает работу с созданием веб-сервисов и клиентов к ним. могу ошибаться, но по-моему ходят слухи о включении JAX-WS в стандартную поставку JDK.

  17. Aklre:

    : что-то у меня пока путаница в голове. JAX-WS это более высокий уровень, для исполнения которого нужен стек в виде metro или того же CXF?

    (посмотрел конфиги, похоже как раз jax-ws на cxf у меня и есть. как всё многоуровнево…)

  18. HytZero:

    : с CXF не сталкивался.
    если мы говорим про исполнение в ключе hibernate – это имплементация JPA, то JAX-WS имплементируется сервлетами и может работать на обычном сервлет-контейнере(jetty, tomcat). т.е. не нужно тянуть кучу зависемостей и metro это.

    может быть, я что-то не так понял, сильно не углублялся.

  19. Aklre:

    : ну вот я как раз тоже. но могу сказать, что в эклипсе выбрал фасет про веб сервисы и та мне уже подтянула каких-то 20-30 зависимостей. а так, да, именно в голом томкате. потому что у меня ноутбук слабенький и я боюсь вторую эклипсу запускать – порвётся.

  20. HytZero:

    : настоятельно рекомендую изучить получше maven. очень удобная вещь и 20-30 зависимостей буду управляемыми. вообще, организация проектов по maven поначалу кажется какой-то ерундой (особенно плагины, фазы, сборки дистрибуций и т.д.), но если поднатореть, то получается мега-удобно! опять же, автосборка. конечно сборщики сейчас многое умеют, но все равно, при наличии правильного pom’a все значительно упрощается. репозиторий артефактов, например. в CVS хранить зависимости не надо. если интересно, то можешь посмотреть модуль моего проекта, там как раз есть hibernate, jax-ws и все собирается maven.

  21. Aklre:

    : да, похоже нужно.
    просто когда я в прошлый раз попытался его использовать, то как-то было мучительно – он всё время что-то тянул из интернета. то есть не просто когда я добавлял зависимость а при каждой компиляции. что-то я делал совсем не правильно 😉

  22. Aklre:

    : а на счёт AOP – не могу сказать. не наступал, но пока идея иметь транзакции, логгинг, аудит и права доступа не внутри каждого метода а один раз и декларативно в другом месте меня очень привлекает.

  23. Lagapp:

    : Из рельсовых задниц, я бы сказал 🙂

  24. HytZero:

    : он из интернета тянет, если нет в локальном репозитории. если есть, то он тянет из него)

  25. Aklre:

    : эт-то понятно. буду смотреть, да.

Добавить комментарий