Рубрика «java» - 239

в 0:01, , рубрики: java, junit

Представим себе ситуацию, когда есть написанные тесты на JUnit`е и все работает отлично (ну хотя бы тесты написаны).
Но появляется чудо-идея, что TestNG был бы для этих тестов удобнее. Не будем вдоваться в холливор, какой из фреймворков лучше, круче или удобнее. Но факт в том, что API у них разный.

Конечно заменить поиском assertArrayEquals на assertEquals несложно.
Но менять позицию сообщения для падающего теста уже сложнее, тут нужно править ручками.
Не знаю, насколько актуальна эта проблема, но я с ней сталкивался много раз.
Читать полностью »

в 17:03, , рубрики: java, javascript, nashorn, метки: , ,

Введение

imageNashorn* — движок JavaScript, разрабатываемый полностью на языке программирования Java компанией Oracle. Основан на Da Vinci Machine (JSR 292) и будет доступен в составе Java 8 (релиз которой ожидается в марте 2014 года). Стоит отметить что выполнение JavaScript (и поддержка сриптинга) была уже в Java 6, но в ней использовался движок Rhino, также написанный на Java, но поддерживаемый Mozilla Foundation.

О списке нововведений в Java 8 уже писали ранее. В данной статье будет приведена пара простых примеров, которая даст вам представление об использовании Nashorn.
Читать полностью »

Испокон веку в Java есть чудесный механизм сериализации, который позволяет, не прилагая особых умственных усилий, сохранять в виде последовательности байт сколь угодно сложные графы объектов. Формат хранения хорошо документирован, есть куча примеров, сериализованные объекты «весят» вполне себе немного, пересылаются по сети на раз, есть куча возможностей для кастомизации… Все это звучит прекрасно, но только до тех пор, пока вы не останетесь один на один каким-нибудь многомегабайтным бинарным файлом, содержащим очень-очень ценные и нужные именно сейчас данные.

Как голыми руками залезть в этот файл, и понять, что же хранится внутри этого огромного сериализованного графа объектов, не имея исходного кода? На эти и многие другие вопросы может ответить Serialysis – библиотека, которая позволит вам детально проанализировать сериализованные java-объекты (сериализованные объекты — это мой вариант перевода выражения serial forms, решил не уходить далеко от оригинала). Таким образом можно получить информацию об объекте, которая не доступна через его публичный API. Библиотека также является полезным инструментом при тестировании сериализации ваших собственных классов.
Читать полностью »

На конференции JavaOne 2013, которая недавно завершилась в Сан-Франциско, компании Microsoft Open Technologies и Azul Systems анонсировали Zulu — порт OpenJDK для облачной платформы Windows Azure. Учитывая, что три месяца назад Oracle и Microsoft объявили о партнёрстве в области облачных технологий, многие ожидали, что именно Oracle выпустит JVM для облачной платформы от Microsoft. Однако такую JVM выпустила Azul Systems, многолетний лицензиат Java SE, известный своими высокопроизводительными решениями для серваков с большими хипами.

В первой части статьи мы попробуем разобраться, кто такой этот Zulu и что нам от него ожидать.Ну а потом мы перейдём к распаковке Zulu Technology Preview и, в качестве побочного эффекта, посмотрим, чем же Oracle так нашпиговала свою JDK, что та весит в полтора раза больше Zulu.

Azul Zulu — JVM для облака или просто порт OpenJDK на Windows?

Читать полностью »

Копаемся в памяти JVM. Манипуляции с флагами

HotSpot JVM имеет множество опций для отслеживания происходящего в виртуальной машине: PrintGC, PrintCompilation, TraceClassLoading и т.п. Как правило, они включаются параметрами командной строки, например, -XX:+PrintGCDetails. Однако порой возникает необходимость включить или выключить такой флаг непосредственно во время работы приложения, когда перезапуск JVM с другими параметрами невозможен. Этого можно добиться как штатным, так и хакерским способом, причем последний и мощнее, и интереснее. Впрочем, внимания заслуживают оба.

Из данной статьи вы узнаете:

  • где найти все флаги JVM, и на какие типы они делятся;
  • как прочитать или установить флаг программно, используя JMX;
  • как найти нужную область в памяти виртуальной машины и испортить модифицировать ее.

Читать полностью »

Привет коллеги.
Хочу поделиться своим опытом использования HBase, а именно рассказать про bulk loading. Это еще один метод загрузки данных. Он принципиально отличается от обычного подхода (записи в таблицу через клиента). Есть мнение, что с помощью bulk load можно очень быстро загружать огромные массивы данных. Именно в этом я решил разобраться.
Читать полностью »

Именно так заявил технический директор IBM Джон Дуимович (John Duimovich) в своем выступлении на конференции JavaOne 2013. Он отметил, что ускорители GPU обладают невероятной вычислительной мощью и их применение для вычислений в Java позволит ускорить сложные вычисления и обработку больших массивов данных. Использование GPU для вычислений в Java открывает множество новых перспектив как для Java-разработчиков, так и для производителей GPU.
Читать полностью »

В рамках действия соглашения между Oracle и Microsoft подписанного в июне 2013 года для пользователей Windows Azure стали доступны официальные образы продуктов компании Oracle – WebLogic Server 11g/12c, Oracle Database 12c, Oracle Linux 6.4.0.0 и Java 6/7. При этом и Java, WebLogic и Oracle Database доступны как на базе виртуальных машин Windows Server 2012 так и на базе Oracle Linux.

image

Лицензирование этих продуктов производится по принципу “своя лицензия”, что подразумевает, что пользователи должны воспользоваться собственными лицензиями на продукты Oracle. Поддержка продуктов осуществляется компанией Oracle.

Подробное описание ценообразования и лицензирования продуктов Oracle можно найти на официальном портале Windows Azure. Там же можно найти ответы на наиболее часто задаваемые вопросы.
Читать полностью »

Добрый день, уважаемые читатели Хабра. Как часто вы смотрите за актуальностью той или иной платформы? Если вы хороший специалист, то, наверное, всегда. Если же нечасто – пожалуй, пора начать это делать. Мы подготовили перевод исследования американского блогера Бена Подгурски (Ben Podgursky), позволяющего понять уровень оплаты программистов, в зависимости от языков программирования. Бен использовал в качестве источника данные пользователей на GitHub. Данный пост набрал большой рейтинг на Hacker News.

image

Стереотипов о разработчиках различных языков очень много, но мне было любопытно, насколько они соответствуют действительности.
Читать полностью »

image
Многие разработчики сталкиваются с необходимостью чтения конфигурационных (*.ini, *.prop, *.conf, etc.) файлов в разрабатываемых приложениях. В Java есть стандартный класс Properties, с помощью которого можно очень легко загрузить ini-файл и прочитать его свойства. При большом объеме конфигурационных файлов чтение и запись настроек в объекты превращается в очень нудную и рутинную работу: создать объект Properties, конвертировать каждую настройку в нужный формат и записать его в поле.

Библиотека nProperty (Annotated Property) призвана упростить этот процесс, сократив примерно в два раза требуемый код для написания загрузчиков настроек.

Чтобы показать, каким образом возможно обещанное сокращение кода в два раза, ниже приведены два примера: в первом примере используется стандартный класс Properties, во-втором — nProperty.

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js