Skip to content

Full-stack template with combination of Java | Maven | Spring Framework

License

Notifications You must be signed in to change notification settings

kyluong09/Business-Management-Database

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

61 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Business Management Database

BMDB is a full-stack template with combination of Java | Maven | Spring Framework. This can be used for starter to create a complete build-in business structure, CRUD operations, authentication, Restful API.

Project's for education purposes at University of Wisconsin - Parkside

Contents

  1. Technologies
  2. Dependencies
  3. Getting Started
  4. Prerequisties
  5. Installation
  6. MySQL Workbench
  7. Docker
  8. License

Technologies

Dependencies

Dependency MVNRepository
Spring Boot Starter Web org.springframework.boot
Spring Boot Starter Data JPA org.springframework.boot
Spring Boot Starter Data REST org.springframework.boot
Spring Boot Starter Security org.springframework.boot
Spring Boot Starter Thymeleaf org.springframework.boot
Spring Boot Devtools org.springframework.boot
MySQL Connector Java MySQL

Getting Started

Prerequisties

Please make sure have all these requirements before run an application

Installation

$ git clone https://github.com/kyluong09/Business-Management.git

MySQL Workbench

In order for this application to work, we need to set up a database with MySQL Workbench and SQL script which is included inside project directory

- Connect MySQL Workbench with root username/password
- Open SQL script from directory ../Business-Management/sql_script
- Execute the CreateDatabase.sql script
Basic Business Schema Authentication Schema

Application Properties

../Business-Management-Database/src/main/resources/

After finish setting up MySQL Workbench, change spring.database.username/password value with Workbench username/password

<!--MySQL Connection Properties-->
spring.datasource.url=jdbc:mysql://localhost:3306/Business_Management_Database
spring.datasource.username= <MySQL Workbench connection USERNAME>
spring.datasource.password= <MySQL Workbench connection PASSWORD>

NOTE: Without MySQL database and Application Properties set up, it would causes SPRING BOOT BUILD FAIL

Run

$ cd <dir name>
$ mvn clean package 
$ java -jar target/app.jar

Enter http://localhost:8080 on BROWSER

There is authentication layer, you can use DEFAULT username/password that is generated when you execute the CreateDatabase.sql scriptor manuanlly create a new account on MySQL, use sign up feature
username: admin
password: password

Docker

BMDB is built-in with Docker Maven, so that make it easy to install and deploy application to Docker Container. By default, the application runs on PORT 8080 and Dockerfile has expost value 8080.

$ cd .../business-management-database
$ mvn clean package docker:build

When creating application image on Docker, a system automacally generate both current project tag version and latest tag version

To view all current docker images

$ docker images
REPOSITORY                       TAG             IMAGE ID            CREATED             SIZE
business-management-database     1.1.8           e1253af81705f       x seconds ago       510MB
business-management-database     latest          e1253af81705f       x seconds ago       510MB
openjdk                          latest          8321a029b6add       x seconds ago       470MB

To run business-management-database image on Docker Container

$ docker run -p 8080:8080 business-management-database:<tag>
OR 
$ docker run -p 8080:8080 e12:<tag>

License

Thi project is licensed under MIT License - see the LICENSE file for details