Этой весной Sun вложил 1.000.000$ в развитие open-sourсe. Наша команда так же выставила на суд жюри свой проект.
202.21
Рейтинг
Java *
Объектно-ориентированный язык программирования
Сначала показывать
Порог рейтинга
Уровень сложности
Как Sun спонсирует open source, часть первая
3 мин
945Этой весной Sun вложилась в open source. Было выделено 1.000.000 долларов США на стимуляцию оупенсорсной активности. Несмотря на относительную (легкая ирония) свежесть новости, я, как непосредственный участник событий, освещу несправедливо обделенную вниманием тему.
+31
тиражируемые решения
3 мин
2KТ.З. примерно следующее — необходимо иметь некоторый «быстрый старт» для приложений с стандартным функционалом. Дополнительным (и самым «заковыристым») условием является то, что этот стандартный функционал необходимо иметь возможность изменять самым невероятным образом, вплоть до полного отключения и замены своим (специфичным для данного приложения) кодом.
Приведу жизненный пример: есть необходимость делать ОЧЕНЬ похожие приложения. Например интернет-магазины, которые построены на примерно одинаковых схемах данных, бизнес-процессах и тп. Т.е. функционал любого из магазинов примерно идентичен, различается только view слой.
Однако в одном из магазинов цена формируется не из таблицы Prices, а получается по более сложной схеме из хранимой процедуры.
Собственно задача такая — как уменьшить «повторяемость кода» (т.е. отойти от monkey-patching-а) и при этом не потерять полный контроль над кодом.
Приведу жизненный пример: есть необходимость делать ОЧЕНЬ похожие приложения. Например интернет-магазины, которые построены на примерно одинаковых схемах данных, бизнес-процессах и тп. Т.е. функционал любого из магазинов примерно идентичен, различается только view слой.
Однако в одном из магазинов цена формируется не из таблицы Prices, а получается по более сложной схеме из хранимой процедуры.
Собственно задача такая — как уменьшить «повторяемость кода» (т.е. отойти от monkey-patching-а) и при этом не потерять полный контроль над кодом.
+16
Класс Money
7 мин
19KМножество приложений оперирует деньгами, но в большинстве языков программирования, в том числе и в Java, нет стандартного класса Money. Многие просто хранят денежные величины в переменный с плавающей точкой, но это плохое решение, так как всегда возникают проблемы с округлением, которые приходится каждый раз решать по-разному. Кроме того, деньги могут измеряться в разных величинах (рублях, долларах, евро и других). Нельзя складывать или сравнивать евро с рублями — это неминуемо вызовет ошибку в результате.
+14
Истории
Java — это просто! Java и SNMP
3 мин
21KПосмотрел я на не слишком объемный блог JAVA и решил, что нужно поднимать его рейтинг. К тому же многие хабрики жалуются, что «хабр уже не тот». Возникла идея написать серию статей, продвигающих идею, что JAVA — это легко! Работаю я в среде интеграторов (берем готовые «жирные» системы, связываем в единый комплекс и продаем), и частенько возникает ситуация, когда что-то невозможно решить средствами интегрируемых систем. Тогда коллеги напрявляют прожектор в ночное небо и я иду им на помощь :). Поэтому частенько приходится использовать java в разных аспектах. Начнем с работы с SNMP. Протокол SNMP используется для управления сетью.
+7
Caucho Resin — сервер приложений Java/PHP
6 мин
6.5KДля приложений Java, я имею ввиду, веб-приложений, существует уже достаточное количество серверов, которые уже давно разрабатываются и давно вышли на уровень, достаточный для того, чтобы применять их в самых сложных и ответственных случаях. Думаю, всем знают Apache Tomcat и Jetty — самые известные сервера из списка открытых разработок. Но к этому списку нужно добавить теперь еще и Caucho Resin. В ряде тестов его Pro версия превосходит в производительности Tomcat 6, обладая при этом рядом возможностей «из коробки», которых нет в других серверах или они реализуются при помощи сторонних средств.
И так, Resin — высокопроизводительный HTTP и сервер приложений для Java/PHP приложений, с возможностью масштабироваться и кластеризироваться в начальной конфигурации. Кстати, именно в этом состоит различие между обычной, open-source версией и Pro. В этой версии есть функции автоматического детектирования остановившихся или зависших сессий и рестарта сервера, а также средства мониторинга состояния JVM и потребления памяти. Кластеризация позволяет распределить нагрузку на несколько серверов, при этом сессии будут привязаны к конкретному серверу и мигрируют в фоновом режиме при крахе обслуживающей его ноды. Об этом стоит как то поговорить отдельно, возможно, в отдельной статье — я собираюсь плотно занятся изучением этого сервера и его возможностей, а результат буду публиковать в виде статей.
И так, Resin — высокопроизводительный HTTP и сервер приложений для Java/PHP приложений, с возможностью масштабироваться и кластеризироваться в начальной конфигурации. Кстати, именно в этом состоит различие между обычной, open-source версией и Pro. В этой версии есть функции автоматического детектирования остановившихся или зависших сессий и рестарта сервера, а также средства мониторинга состояния JVM и потребления памяти. Кластеризация позволяет распределить нагрузку на несколько серверов, при этом сессии будут привязаны к конкретному серверу и мигрируют в фоновом режиме при крахе обслуживающей его ноды. Об этом стоит как то поговорить отдельно, возможно, в отдельной статье — я собираюсь плотно занятся изучением этого сервера и его возможностей, а результат буду публиковать в виде статей.
+5
JavaFX -> дипломная работа забугорного студента. Сравнение JavaFX и конкурентов
1 мин
5KRich Internet Applications (RIA): A Convergence of User Interface Paradigms of Web and Desktop — Exemplified by JavaFX
Занятная работа, автор сравнивает AJAX, SilverLight, JavaFX, Flash, вполне адекватно оценивая минусы и плюсы технологий. Основной упор работы делается на JavaFX. Я буду писать диссер, моим основным инструментом как раз будет новая плюшка Сана.
Если вы не знакомы с JavaFX, эта работа введет вас в курс дела (4ая и 5ая главы), если вы уже познакомились — неплохая пища для ума. С весны, когда был первый анонс JavaFX, я слежу за развитием проекта, с первого превью релиза для разработчиков, я стал плотно изучать JavaFX.
Вещь, конечно, толковая. Кодить анимацию (моя первостепенная задача) — сплошное удовольствие. Триггеры и бинды в сто раз удобнее, чем листенеры и евенты, живущие в конексте Джавы. Кода в разы меньше, хотя он не такой читаемый (мое мнение), как Джава-код. Отсутствие Джавадока расстраивает. Бесспорно, JavaFX, основанный на Java2D и Swing'e, ничего нового не несет, т.к. триггеры и бинды — это интерпретация евентов и листенеров. основная задача — выделить в отдельный поток работу с гуями и графикой. По правде говоря, у Джавы богатые возможности в этих областях, но кода приходится писать столько, что пальцы начинают ныть еще до создания проекта.
Больше всего меня смущает очередная попытка Сана пропихнуть свои апплеты. Если деcктопные приложения на Джаве работают очень-очень неплохо, я бы не сказал, что они в чем-то уступают .NET'овским приложениям в скорости работы, то апплеты это тихий ужас. Видел я как-то мега-гига апплет к IBM WCM, у меня на глаза навернулись слезы.
Если есть какие-то комменты-вопросы, давайте их обсудим.
Рекомендую не оставить без внимания работу Флориана (см ссылку выше) и ознакомиться с ней.
Занятная работа, автор сравнивает AJAX, SilverLight, JavaFX, Flash, вполне адекватно оценивая минусы и плюсы технологий. Основной упор работы делается на JavaFX. Я буду писать диссер, моим основным инструментом как раз будет новая плюшка Сана.
Если вы не знакомы с JavaFX, эта работа введет вас в курс дела (4ая и 5ая главы), если вы уже познакомились — неплохая пища для ума. С весны, когда был первый анонс JavaFX, я слежу за развитием проекта, с первого превью релиза для разработчиков, я стал плотно изучать JavaFX.
Вещь, конечно, толковая. Кодить анимацию (моя первостепенная задача) — сплошное удовольствие. Триггеры и бинды в сто раз удобнее, чем листенеры и евенты, живущие в конексте Джавы. Кода в разы меньше, хотя он не такой читаемый (мое мнение), как Джава-код. Отсутствие Джавадока расстраивает. Бесспорно, JavaFX, основанный на Java2D и Swing'e, ничего нового не несет, т.к. триггеры и бинды — это интерпретация евентов и листенеров. основная задача — выделить в отдельный поток работу с гуями и графикой. По правде говоря, у Джавы богатые возможности в этих областях, но кода приходится писать столько, что пальцы начинают ныть еще до создания проекта.
Больше всего меня смущает очередная попытка Сана пропихнуть свои апплеты. Если деcктопные приложения на Джаве работают очень-очень неплохо, я бы не сказал, что они в чем-то уступают .NET'овским приложениям в скорости работы, то апплеты это тихий ужас. Видел я как-то мега-гига апплет к IBM WCM, у меня на глаза навернулись слезы.
Если есть какие-то комменты-вопросы, давайте их обсудим.
Рекомендую не оставить без внимания работу Флориана (см ссылку выше) и ознакомиться с ней.
+7
Склонение существительных с числительными
3 мин
35KВ английском языке все просто: 1 year, 2 years ,… N years
«Русская языка» такая сложная, что в ней существительные после числительных иногда бывают в причудливых формах. Например, 0 лет, 1 год, 2 года, 3 года, 4 года, 5 лет, ..., 11 лет, 12 лет, .., 21 год.
«Русская языка» такая сложная, что в ней существительные после числительных иногда бывают в причудливых формах. Например, 0 лет, 1 год, 2 года, 3 года, 4 года, 5 лет, ..., 11 лет, 12 лет, .., 21 год.
+8
JSF + DynamicFaces = AJAX
3 мин
5.7KКратко о JSF
JSF — компонентный MVC фреймворк для веб-приложений на java. Основная его задача — упростить разработку интерфейса и связывание его с серверной частью. JSF содержит валидаторы и конвертеры, также вы можете добавить свои компоненты и изменять существующие.
О JSF подробнее здесь (на русском) и здесь (на английском).
Так что же такое Dynamic Faces? Это библиотека для добавления динамики в jsf-приложения. Самое большое преимущество этой библиотеки в том, что DF не требует модифицировать компоненты или переписывать что-то в приложении, чтобы добавить Ajax.
+4
Copy/paste функциональность между Swing's JTables и Excel
9 мин
3.6KПеревод
От переводчика: данный перевод просто проба пера. Буду очень благодарен за все замечания. Надеюсь на вашу помощь в приведении этой статьи к литературному виду. Вот только небольшой список того, чтобы я хотел исправить в данной статье:
Многие бизнес приложения разрабатываются с использованием Java. Большинство из них отображают данные в виде таблиц используя Swing JTable. Было бы очень удобно иметь возможность копировать и вставлять данные из данного приложения в Microsoft Excel и обратно. Таким образом пользователи смогли бы воспользоваться всей мощью этой вездесущей программы.
Данный Java совет поможет понять принцип формируемой Excel строки, помещаемой в системный буфера обмена, позволит добиться copy/paste функциональности при взаимодействии JTable и Excel. Как вы увидите далее, этот совет законченный и позволяет добиться желаемого результата буквально дописав одну строчку кода.
- сделать статью более «русской», а не просто набором переведённых слов.
Многие бизнес приложения разрабатываются с использованием Java. Большинство из них отображают данные в виде таблиц используя Swing JTable. Было бы очень удобно иметь возможность копировать и вставлять данные из данного приложения в Microsoft Excel и обратно. Таким образом пользователи смогли бы воспользоваться всей мощью этой вездесущей программы.
Данный Java совет поможет понять принцип формируемой Excel строки, помещаемой в системный буфера обмена, позволит добиться copy/paste функциональности при взаимодействии JTable и Excel. Как вы увидите далее, этот совет законченный и позволяет добиться желаемого результата буквально дописав одну строчку кода.
+3
Java World
5 мин
4.6KНедавно на Хабре был топик про спонсирование Apache компанией Microsoft. Но то ли автор не доконца разобрался в теме, то ли новостной ресурс, ссылка на который была представленна: в общем, сложилось впечатление, что MS спонсирует разработку Web-сервера Apache. На самом же деле Microsoft спонсировал Apache Software Foundation, которая состоит из многих проектов, и как стало известно из блога Microsoft, спонсируют и используют они не только, и не сколько Web-сервер:
«It is a strong endorsement of The Apache Way, and opens a new chapter in our relationship with the ASF. We have worked with Apache POI, Apache Axis2, Jakarta, and other projects in the last year, and we will continue our technical support and interoperability testing work for this open source software.»
К сожалению, на Хабре не так много постов о Java, поэтому в этом я постораюсь рассказать о многих важных и интересных уголках Java мира, а заодно расскажу что же это за загадачные Apache POI & Axis2.
+24
Основы Hibernate
17 мин
434KХочу начать со слов благодарности тому человеку, который мне вчера накинул кармы, позволив этим писать мне в персональный блог.
Долго думал, о чем же написать свой «первый» топик… Слово первый не зря взял в кавычки, так как первый топик на самом деле уже был, опыт был к сожалению неудачный — дело закончилось баном. Решил больше не копипастить. Уверенности тому, что надо написать что-то свое, придал вот этот топик. Решил твердо — пусть это будет и редко, но буду писать сам.
Ну, едем дальше!
Совсем недавно, по роду свой деятельности, мне пришлось столкнуться с таким понятием как ORM — (англ. Object-relational mapping). В двух словах ORM — это отображение объектов какого-либо объектно-ориентированного языка в структуры реляционных баз данных. Именно объектов, таких, какие они есть, со всеми полями, значениями, отношениями м/у друг другом.
+54
Множественные критические уязвимости в Sun Java JDK / JRE
2 мин
2KПеревод
Несколько критических уязвимостей были зарегистрированы в Sun Java, которые могут быть использованы в злоумышленных целях, для обхода определенных ограничений безопасности, раскрытия информации о системе или потенциально секретной информации, вызвать DoS (отказ в обслуживании) или компрометировать уязвимую систему.
+22
Ближайшие события
Больше событий в календаре
Маркетинг
Другое
Больше событий в календаре
Разработка
Другое
Больше событий в календаре
Разработка
8 октября – 4 декабря
Онлайн
Больше событий в календаре
Разработка
Другое
Больше событий в календаре
Менеджмент
Другое
Больше событий в календаре
Разработка
Администрирование
Менеджмент
Больше событий в календаре
Разработка
Больше событий в календаре
Менеджмент
Маркетинг
Больше событий в календаре
Разработка
Менеджмент
Больше событий в календаре
Разработка
Java разработчикам стоит учить Ruby
3 мин
11KПеревод
Хорошо, это может быть не Ruby. Выберите какой-нибудь другой язык. Выберите Erlang или даже Javascript.
Не важно — главное, чтобы он отличался от Java, и его изучение потребовало бы некоторых усилий.
Это поможет вам быть готовым к усвоению нового.
Зачем? Потому что изучение других языков сделает вас лучше, как Java разработчика. Серьезно.
Не важно — главное, чтобы он отличался от Java, и его изучение потребовало бы некоторых усилий.
Это поможет вам быть готовым к усвоению нового.
Зачем? Потому что изучение других языков сделает вас лучше, как Java разработчика. Серьезно.
+27
Создаем портлетное приложение по JSR286, часть первая
9 мин
2.6KЦель
Приобщиться к портальным технологиям, исследовать возможности, которые дает спецификация JSR286План работ
1. Создать проект2. Создать настройки портлета, вывести их на страницу портала
3. Сохранить настройки, проверять настройки валидатором
4. Создать режим просмотра, зависящий от настроек портлета
5. Генерировать и обрабатывать события в рамках одного портлетного приложения.
Я уже писал раньше о том, как активно развивается спецификация JSR286, как Sun один за одним клепает версии порталов, пичкая их разными вкусностями. После выхода в свободное плавание GlassFish, являющегося прямым родственником Sun Java system Server, стоит ожидать, что свободному сообществу отдадут ветку портала, который, как я писал раньше, сейчас мало чем уступает порталу от IBM. Надо внимательно присмотреться к портлетам и тем бонусам, которые появляются при их использовании. О ложках дёгтя тоже збаыать не будем.
+6
JBoss представил очередные версии JBoss Tools и JBoss Developer Studio
2 мин
4.1KПо просьбе MichaelSorokin.
Компания JBoss, подразделение Red Hat, сообщила о выпуске двух продуктов, ориентированных на разработку J2EE приложений: коммерческую JBoss Developer Studio и open source JBoss Tools.
Компания JBoss, подразделение Red Hat, сообщила о выпуске двух продуктов, ориентированных на разработку J2EE приложений: коммерческую JBoss Developer Studio и open source JBoss Tools.
+6
Недокументированная возможность в WebSphere Portal 5.1 (общая сессия для портлета и сервлета)
2 мин
1.2KБыла следующая задача:
написать портлет, который отображает график отчета, хранящегося в Когносе. Отчет Когноса может строиться очень и очень долго, от нескольких секунд до 20.Заставлять ждать пользователя столько времени — ужасное решение.
+2
Что умеет и имеет Sun Java System Portal 7.1
6 мин
2.1KПеревод
Это статья является переводом — компиляцией нескольких доков по порталу. Я добавил сравнение в самым крутым портальным сервером — IBM WebSphere Portal
+3
Установка Sun System Portal Server 7.1 update 1 на Windows 2003
2 мин
1.4KПо просьбам трудящихся, пишу как установить портал на винду. К сожалению, я не осилил следующую проблему — как продеплоить сэмплы на портал, как запустить болг-портлет, вики-портлет и т.д. Исходя из логов, я пришел к выводу, что хардкод путей к файлам в билдовых скриптах не позволяет установить примеры и развернуть существующий функционал.
Тем не менее, портал ставится и работает.
Как я и обещал, через несколько дней будут готовы примеры портлетиков (через неделю диплом сдаю, пришлось отложить написание портлетов на «последипломие»). Затем поставлю портал 7.2 на линух и начну его ковырять.
Тем не менее, портал ставится и работает.
Как я и обещал, через несколько дней будут готовы примеры портлетиков (через неделю диплом сдаю, пришлось отложить написание портлетов на «последипломие»). Затем поставлю портал 7.2 на линух и начну его ковырять.
0
Как я сходил на семинар по JSF
5 мин
3.3KСеминар Ajax и Java Server Faces — новые уровни технологий Java.
Краткий отчет.
Небольшой опус, повествующий о событиях 24 апреля, 2008 года. Прочитав опус, вы узнаете о том, как подружились Java SE версии 6 и веб-сервисы, прочете пару строчек про JSF, капелюшечку про JAX, и просто мои мысли вслух.
24 апреля мне посчастливилось попасть на семинар, посвященный JSF в целом и JSF+AJAX в частности.
Скажу сразу: по техническим причинам мне не удалось полностью прослушать лекции.
Краткий отчет.
Небольшой опус, повествующий о событиях 24 апреля, 2008 года. Прочитав опус, вы узнаете о том, как подружились Java SE версии 6 и веб-сервисы, прочете пару строчек про JSF, капелюшечку про JAX, и просто мои мысли вслух.
24 апреля мне посчастливилось попасть на семинар, посвященный JSF в целом и JSF+AJAX в частности.
Скажу сразу: по техническим причинам мне не удалось полностью прослушать лекции.
+2
Вклад авторов
olegchir 4056.4tagir_valeev 2369.0phillennium 1485.423derevo 1271.0ARG89 1078.2igor_suhorukov 915.2dbelob 902.0doom369 826.0alizar 756.0dididididi 709.0
Работа
Java разработчик
395
вакансий