Giter Club home page Giter Club logo

musicdatabase's Introduction

MusicDatabase

This is a web application created with Spring Boot and Spring Initializr which contains a Thymeleaf templated engine. The application use a SQLite JDBC database called Chinook, which is a music database. The database consist of multiple tables which are represented here and here. This application was developed as part of a full stack course at Experis Academy.

Website

The homepage can be accessed on http://localhost:8080/home when the application is running. The website has two views: the home-view and the search-view. The home-view lists five random artists, tracks and genres as a suggestion for the user to check out. The home-view also features a search function where the user can enter a phrase in order to find each track in the database that contain the given phrase. The search function will take the user to the search-view where the user will find information about each track that was found in the database. Screenshots of the two views can be found below.

home-view

search-view

API-endpoints

For this application a couple of endpoints was exposed which can be tested with postman. A collection of postman api calls can be found in the "Apicalls.postman_collection.json". Each endpoint returns its data in json format.

/api/fetch/customers

  • Returns information about each customer in the database

/api/update/customer

  • Updates the information of a customer in the database

/api/create/customer

  • Creates a new customer and adds it to the database

/api/fetch/countrystats

  • Fetch the number of customers from each country

/api/fetch/customers/invoice

  • Fetch the total spendings of all customers

api/fetch/customer/favoritegenre/{id}

  • Fetch the favorite genre of a given customer

/api/fetch/tracksfromsearch/

  • Fetches each track that contain the given search phrase in its name

/api/fetch/artists/

  • Fetches the name of each artist in the database

/api/fetch/genres/

  • Fetches the name of each genre in the database

/api/fetch/tracks/

  • Fetches the name of each track in the database

Goals with this application

  • Expose endpoints with Spring
  • Create a templated html page with templated data
  • Introduction to SQL queries (SELECT, JOIN, etc.)

This application was developed by Christopher Berglund & Hampus Olsson

musicdatabase's People

Contributors

heso113 avatar cberg9 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.