Чтение и запись изображений Java

Чтение и запись изображений JavaДо выхода версии 1.4 возможности для чтения и записи файлов с изображениями в Java SE были весьма ограниченным. Например, считывать можно было только файлы формата GIF и JPEG, а записывать официально вообще нельзя было никаких графических файлов.

Теперь ситуация выглядит значительно лучше. Еще в Java SE 1.4 появился пакет javax.imageio с готовыми средствами для чтения и записи нескольких наиболее типичных форматов файлов, а также средой для разработки своих собственных средств для чтения и записи файлов других форматов. Что касается версии Java SE 6, то в ней поддерживаются такие форматы файлов, как GIF, JPEG, PNG, BMP(растровый формат для Windows) и WBMP(Wireless Bitmap - растровый формат для беспроводных сетей). В прежних версиях из-за патентных ограничений возможность записи файлов формата GIF не поддерживалось. Читать

Рисования фигур с помощью Graphics в Java

Рисования фигур с помощью Graphics в JavaНиже перечислено несколько методов класса Graphics, которые используются для рисования фигур:

  • drawLine
  • drawRectangle
  • drawRoundRect
  • draw3DRect
  • drawPolygon
  • drawPolyline
  • drawOval
  • drawArc Читать

Прерываемые сокеты Java

Прерываемые сокеты JavaПри подключении с помощью сокета текущий поток блокируется до тех пор, пока соединение не будет установлено, или до истечения времени тайм-аута. Аналогично, если вы пытаетесь передать или прочитать данные посредством сокета, поток приостановит выполнение до успешного завершения операции или до окончания времени тайм-аута.

В реальных приложениях желательно предоставить пользователям возможность прервать слишком затянувшийся процесс установления соединения с помощью сокета. Однако если поток блокирован, поскольку не получает ответа от сокета, вы не можете разблокировать его, вызвав метод interrupt(). Читать

Одностороннее закрытие сокета Java

Одностороннее закрытие сокета JavaОдностороннее закрытие(half-close) обеспечивает возможность одной стороне закрыть соединение с сокетом, прекратив отправку своих данных, но при этом получая данные с другой стороны.

Вот типичная ситуация. Предположим, что вы отправляете данные на сервер, но не знаете, какой объем данных необходимо передать. Если вы имеете дело с файлом, то, закрыв его, вы тем самым определяете конец данных. Закрыв же сокет, вы немедленно разорвете соединение с сервером. Читать

Алгоритм рисования в Java

Алгоритм рисования в JavaВ исходной версии пакета JDK 1.0(Java Development Kit) механизм для рисования фигур выглядел очень просто. Можно было только выбирать необходимый цвет и режим рисования и вызывать методы класса Graphics, вроде drawRect() или fillOval(). API-интерфейс в Java 2D поддерживает гораздо больше возможностей. Читать

Получение автоматически генерируемых ключей SQL Java

Получение автоматически генерируемых ключей SQL JavaБольшинство баз данных поддерживают механизм автоматической нумерации строк в базе данных. К сожалению, у разных поставщиков эти механизмы существенно отличаются. Эти автоматические номера часто используются в качестве первичных ключей.

Несмотря на то что JDBC не предлагает решения, независимого от поставщиков, для генерирования этих ключей, она предлагает эффективный способ их получения. Когда вы вставляете новую строку в таблицу, и когда происходит автоматическая генерация ключа, вы можете получить их с помощью следующего кода: Читать

Чтение и запись больших объектов Java

Чтение и запись больших объектов JavaВ дополнение к числам, строкам и датам, многие базы данных могут сохранять большие объекты(large object - LOB), к числу которых относятся изображения и другие данные. В языке SQL существует понятие больших двоичных объектов(binary large object - BLOB) и больших символьных объектов(character large object - CLOB).

Чтобы прочитать LOB, нужно сначала выполнить оператор SQL, а затем вызвать метод getBlob или getClob в ResultSet. В результате вы получите объект типа Blob или Clob. Чтобы получить двоичные данные из Blob, вызовите метод getBytes или getInputStream. Читать

Сирия сражается

Сирия сражаетсяСамая мощная информационная кампания в мире идёт сегодня вокруг стойкой Сирии.

Ситуация в этой стране говорит о том, что Запад близок к своему политическому и военному поражению. Не сумев сломить режим Асада силовыми методами, столкнувшись с тем, что этот лидер стал символом сопротивления для значительной части населения страны, что он имеет серьёзную поддержку в соседних странах и Китае, Запад, а также королевства Залива, Турция и Аль-Каида — вся эта странная группировка — оказалась в определенном тупике. Поэтому теперь они будут пытаться информационными, а ещё точнее, диффамационными мероприятиями добиться того, чего не смогли достичь на поле боя. Они будут клеветать на сирийский народ и государство, сочинять об ужасах сирийского режима, делая его ответственным за всё то, что там происходит. Читать