Мы рады сообщить, что вышел первый релиз набора архетипов maven !!! Целью этого набора является предоставление шаблонов проектов, которые могут удовлетворить различные потребности разработки. Вы можете найти дорожную карту JCG в конце этого поста.
Этот первый выпуск призван предоставить шаблон проекта — архитектуру для веб-приложений. Имя архетипа — jcg-andygene-archetype, и оно находится в следующем месте: https://github.com/javacodegeeks/jcg-andygene-web/
Лицензия для этого набора архетипов — Apache License . Разработчики могут изменить это.
Архетип Особенности
- Spring MVC
- Spring Security
- школа дзюдо
- JasperReports
- Drools
- Activiti
- CXF
- ActiveMQ
- Ehcache
- Hibernate JPA2
Рекомендуемое описание
Spring MVC : среда Spring MVC Spring разработана на основе DispatcherServlet, который отправляет запросы обработчикам, с настраиваемыми сопоставлениями обработчиков, разрешением представления, языковым стандартом и разрешением темы, а также поддержкой загрузки файлов.
Spring Security : Spring Security — это мощная и настраиваемая среда аутентификации и контроля доступа. Это де-факто стандарт для защиты приложений на базе Spring
Dojo : библиотека Javascript для классных пользовательских интерфейсов.
JasperReports : Мощный инструмент отчетности. Он может генерировать отчеты в различном наборе форматов.
Слюни : Мощная платформа бизнес-логики. Drools использует алгоритм Rete для принятия решений и может быть динамически настроен для изменения бизнес-логики вашего приложения.
Activiti : мощная реализация bpmn2, которую пользователи могут использовать в качестве связи между деловыми людьми и разработчиками.
CXF : стек веб-сервисов.
ActiveMQ : реализация JMS. API Java Message Service ( JMS ) — это API-интерфейс промежуточного программного обеспечения (MOM), предназначенный для отправки сообщений между двумя или более клиентами.
Ehcache : кэш второго уровня, который может улучшить ваше приложение.
Hibernate JPA2 : реализация спецификации JPA2. Реляционная карта объекта.
Архетип Требования
- Apache Maven 2
- Tomcat 6
- (Необязательно) Набор инструментов разработки (например, Eclipse или SpringSourceTool Suite или любой другой набор инструментов. Для удобства было бы желательно поддерживать интеграцию maven) для просмотра созданной архитектуры проекта и для разработки на основе этого архетипа.
инструкции по установке
Загрузите архетип . Распакуйте его где-нибудь на диске и введите в корневой папке архетипа следующее:
1
|
mvn install |
Генерация вашего первого проекта
Чтобы сгенерировать свой первый проект, введите в своем рабочем каталоге следующее:
1
|
mvn archetype:generate -DarchetypeCatalog= local -DarchetypeGroupId=com.javacodegeeks -DarchetypeArtifactId=jcg-andygene-web-archetype |
Вам будет предложено ввести несколько параметров архетипа. Примером является следующее:
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
|
Define value for property 'groupId' : : com.javacodegeeks Define value for property 'artifactId' : : MyFirstJCGProject Define value for property 'version' : 1.0-SNAPSHOT: 1.0.0.Final Define value for property 'package' : com.javacodegeeks: com.javacodegeeks [INFO] Using property: activemqpersistencedir = ~ /activemq [INFO] Using property: activemqpersistencesize = 32mb [INFO] Using property: activemqsessioncachesize = 100 Define value for property 'activitipassword' : : nothing [INFO] Using property: activitiurl = jdbc\:h2\:mem /activiti [INFO] Using property: activitiusername = sa Define value for property 'databasepassword' : : nothing [INFO] Using property: databaseurl = jdbc\:h2\:mem /andygene [INFO] Using property: databaseusername = sa [INFO] Using property: db = h2 [INFO] Using property: tomcathost = localhost:8080 Confirm properties configuration: groupId: com.javacodegeeks artifactId: MyFirstJCGProject version: 1.0.0.Final package: com.javacodegeeks activemqpersistencedir: ~ /activemq activemqpersistencesize: 32mb activemqsessioncachesize: 100 activitipassword: nothing activitiurl: jdbc\:h2\:mem /activiti activitiusername: sa databasepassword: nothing databaseurl: jdbc\:h2\:mem /andygene databaseusername: sa db: h2 tomcathost: localhost:8080 |
Это создаст проект maven с именем MyFirstJCGProject (в зависимости от параметра, который вы указали ранее)
Ниже представлена структура основных элементов этого проекта:
Под src / main / java :
- dao: содержит объекты доступа к данным (DAO)
- домен: содержит объекты передачи данных (DTO)
- drools: Содержит используемый объект drool.
- jms: содержит слушателя и отправителя JMS.
- сервис и сервис / импл: содержит основные сервисы.
- util: содержит различные утилиты (например, валидацию)
- Сеть: содержит контроллеры.
- webservices: содержит мыльные интерфейсы.
В разделе src / main / resources :
- activiti: это содержит потоки.
- слюни: он содержит правила.
- META-INF: содержит файл persistence.xml.
- META-INF / spring: содержит файлы свойств и контекст приложения для источников ссылок Spring.
Под src / test :
- Java: он содержит модульные тесты.
- Ресурсы: Содержит log4j.
Под src / main / webapp (файлы для приложения we):
- / WEB-INF / spring: содержит дескриптор spring для веб-приложения.
- / WEB-INF / layouts: содержит веб-шаблоны.
- / WEB-INF / reports: содержит отчеты о яшме.
- / WEB-INF / classes: содержит веб-свойства.
- / WEB-INF / views: содержит структуру веб-страниц.
Запуск / сборка вашего первого проекта
Чтобы запустить — соберите свой проект, введите следующее (если ваш инструментарий разработки имеет интеграцию с maven, вы можете выполнить следующее действие из своего инструментария):
1
2
|
cd MyFirstJCGProject mvn install |
Файл войны будет сгенерирован в target / MyFirstJCGProject.war . Скопируйте этот файл в TOMCAT_HOME / webapps .
Запустите Tomcat и укажите браузер по следующему адресу: http: // tomcathost / MyFirstJCGProject
Конфигурация Tomcat
Вы должны отредактировать catalina.sh для mac или linux или catalina.bat , если вы работаете в windows, расположенном в TOMCAT_HOME / bin, и добавить следующие строки:
1
2
3
4
|
JAVA_OPTS="-Djava.awt.headless= true -Dfile.encoding=UTF-8 -server -Xms1536m -Xmx1536m -XX:NewSize=256m -XX:MaxNewSize=256m -XX:PermSize=256m -XX:MaxPermSize=256m -XX:+DisableExplicitGC" |
Примечание : Drools требуется подключение к Интернету. Если вы хотите запустить свой проект без доступа к Интернету, скопируйте MyFirstJCGProject / src / main / resources / META-INF / spring / drools-spring-1.0.0.xsd в папку свой диск и отредактируйте MyFirstJCGProject / src / main / resources / META-INF / spring / applicationContext-drools.xml : измените http://anonsvn.jboss.org/repos/labs/labs/jbossrules/trunk/drools-container/drools -spring / src / main / resources / org / drools / container / spring / drools-spring-1.0.0.xsd в файл: ///path/to/drools-spring-1.0.0.xsd .
Архетип Поддерживаемые базы данных:
- Значение свойства db H2 (по умолчанию) [h2]
- Значение свойства Postgres db [postgres]
- Значение свойства Mysql db [mysql]
- Значение свойства Oracle db [оракул]
Примечание: Если вы выбираете oracle, вы должны загрузить драйвер oracle, oracle и установить его в свой репозиторий.
Дорожная карта JCG:
Java Code Geeks планирует предоставить больше инструментов для сообщества в ближайшем будущем. Следующие проекты включены в Дорожную карту:
СКГ-andygene-СОА-архетип:
- Весенняя интеграция
- Весенняя партия
- Drools
- Activiti
- Smooks
СКГ-andygene-NoSQL-архетип:
- MongoDB
- HBase (Hadoop)
СКГ-andygene-JCR-архетип:
- Jackrabbit
СКГ-andygene-телеком-архетип:
- Mobicents Sip Servlets
- SMS / MMS
СКГ-andygene-консоль:
- Менеджер задач
- Консоль JMX
- Правило горячего развертывания
- Smooks Hot Deployment
- Активити Горячее Развертывание
appboost:
- Плагин Eclipse, который сочетает в себе вышеуказанные технологии для быстрой разработки приложений.
Статьи по Теме: