Skill-Bazzar is a comprehensive e-learning platform that connects students, instructors, and administrators in a seamless educational ecosystem. Built with Java Enterprise technologies, it provides robust course management, user authentication, and payment processing capabilities.
- Students: Browse courses, make purchases, access learning materials
- Instructors: Create and manage courses, upload lectures, track sales
- Administrators: Oversee platform operations, manage users, monitor transactions
- Dynamic course creation and editing
- Video lecture uploads and management
- Course categorization and search functionality
- Sales tracking and analytics
- Role-based access control (RBAC)
- Secure login validation
- Session management
- Password protection
Skill-Bazzar/
βββ src/main/java/com/ninfinity/
β βββ controller/ # Servlet controllers
β βββ dao/ # Data Access Objects
β βββ entities/ # JPA entities
β βββ helper/ # Utility classes
βββ src/main/webapp/ # Web resources
β βββ WEB-INF/ # Configuration files
β βββ JSP pages # View templates
β βββ Static resources # CSS, JS, images
βββ Database # MySQL database schema
| Component | Technology | Version |
|---|---|---|
| Backend | Java Servlet/JSP | Java 8+ |
| Database | MySQL | 5.7+ |
| Frontend | HTML5, CSS3, JavaScript | - |
| UI Framework | Bootstrap | 4.x |
| Server | Apache Tomcat | 8.5+ |
| Build Tool | Maven | 3.6+ |
Before running this application, ensure you have the following installed:
- Java Development Kit (JDK) 8 or higher
- Apache Tomcat 8.5 or higher
- MySQL Database 5.7 or higher
- Maven 3.6 or higher (for building)
- Git (for version control)
git clone https://github.com/ArjunPatil15/SkillBazar.git
cd skill-bazzar-- Create database
CREATE DATABASE skill_bazar;
USE skill_bazar;
-- Import the provided SQL schema
-- (Database schema file will be provided separately)Update the database connection parameters in src/main/java/com/ninfinity/dao/DatabaseConnect.java:
// Update these values according to your MySQL configuration
private static final String URL = "jdbc:mysql://localhost:3306/skill_bazar";
private static final String USERNAME = "your_username";
private static final String PASSWORD = "your_password";mvn clean compile
mvn package- Copy the generated WAR file to Tomcat's
webappsdirectory - Start Tomcat server
- Access the application at
http://localhost:8080/skill-bazzar
Set the following environment variables if needed:
export DB_HOST=localhost
export DB_PORT=3306
export DB_NAME=skill_bazar
export DB_USER=your_username
export DB_PASSWORD=your_passwordKey configuration files:
WEB-INF/web.xml- Web application configurationMETA-INF/MANIFEST.MF- Application manifest- Database connection settings in DAO classes
- Registration: Create a new account with email and password
- Course Discovery: Browse available courses by category
- Purchase: Select and purchase desired courses
- Learning: Access course materials and video lectures
- Progress Tracking: Monitor learning progress
- Account Setup: Register as an instructor
- Course Creation: Add new courses with descriptions and pricing
- Content Management: Upload video lectures and course materials
- Analytics: Track course sales and student engagement
- Revenue Management: Monitor earnings and payment status
- User Management: Oversee student and instructor accounts
- Platform Monitoring: Track overall system performance
- Transaction Oversight: Monitor payment processing and sales
- Content Moderation: Ensure quality and compliance
- Database Indexing: Optimized database queries
- Connection Pooling: Efficient database connection management
- Caching: Strategic data caching implementation
- Resource Optimization: Optimized static resource delivery
We welcome contributions to improve Skill-Bazzar! Please follow these steps:
- Fork the repository
- Create a feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add some AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
- Follow Java coding conventions
- Add appropriate comments and documentation
- Include unit tests for new features
- Ensure all tests pass before submitting
If you encounter any bugs or have feature requests:
- Check existing issues to avoid duplicates
- Create a new issue with detailed description
- Include steps to reproduce the problem
- Provide system information and error logs
- Bootstrap for the responsive UI framework
- MySQL for the robust database system
- Apache Tomcat for the application server
- Java Community for the excellent
Made with β€οΈ by Arjun