Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/jdewinne/spring-petclinic

spring petclinic demo application
https://github.com/jdewinne/spring-petclinic

Last synced: 18 days ago
JSON representation

spring petclinic demo application

Awesome Lists containing this project

README

        

# Spring PetClinic Sample Application for XL Deploy

## What does it look like?
-spring-petclinic has been deployed here on cloudfoundry: http://demo-spring-petclinic.cfapps.io/

## Understanding the Spring Petclinic application with a few diagrams
See the presentation here

## Running petclinic locally
```
git clone https://github.com/SpringSource/spring-petclinic.git
mvn tomcat7:run
```

You can then access petclinic here: http://localhost:9966/petclinic/

## In case you find a bug/suggested improvement for Spring Petclinic
Our issue tracker is available here: https://github.com/SpringSource/spring-petclinic/issues

## Working with Petclinic in Eclipse/STS

### prerequisites
The following items should be installed in your system:
* Maven 3 (http://www.sonatype.com/books/mvnref-book/reference/installation.html)
* git command line tool (https://help.github.com/articles/set-up-git)
* Eclipse with the m2e plugin (m2e is installed by default when using the STS (http://www.springsource.org/sts) distribution of Eclipse)

Note: when m2e is available, there is an m2 icon in Help -> About dialog.
If m2e is not there, just follow the install process here: http://eclipse.org/m2e/download/

### Steps:

1) In the command line
```
git clone https://github.com/SpringSource/spring-petclinic.git
```
2) Inside Eclipse
```
File -> Import -> Maven -> Existing Maven project
```

## Looking for something in particular?


Inside the 'Web' layerFiles


Spring MVC- Atom integration

VetsAtomView.java
mvc-view-config.xml



Spring MVC - XML integration
mvc-view-config.xml


Spring MVC - ContentNegotiatingViewResolver
mvc-view-config.xml


Spring MVC Test Framework
VisitsViewTest.java


JSP custom tags

WEB-INF/tags
createOrUpdateOwnerForm.jsp


webjars

webjars declaration inside pom.xml

Resource mapping in Spring configuration

sample usage in JSP



Dandelion-datatables

ownersList.jsp
vetList.jsp
web.xml
datatables.properties



Thymeleaf branch

See here


Branch using GemFire and Spring Data GemFire instead of ehcache (thanks Bijoy Choudhury)

See here


'Service' and 'Repository' layersFiles


Transactions

business-config.xml
ClinicServiceImpl.java



Cache

tools-config.xml
ClinicServiceImpl.java



Bean Profiles

business-config.xml
ClinicServiceJdbcTests.java
web.xml



JdbcTemplate

business-config.xml
jdbc folder


JPA

business-config.xml
jpa folder


Spring Data JPA

business-config.xml
springdatajpa folder


OthersFiles


Gradle branch

See here

## Interaction with other open source projects

One of the best parts about working on the Spring Petclinic application is that we have the opportunity to work in direct contact with many Open Source projects. We found some bugs/suggested improvements on various topics such as Spring, Spring Data, Bean Validation and even Eclipse! In many cases, they've been fixed/implemented in just a few days.
Here is a list of them:


Name
Issue


Spring JDBC: simplify usage of NamedParameterJdbcTemplate
SPR-10256 and SPR-10257


Bean Validation / Hibernate Validator: simplify Maven dependencies and backward compatibility

HV-790 and HV-792



Spring Data: provide more flexibility when working with JPQL queries

DATAJPA-292



Eclipse: validation bug when working with .tag/.tagx files (has only been fixed for Eclipse 4.3 (Kepler)). See here for more details.

STS-3294