Skip to content

Latest commit

 

History

History
184 lines (124 loc) · 6.82 KB

README.md

File metadata and controls

184 lines (124 loc) · 6.82 KB

T-JAV-501-NAN-5-1-dashboard-maxime.germond

Dashboard

THE PROJECT

The purpose of this project is to go further with Java through the creation of a dashboard. To do this, you need to implement a web application that works like Netvibes.

Start the application :

  1. Create a new mysql database by running this file : createDatabase.sql

  2. Setup application.properties.example :

IntelliJ Idea
  1. Build the project in a new intellij project
  2. Run DashboardApplication.java
  3. Go to http://localhost:8080
Tomcat
  1. Run ./gradlew build
  2. Copy build/libs/dashboard-0.0.1-SNAPSHOT.war (in the build/libs/ folder) into the webapps folder of tomcat
  3. From a terminal navigate to tomcat/bin folder and execute
    • catalina.bat run (on Windows)
    • catalina.sh run (on Unix-based systems)
  4. Go to http://localhost:8080/dashboard-0.0.1-SNAPSHOT

Services & widgets :

  • Weather

    • Get the weather of the city provided
    • Get the forecast weather of the city provided
  • Youtube

    • Get the informations of a video selected in the list provided
    • Get the informations of a channel selected in the list provided
    • Get the informations of a video you search
  • Steam

    • Get the news of a game selected in the list provided
  • Movies

    • Get the top 5 popular movies in a range of time between two dates
    • Get the informations of the movie you want
  • Love calculator

    • Get the percentage of chances between two people

Project structure :

  • DashboardApplication.java Is the entry point of the application
  • about Contains the class that help to create the about.json file
  • configuration Contains the file for the web security configuration
  • controller Contains all the controllers of the APIs
  • model Contains the models for the authentication
  • repository Contains the repositories for the authentication
  • service Contains the services for the authentication
Other :

APIs :

About

When calling :

  • GET application-url/about.json Get information about the APIs in a json file
Login

When calling :

  • GET application-url/login Set the login page of the application

  • POST application-url/login?user_name=user_name&password=password Login into the application if the credentials are in accordance with the values in the database

  • GET application-url/registration Set the registration page of the application

  • POST application-url/registration Register an user with the given params in the x-www-form-urlencoded type

  • GET application-url/user/home Set the home page of the application for an user

  • GET application-url/admin/home Set the home page of the application for an admin

LoveCalculator

When calling :

Movies

When calling :

Steam

When calling :

User

When calling :

  • PUT application-url/saveDashboard
    • Register the dashboard in the database
Weather

When calling :

Youtube

When calling :