This is a simple Support and Ticketing System project built using Java EE and SQLite. The project is designed to handle support tickets, manage users, and provide administrative functionalities.
- User Authentication: Login system for users and administrators.
- Ticket Management: Create, view, and resolve tickets.
- Admin Dashboard: Administrative tools to monitor and manage tickets.
- Responsive Frontend: JSP-based frontend for user interaction.
- SQLite Database: Lightweight database for persistent storage.
The project is divided into two main modules:
Handles the user interface and core application logic:
- Controllers: Manages requests and responses.
- JSP Pages: Includes views like
loginPage.jsp
,adminPage.jsp
. - Utils: Utility classes for common operations.
Path: src/main/java/com/unsubble/web
Manages database access and data operations:
- Repositories: Handles CRUD operations.
- Entities: Maps database models to Java objects.
- Managers: Includes business logic for data manipulation.
Path: src/main/java/com/unsubble/backend
- Java 11 or higher
- Apache Tomcat or any Java EE application server
- SQLite
- Clone the repository:
git clone https://github.com/your-repo/TicketSystem.git
-
Import the project into your IDE (e.g., IntelliJ IDEA, Eclipse).
-
Configure the application server (e.g., Tomcat) and deploy the project.
-
Update the database connection in
persistence.xml
if needed:
<property name="javax.persistence.jdbc.url" value="jdbc:sqlite:database.db" />
- Start the server and access the application at:
http://localhost:8080/Web/
-
Backend:
- Java EE (Servlets, JSP)
- JPA (Java Persistence API)
- SQLite
-
Frontend:
- JSP
- HTML, CSS, JavaScript
-
Build Tools:
- Maven
- REST API: Provide RESTful endpoints for external integrations.
- Responsive Design: Improve frontend for mobile compatibility.
- Unit and Integration Tests: Enhance test coverage using JUnit.
- Role-Based Access Control: Expand user roles for more granular permissions.
- Statistics Dashboard: Add visual analytics for admin users.
Contributions are welcome! To contribute:
- Fork the repository.
- Create a new branch for your feature/bug fix.
- Submit a pull request with a detailed description.
This project is licensed under the MIT License.