Этот репо, одобренный весенней командой, представляет собой вилку пружинных проектов/Spring-Petclinic. Это позволяет сообществу Spring поддерживать Петклиническую версию с простой старой конфигурацией Spring Framework и с трехслойной архитектурой (то есть презентация-> Service-> Repository). Реализация «канонической» в настоящее время основана на пружине, Thymeleaf и Agragate-ориентированном домене.
Смотрите презентацию здесь (обновление 2017 года)
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
cd spring-framework-petclinic
./mvnw jetty:run-war
# For Windows : ./mvnw.cmd jetty:run-war
docker run -p 8080:8080 springcommunity/spring-framework-petclinic
Затем вы можете получить доступ к Petclinic здесь: http: // localhost: 8080/
Наш трекер проблемы доступен здесь: https://github.com/spring-petclinic/spring-framework-petclinic/issues
В своей конфигурации по умолчанию Petclinic использует базу данных в памяти (H2), которая заполняется при запуске с данными.
Аналогичные настройки предусмотрены для MySQL и PostgreSQL в случае необходимости постоянной конфигурации базы данных. Для запуска Petclinic локально с использованием постоянной базы данных необходимо запустить с профилем, определенным в основном файле pom.xml.
Для базы данных MySQL она необходима для запуска с профилем «MySQL», определенным в основном файле pom.xml.
./mvnw jetty:run-war -P MySQL
Перед этим было бы хорошо проверить свойства, определенные в профиле MySQL внутри файла pom.xml.
<properties>
<jpa.database>MYSQL</jpa.database>
<jdbc.driverClassName>com.mysql.cj.jdbc.Driver</jdbc.driverClassName>
<jdbc.url>jdbc:mysql://localhost:3306/petclinic?useUnicode=true</jdbc.url>
<jdbc.username>petclinic</jdbc.username>
<jdbc.password>petclinic</jdbc.password>
</properties>
Вы можете начать MySQL локально с любых устройств установщика для вашей ОС, или с Docker:
docker run -e MYSQL_USER=petclinic -e MYSQL_PASSWORD=petclinic -e MYSQL_ROOT_PASSWORD=root -e MYSQL_DATABASE=petclinic -p 3306:3306 mysql:5.7.8
Для базы данных PostgreSQL необходимо запустить с профилем «PostgreSQL», определенным в основном файле pom.xml.
./mvnw jetty:run-war -P PostgreSQL
Перед этим было бы хорошо проверить свойства, определенные в профиле PostgreSQL внутри файла pom.xml.
<properties>
<jpa.database>POSTGRESQL</jpa.database>
<jdbc.driverClassName>org.postgresql.Driver</jdbc.driverClassName>
<jdbc.url>jdbc:postgresql://localhost:5432/petclinic</jdbc.url>
<jdbc.username>postgres</jdbc.username>
<jdbc.password>petclinic</jdbc.password>
</properties>
Вы также можете запустить PostgreSQL локально с любым устройством установщика для вашей ОС, или с Docker:
docker run --name postgres-petclinic -e POSTGRES_PASSWORD=petclinic -e POSTGRES_DB=petclinic -p 5432:5432 -d postgres:9.6.0
Уровень постоянства имеет 3 доступных реализации: JPA (по умолчанию), JDBC и Spring Data JPA. Реализация JPA по умолчанию может быть изменена с помощью пружинного профиля: jdbc , spring-data-jpa и jpa .
В качестве примера вы можете использовать параметры -Dspring.profiles.active=jdbc VM, чтобы запустить приложение с реализацией JDBC.
./mvnw jetty:run-war -Dspring.profiles.active=jdbc
Существует petclinic.css в src/main/webapp/resources/resources/css . Он был сгенерирован из источника petclinic.scss , в сочетании с библиотекой Bootstrap. Если вы внесете изменения в scss или обновите начальную загрузку, вам необходимо будет пересекать ресурсы CSS, используя профиль Maven «CSS», то есть ./mvnw generate-resources -P css .
В вашей системе следует установить следующие элементы:
git clone https://github.com/spring-petclinic/spring-framework-petclinic.git
File -> Import -> Maven -> Existing Maven project
Затем либо создайте командную строку ./mvnw generate-resources , либо используя запуск Eclipse (щелкните правой кнопкой мыши на проект и Run As -> Maven install ), чтобы сгенерировать CSS. Настройте причал или веб-контейнер Tomcat, затем разверните файл spring-petclinic.war .
В главном меню выберите File > Open и выберите Petclinic Pom.xml. Нажмите на кнопку Open .
Файлы CSS генерируются из сборки Maven. Вы можете либо построить их на командной строке ./mvnw generate-resources , либо щелкнуть правой кнопкой мыши на проект spring-petclinic , а затем Maven -> Generates sources and Update Folders .
Перейдите на Run -> Edit Configuration , затем настройте веб -контейнер Tomcat или придурок. Развернуть файл spring-petclinic.war . Запустите приложение, нажав на значок Run .
Посетите http: // localhost: 8080 в вашем браузере.
В вашей системе следует установить следующие элементы:
| Java Config | |
|---|---|
| Java Config Branch | Petclinic использует конфигурацию XML по умолчанию. В случае, если вы хотите использовать конфигурации Java, здесь доступна филиал конфигурации Java |
| Внутри слоя «веб -» | Файлы |
|---|---|
| Spring MVC - интеграция XML | MVC-View-config.xml |
| Spring MVC - ContentNeGotiatingViewResolver | MVC-View-config.xml |
| JSP пользовательские теги | Web-Inf/Tags, createorUpdateOwnerform.jsp |
| Зависимости от JavaScript | Библиотеки JavaScript объявляются как веб -джары в pom.xml |
| Статические ресурсы конфигурация | Картирование ресурсов в конфигурации пружины |
| Статическое использование ресурсов | htmlheader.tag, looter.tag |
| Тимелиф | В конце 2016 года первоначальный Spring Petclinic перешел из JSP в Thymeleaf. |
| Слои «обслуживания» и «репозитория» | Файлы |
|---|---|
| Транзакции | Business-config.xml, clinicserviceimpl.java |
| Кеш | Tools-config.xml, clinicserviceimpl.java |
| Профили бобов | Business-config.xml, clinicservicejdbctests.java, petclinicinitializer.java |
| JDBC | Business-config.xml, папка JDBC |
| JPA | Business-config.xml, папка JPA |
| Весенние данные JPA | Business-config.xml, папка SpringDatajpa |
Это приложение использует Google Jib для построения оптимизированного изображения Docker в репозиторий Hub Docker. Pom.xml был настроен для публикации изображения с помощью springcommunity/spring-framework-petclinic Имя изображения.
JIB контейнерует этот военный проект, используя причал дистриблетения в качестве базового изображения.
Стройте и нажмите на контейнер изображение Петклинического в реестр концентраторов Docker:
mvn jib:build
Весенняя Петклиническая Мастерская филиал в основной пружинной проекте Github Org представляет собой «каноническую» реализацию, в настоящее время основанную на Spring Boot и Thymeleaf.
Этот проект весны-карамец-Petclinic является одной из нескольких вилок, размещенных в специальной Github Org: Spring-Petclinic. Если у вас есть особый интерес к другим технологическим стеком, который можно использовать для реализации клиники для животных, пожалуйста, присоединяйтесь к сообществу там.
Одной из лучших частей работы над весенним приложением Petclinic является то, что у нас есть возможность работать в прямом контакте со многими проектами с открытым исходным кодом. Мы нашли некоторые ошибки/предложенные улучшения по различным темам, таким как пружины, данные пружины, проверка бобов и даже затмение! Во многих случаях они были исправлены/реализованы всего за несколько дней. Вот их список:
| Имя | Проблема |
|---|---|
| Spring JDBC: упростите использование natedParameterJdbctemplate | SPR-10256 и SPR-10257 |
| Валидация фасоли / witrnate valydator: упростите зависимости Maven и обратную совместимость | HV-790 и HV-792 |
| Данные пружины: обеспечить большую гибкость при работе с запросами JPQL | DataJPA-292 |
| Одуванчик: улучшает Dandelionfilter для поддержки причала | 113 |
Проблема Tracker - это предпочтительный канал для отчетов об ошибках, запросов функций и отправки запросов на притяжение.
Для получения запросов на предпочтения редактора доступны в конфигурации редактора для удобного использования в общих текстовых редакторах. Подробнее и скачать плагины по адресу http://editorconfig.org.