Skip to content

indrekru/design-patterns-spring-boot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

03a3114 · Nov 5, 2019

History

44 Commits
Feb 14, 2019
Feb 14, 2019
Jul 7, 2016
Nov 5, 2019
Feb 24, 2019
Feb 15, 2019

Repository files navigation

Design patterns in spring boot

CircleCI

This repository is a simple spring boot application, that demonstrates a few design patterns:

  • Singleton
  • Controller
  • Factory
  • Strategy
  • Proxy
  • Observer
  • Aspect-oriented programming

This demo application retrieves contact phone numbers from 2 different bank's websites (more banks can be added) with specific implementations per bank and offers a nice interface to hide the specifics.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See running for notes on how to run the project on a system.

Prerequisites

  1. Clone the project to your local environment:

    git clone https://github.com/indrekru/design-patterns-spring-boot.git
    
  2. You need maven installed on your environment:

    Mac (homebrew):

    brew install maven
    

    Ubuntu:

    sudo apt-get install maven
    

Installing

Once you have maven installed on your environment, install the project dependencies via:

mvn install

Testing

Run all tests:

mvn test

Running

Once you have installed dependencies, this can be run from the Application.java main method directly, or from a command line:

mvn spring-boot:run

Open browser and go to http://localhost:8080/api/v1/banks and you should see the results

Built With

Contributing

If you have any improvement suggestions please create a pull request and I'll review it.

Authors

  • Indrek Ruubel - Initial work - Github

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License

Acknowledgments