Записки на полях
О программировании и программистах, о теории и практике управления, о взаимоотношениях в рабочей среде ИТ индустрии... и о прочей рабочей и околорабочей всячине
субота, 11 серпня 2012 р.
End of the road
неділя, 1 квітня 2012 р.
JPA 2.0: Entities design
При проектировании модели данных с использованием JPA, особенных правил, которые были бы определены стандартом, фактически нет. Очевидно, что класс должен
- Быть сериализуемым
- Cодержать реализацию
equals
иhashCode
- Некоторые рекомендуют перегружать
toString
- Иметь публичные getters & setters для своих полей
Но это фактически требования к стандартным JavaBean's
, чем конкретно к JPA entity beans. А между тем, именно JPA entity имеют свои особенности, о которых было очень полезно знать непостредственно при проектировании. И снова источником вдохновения стала статья Stijn Geukens на StackOwerflow
JPA 2.0: Persist vs Merge
javax.persistence.PersistenceException
, связанный с тем, что мы пытаемся вставить в базу данных объект, находящийся в состоянии DETACHED. Мой метод saveOrUpdate
выглядел традицоинным образомpublic T saveOrUpdate(final T entity) { if (entity.getId() == null) { entityManager.persist(entity); entityManger.refresh(entity); } else { entityManger.merge(entity); } return entity; }
persist
и merge
, я нашел в статье Zbyněk Šlajchrt. А я хотел бы поделится выводы, которые из этой статьи сделал:середа, 15 червня 2011 р.
CAJD::Technologies
В проекте, где я работаю, используются устаревшие технологии. Как мне в такой среде поддерживать свои знания в актуальном состоянии, профессионально расти и увеличивать собственную рыночную стоимость?
Простой ответ - изучать "новые технологии" самостоятельно. И это, вобщем-то очень хороший совет, но по-моему это только часть ответа на вопрос. Снова поднимемся над ситуацией и попробуем найти корень проблемы.
четвер, 9 червня 2011 р.
CAJD::Interesting tasks
Скучный проект не позволяет применять и развивать навыки программирования. А хочется роста, как быть?
вівторок, 24 травня 2011 р.
JEEconf resume
субота, 23 квітня 2011 р.
UA Web Challenge 2011
субота, 16 квітня 2011 р.
JavaOne Moscow 2011
- С пришествием Oracle и отсечением откровенно "наколенных" поделок язык стал более агрессивным, разработка пошла не в количество фич или новых плюшек, а в качество, производительность и упорядочивание уже созданного. Что есть безусловно хорошим развитием. Потому что создано уже очень много всего, а вот стандартизировать и затюнить - это не к Sun
- У меня осталось стойкое ощущение, что Java уходит с front end уже окончательно. Конечно еще трепыхается JavaFX, еще пытаются его прооптимизровать, переписать заново, интегрировать на разных уровнях от JavaPlugin до JavaWebToolkit (GoogleWebToolkit в профиль). Но это скорее похоже на сохранение лица, чем на качественный рывок. Вместо этого мощное и стремительное развитие RESTfull, Servlets, EJB/EJB-light, JMS говорят о том, что основной упор делается и будет делаться на middle tier. Что логично и правильно ИМХО. Последний jersey невероятно прекрасен.
- Основные тенденции, основные направления деятельности Oracle достаточно ясны - Project Coins или допилить кривые конструкции языка; Java Memory Model уже сделана и верифицированна правильно, как следствие - работа в multithreading стала более однообразной и предсказуемой на всех платформах; MiddleTier и Enterprice; JVM как платформа динамических языков; тюнинг быстродействия - в первую очередь Garbage Collector и использование сверхбыстрой памяти.
вівторок, 5 квітня 2011 р.
Expert vs. Multipurpose
вівторок, 29 березня 2011 р.
jeeconf announcement
В конце весны 21 мая XP Injection приглашает вас в Киев на специализированную конференцию, посвященную разработке на Java. JEEConf -- это крупная конференция, целью которой является собрать вместе всех, кто использует Java технологии для разработки.