пятница, 9 мая 2014 г.

between operator mysql

Use beetween operator in mysql correctly, that use column's indexes .
Example of great correctly query:
SELECT * FROM news
  WHERE created_at BETWEEN STR_TO_DATE('2008-08-14 00:00:00', '%Y-%m-%d %H:%i:%s')
  AND STR_TO_DATE('2008-08-23 23:59:59', '%Y-%m-%d %H:%i:%s');

воскресенье, 15 декабря 2013 г.

Процесс загрузки java классов.

1) Системный загрузчик попытается поискать в кеше класс Student.
_1.1) Если класс найден, загрузка окончена.
_1.2) Если класс не найден, загрузка делегируется загрузчику расширений.
2) Загрузчик расширений попытается поискать в кеше класс Student.
_2.1) Если класс найден, загрузка окончена.
_2.2) Если класс не найден, загрузка делегируется базовому загрузчику.
3) Базовый загрузчик попытается поискать в кеше класс Student.
_3.1) Если класс найден, загрузка окончена.
_3.2) Если класс не найден, базовый загрузчик попытается его загрузить.
__3.2.1) Если загрузка прошла успешно, она закончена ;)
__3.2.2) Иначе управление предается загрузчику раширений.
_3.3) Загрузчик расширений пытается загрузить класс. 
__3.3.1) Если загрузка прошла успешно, она закончена ;)
__3.3.2) Иначе управление предается системному загрузчику.
_3.4) Системный загрузчик пытается загрузить класс. 
__3.4.1) Если загрузка прошла успешно, она закончена ;)
__3.4.2) Иначе генерируется исключение java.lang.ClassNotFoundException.

Как подписать java апплет?

1)В папке с апплетом(/component/applet/) в консоли выполняем команду mvn clean install assembly:assembly
2)Переходим в папку BIN нашего JDK (например, C:\Program Files\Java\jdk1.6.0_23\bin)
3)Создаем локальное хранилище нашего сертификата (keystore):
keytool -genkey -keystore .keystore -alias "Espesoft" -validity 99999
где Espesoft - название alias нашего сертификата;
99999 - срок в месяцах валидности сертификата;
.keystore - имя файла создаваемого хранилища.
keytool -genkey -keystore .keystore -alias "Espesoft" -validity 99999
4)В случае успешного запуска команды, система спросит нас пароль нашего хранилища, а также некоторую информацию о сертификате
(твои ФИО, название компании, город, страну и группу крови)
В результате будем иметь файл .keystore. Это и есть наше хранилище, которым мы будем подписывать разные апплеты.
Копируем в папку BIN нашего JDK наш JAR-файл (/component/applet/target/ecologysigningapplet-jar-with-dependencies.jar)/
Подписываем его с помощью следующей команды:
jarsigner.exe -keystore .keystore ecologysigningapplet-jar-with-dependencies.jar "Espesoft"
где Espesoft - название alias нашего сертификата;
.keystore - имя файла хранилища;
ecologysigningapplet-jar-with-dependencies.jar - название JAR-файла.
Система спросит нас пароль - вводим тот, что ввели в п. 3.
5)Затем перемещаем ecologysigningapplet-jar-with-dependencies.jar в папку webapp модулей ecologyapp и authmodule.
Переименовываем его ecologysigningapplet.jar
ecologyapp (используется для загрузок) и authmodule (используется для сброса пароля с помощью ЭЦП).

пятница, 22 ноября 2013 г.

Переход с tomcat6 на tomcat7.

В проекте при переходе с tomcat6 на tomcat7 столкнулся с проблемой запуска сервера, как оказалось в семерке в server.xml больше не используется listener:
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
Закомментировал и сервер вновь стал запускаться, как раньше.

Кстати, почему перешел на 7ой tomcat.
После долгого перерыва в работе в проекте много что поменяли мои коллеги разработчики, в результате после апдейта проекта при старте сервера в логах писалость, что сервер started, а вот в progress bare server starting, различными чистками проблему решить не удалось, поэтому решил поступить по старинке.
Скачал самую последнюю версию eclipse jee и соответственно томката, поставил, проблема решилась.

пятница, 15 ноября 2013 г.

Добавление общей папки в VirtualBox

Запускаем VirtualBox, выбираем нашу тачку, вызываем контекстное меню и выбираем свойства, далее в самой нижней вкладке есть поле "общие папки", кликаем, выбираем кликая справа по кнопке свою папку, доступ к которой мы хотим предоставить нашей машине в VirtualBox.
Сохраняем изменения, запускаем машину.
Сверху включенной машины есть панель управления, выбираем на ней устройства->установить дополнения гостевой ОС, далее далее. Перезапускаем.
Запускаем командную строку, посредством пуск-> выполнить-> cmd, в ней вводим
net use x: \\vboxsvr\имя нашей общей папки, которую выбрали изначально(обязательно пробел после x: ).
Все готово, заходим на сетевой диск vboxsvr.

четверг, 14 ноября 2013 г.

Проблемы совместимости архитектуры приложения и драйвера ODBC.

При попытки подключения к odbc у меня возникла проблема совместимости архитектуры драйвера и приложения.
Фишка оказалась в разрядности. Разрядность odbc драйвера должна совпадать с разрядностью того приложения, которое хочет воспользоваться данным драйвером.
Если у вас 64 битная ОС, а приложение 32, тогда после установки драйвера под 32 битную ось вы не увидите его в списках при создании нового системного источника данных odbc. Что бы увидеть его нужно запустить 32ух разрядную версию приложения "Источники данных (ODBC)". Сделать это можно по адресу C:\Windows\SysWOW64\odbcad32.exe.