Yesterday I finished my first web application. It stores business contact cards, just a tiny, monolithic web app project. There are 3 types of entities (User, Corporation, Customer) and it capable to store that entities in a Mysql database. Also there are 2 types of application domains: Customer and User Domain, also it is possible and easy to add new domains.
Entities and Basic Functions:
1- User: The people who use this app divided into two groups; one is admin user, who can not deleted and has CRUD permissions for all domains. And standard users, who created by admin and given different CRUD permissions for different application domains. The users who have create permission for user domain, can create users too.
2- Customer: They can create and edit by users. Removing of a customer has no effect on other entities except their own attributes, such as emails, telephone numbers etc. A customer can have only 1 relation with Corporation.
3- Corporation: The entities which can create and delete by users and must owned by customers. Removing a corporation cause removing all its related customers.
The Tools and Libraries Used
View | Serverside | IDE + Build + Test |
– Jsp 2.4 – Jstl 1.2 Bootstrap | – Java 1.8 – Servlet API 4 – Hibernate 5 – Hibernate Search 5 – Hibernate C3P0 – Log4j 2 – Mysql Community Server 5.7 – Tomcat Server 9 – Nginx Web Server (Reverse Proxy) + Cloudflare SSL – Ubuntu 18.04 Server | – Eclipse IDE for Enterprise – Maven – JUnit 5 – Git |
Source Code Repository: github.com/algunes/TechLog/tree/master/CustomersAndUsers/CustomersAndUsers
Deployed: aliyargunes.com/apps/cards/