среда, 30 сентября 2009 г.
среда, 11 марта 2009 г.
Eclipse 3.4.*. Управление плагинами.
В новой версии эклипса измененно управление плагинами. Теперь их нельзя дизейблить используя Help->Software Updates.
Для включения и отключения плагинов используйте окно Window->Preferences закладка General->Startup and Shutdown
Для включения и отключения плагинов используйте окно Window->Preferences закладка General->Startup and Shutdown
среда, 4 февраля 2009 г.
Web Приложение на базе Spring MVC
Это статья заготовка для быстрого старта разработки простоги веб приложения основаного на Spring MVS.
для запуска понадобятся следующие библиотеки:
для построения метрики и явадоков с помощью анта понадобятся библиотеки jdepend-2.9.jar, statsvn.jar, которые необходимо поместить в папку {SpringWebTemplate}/compile-lib
В заготовке описан пример однога сервиса, которий используется контроллерами. В контроллере "MainController" показан пример передачи бина на страницу, а также примеры 2-х типов перенаправления запросов пользователя. В контроллере "CalculatorController" показан пример обработки формы (передача значений на форму, считывание введенных пользователем данных, их валидация, показ ошибок и результатов).
Пример состоит из двух страниц:
Скачать пример без библиотек
Доп. литература:
Отличная статья с примером о валидации в спринге

для запуска понадобятся следующие библиотеки:
- Spring 2.5.5 (commons-collections.jar, commons-lang.jar, commons-logging.jar, spring.jar, spring-webmvc.jar, servlet-api.jar)
- spring validation (spring-modules-validation.jar из пакета pring Modules 0.9)
- standard jsp taglibs (jstl.jar, standard.jar)
- log4j-1.2.13.jar - для логирования.
для построения метрики и явадоков с помощью анта понадобятся библиотеки jdepend-2.9.jar, statsvn.jar, которые необходимо поместить в папку {SpringWebTemplate}/compile-lib
В заготовке описан пример однога сервиса, которий используется контроллерами. В контроллере "MainController" показан пример передачи бина на страницу, а также примеры 2-х типов перенаправления запросов пользователя. В контроллере "CalculatorController" показан пример обработки формы (передача значений на форму, считывание введенных пользователем данных, их валидация, показ ошибок и результатов).
Пример состоит из двух страниц:
- /main.htm - имеет стандартную разметку с относительными ссылками на файлы css и js. В качестве примера вывода динамического содержимого - выводится текущее время сервера
- /calc.htm - страница с формой. Считывает 2 числа и выводит их сумму. Если пользователь введет некоректные данные показываются ошибки валидации. На странице есть 2 примера сообщений валидации: для первого поля сообщение задается в класе формы, для второго - на jsp странице
Скачать пример без библиотек
Доп. литература:
Отличная статья с примером о валидации в спринге

Eclipse настройка плагина к Tomcat
Тысячу раз описано поэтому очень коротко.
Пример файла {project_name}.xml:
- загружаем Sysdeo Eclipse Tomcat Launcher и распаковываем его в папку {eclipse_home}\plugins
- запускаем Eclipse, при этом на панели кнопок появляется три иконки
- настраиваем плагин: Windows->Preference указываем путь к локально установленному томкету, выбираем Context directory - {tomcat}\conf\Catalina\localhost; JVM Setting - добавляем "-Xms128m -Xmx512m"; Source path - выбирае проект
- настраиваем томкет: в папке {tomcat}\conf\Catalina\localhost создаем файл {project_name}.xml
Пример файла {project_name}.xml:
<?xml version='1.0' encoding='utf-8'?>
<Context path="/MyApp" reloadable="true" docBase="D:\works\eclipse\workspace\SpringWebTemplate\webapp\ "></Context>
<Context path="/MyApp" reloadable="true" docBase="D:\works\eclipse\workspace\SpringWebTemplate\webapp\ "></Context>
пятница, 9 января 2009 г.
Eclipse. Горячие клавиши
| ctrl + shift + L | показать гарячие клавиши |
| ctrl + A | выделить все |
| ctrl + F | отформатировать выделенный фрагмент |
| ctrl + F3 | показать структуру класса |
| ctrl + T | Показать иерархию наследования класса |
| ctrl + shift + T | найти класс (можно использовать маску) |
| ctrl + shift + H | Показать иерархию наследования класса |
| ctrl + alt + H | Показать иерархию вызовов метода |
| ctrl + alt + R | переименовать выделенный фрагмент |
| ctrl + / | закоментировать используя // |
| ctrl + shift + / | закоментировать используя /* */ |
| alt + shift + J | добавить javadoc |
| ctrl + shift + Y | перевести в нижний регистр |
| ctrl + shift + X | перевести в верхний регистр |
| ctrl + F6 | Переключение между открытыми окнами |
понедельник, 5 января 2009 г.
MySQL Создание и удаление БД
Для создания БД в MySql необходимо:
Удаление БД:
- создать пользователя
- создать БД
- раздать ему права на пользование базой
- Создаем пользователя:
CREATE USER 'user1'@'localhost' IDENTIFIED BY 'pass1';
- Создаем БД:
CREATE DATABASE IF NOT EXISTS mydb;
- Раздаем ему права:
выборочно:все права:GRANT SELECT,INSERT,UPDATE,DELETE ON *.* TO 'user1'@'localhost';
можно вообще раздать права с автоматическим созданием пользователя:GRANT ALL ON *.* TO 'user1'@'localhost';
Раздавать права можно не только на пользование всеми базами но и на пользовыание только определенной. Едля етого следует указать имя БД. Например:GRANT ALL ON *.* TO 'user2'@'localhost' IDENTIFIED BY 'pass1';
GRANT ALL PRIVILEGES ON mydb . * TO 'user1'@'localhost';
DROP USER 'user1'@'localhost';
Удаление БД:
DROP DATABASE mydb
понедельник, 29 декабря 2008 г.
Тестирование Spring приложений
Эта статья - заготовка, для быстрой организации тестирования спринг приложений.
Рассмотрим типичную конфигурацию Spring + Hibernate. Для тестирования БЛ будет использоваться JUnit4. Заполнять БД тестовыми данными будем при помощи DBUnit. Для запуска тестов будет использоватся Ant(на билдсервере) и Eclipse (для дебага).
Полезная л-ра:
Класная статья о тестировании Spring-a в JUnit-е http://samolisov.blogspot.com/2008/07/spring-junit.html
Класная статья о JUnit4 http://www.ibm.com/developerworks/ru/edu/j-junit4/index.html
Итак нам понадобятся следующие библиотеки:
В заготовке используется схема из двух таблиц "bookcase" и "book", с типичной связью один ко многим. Бизнес модель состоит из трех модулей: млодуля сервисов, модели и DAO. Модель описывает сущности, DAO - описывает методы сохранения и выборки сущностей из БД используя Hibernate Criteria Queries (обекстную модель построения запросов), сервисы же предоставляют высокоуровневые бизнес методы. Для реализации бизнес методов сервисы используют DAO, но также они могут использовать и бизнес методы других сервисов. Так в заготовке "BookcaseService" использует методы другого сервиса "AnotherService".
Для тестирования сервиса "BookcaseService" используется класс "BookceseServiceTest". В нем есть пример:
Скачать исходники проекта с библиотеками (14мб)
Скачать исходники без библиотек
Рассмотрим типичную конфигурацию Spring + Hibernate. Для тестирования БЛ будет использоваться JUnit4. Заполнять БД тестовыми данными будем при помощи DBUnit. Для запуска тестов будет использоватся Ant(на билдсервере) и Eclipse (для дебага).
Полезная л-ра:
Класная статья о тестировании Spring-a в JUnit-е http://samolisov.blogspot.com/2008/07/spring-junit.html
Класная статья о JUnit4 http://www.ibm.com/developerworks/ru/edu/j-junit4/index.html
Итак нам понадобятся следующие библиотеки:
- драйвер БД (в моем примере mqsql-5.0.4)
- hibernate 3.3.1, hibernate-annotations 3.4
- spring-2.5.5
- для работы спринга: cglib 2.1, commons-lang 2.4, spring-modules 0.9
- для тестирования спринга в JUnit 4: spring-test (из spring-modules)
- junit 4.4
- логирование: commons-loging 1.0.4, commons-login-api 1.0.4, log4j 1.2.13
- заполнение тестовой БД-х: dbUnit 2.4.2
В заготовке используется схема из двух таблиц "bookcase" и "book", с типичной связью один ко многим. Бизнес модель состоит из трех модулей: млодуля сервисов, модели и DAO. Модель описывает сущности, DAO - описывает методы сохранения и выборки сущностей из БД используя Hibernate Criteria Queries (обекстную модель построения запросов), сервисы же предоставляют высокоуровневые бизнес методы. Для реализации бизнес методов сервисы используют DAO, но также они могут использовать и бизнес методы других сервисов. Так в заготовке "BookcaseService" использует методы другого сервиса "AnotherService".Для тестирования сервиса "BookcaseService" используется класс "BookceseServiceTest". В нем есть пример:
- использования dbunit при тестировании
- создания сессии для использования в тестах обьектов использующих "hibernate lazy loading"
- замещения сервиса ""AnotherService" сервисом "AnotherTestOverrideService" для тестов
Скачать исходники проекта с библиотеками (14мб)
Скачать исходники без библиотек
Подписаться на:
Комментарии (Atom)

