Skip to content

About

alumni managing application edit view or add using servlet java and swing ui

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

Β 

History

45 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸŽ“ Alumni Management System

Java Tomcat MySQL Maven License Build Status

A robust, enterprise-grade web application for comprehensive alumni record management built with modern Java technologies and best practices.

✨ Features

  • πŸ” Secure Authentication & Authorization
  • πŸ“Š Advanced Data Management (CRUD operations)
  • πŸ” Powerful Search & Filtering
  • πŸ“± Responsive Design (Mobile-first approach)
  • 🎨 Modern UI/UX with Bootstrap 5
  • πŸ“ˆ Data Analytics & Reporting
  • πŸ”„ Real-time Updates
  • πŸ“€ Data Export/Import capabilities
  • πŸ›‘οΈ Input Validation & Security
  • πŸ“ Audit Trail & Logging

πŸš€ Quick Start

Prerequisites

πŸƒβ€β™‚οΈ One-Click Setup

# Clone the repository
git clone https://github.com/yourusername/alumni-management.git
cd alumni-management

# Run the automated setup script
./setup_tomcat.bat

# Deploy the application
./deploy_simple.bat

# Access the application
# http://localhost:8081/alumni-management

πŸ› οΈ Installation & Configuration

1. Database Setup

-- Create database
CREATE DATABASE alumni_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Use database
USE alumni_db;

-- Create alumni table with enhanced schema
CREATE TABLE alumni (
    id BIGINT PRIMARY KEY AUTO_INCREMENT,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(100) UNIQUE NOT NULL,
    graduation_year YEAR NOT NULL,
    course VARCHAR(100) NOT NULL,
    current_position VARCHAR(100),
    company VARCHAR(100),
    phone_number VARCHAR(20),
    address TEXT,
    linkedin_profile VARCHAR(255),
    github_profile VARCHAR(255),
    skills TEXT,
    achievements TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
    INDEX idx_email (email),
    INDEX idx_graduation_year (graduation_year),
    INDEX idx_company (company)
);

-- Insert sample data
INSERT INTO alumni (name, email, graduation_year, course, current_position, company) VALUES
('John Doe', 'john.doe@email.com', 2020, 'Computer Science', 'Software Engineer', 'Tech Corp'),
('Jane Smith', 'jane.smith@email.com', 2019, 'Business Administration', 'Product Manager', 'Innovation Inc');

2. Environment Configuration

Create src/main/resources/database.properties:

# Database Configuration
db.url=jdbc:mysql://localhost:3306/alumni_db?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true
db.user=your_username
db.password=your_secure_password
db.driver=com.mysql.cj.jdbc.Driver

# Connection Pool Settings
db.initialSize=5
db.maxActive=20
db.maxIdle=10
db.minIdle=5

# Application Settings
app.name=Alumni Management System
app.version=2.0.0
app.debug=false

3. Build & Deploy

# Clean and build
mvn clean package

# Deploy to Tomcat
mvn tomcat7:deploy

# Or use the provided scripts
./deploy.bat

πŸ—οΈ Architecture

alumni-management/
β”œβ”€β”€ πŸ“ src/
β”‚   β”œβ”€β”€ πŸ“ main/
β”‚   β”‚   β”œβ”€β”€ πŸ“ java/
β”‚   β”‚   β”‚   └── πŸ“ com/alumni/
β”‚   β”‚   β”‚       β”œβ”€β”€ πŸ“ dao/          # Data Access Objects
β”‚   β”‚   β”‚       β”œβ”€β”€ πŸ“ model/        # Entity Models
β”‚   β”‚   β”‚       β”œβ”€β”€ πŸ“ servlet/      # HTTP Servlets
β”‚   β”‚   β”‚       β”œβ”€β”€ πŸ“ service/      # Business Logic
β”‚   β”‚   β”‚       β”œβ”€β”€ πŸ“ util/         # Utility Classes
β”‚   β”‚   β”‚       └── πŸ“ config/       # Configuration
β”‚   β”‚   β”œβ”€β”€ πŸ“ resources/            # Configuration Files
β”‚   β”‚   └── πŸ“ webapp/               # Web Resources
β”‚   β”‚       β”œβ”€β”€ πŸ“ WEB-INF/
β”‚   β”‚       β”œβ”€β”€ πŸ“ views/            # JSP Pages
β”‚   β”‚       β”œβ”€β”€ πŸ“ css/              # Stylesheets
β”‚   β”‚       β”œβ”€β”€ πŸ“ js/               # JavaScript
β”‚   β”‚       └── πŸ“ images/           # Images
β”‚   └── πŸ“ test/                     # Test Cases
β”œβ”€β”€ πŸ“ target/                       # Build Output
β”œβ”€β”€ πŸ“ lib/                          # Dependencies
β”œβ”€β”€ πŸ“ scripts/                      # Deployment Scripts
β”œβ”€β”€ πŸ“„ pom.xml                       # Maven Configuration
β”œβ”€β”€ πŸ“„ README.md                     # This File
└── πŸ“„ .gitignore                    # Git Ignore Rules

πŸ”§ Development

Running Locally

# Start development server
mvn tomcat7:run

# Run tests
mvn test

# Generate documentation
mvn javadoc:javadoc

Code Quality

# Check code style
mvn checkstyle:check

# Run SonarQube analysis
mvn sonar:sonar

# Generate test coverage report
mvn jacoco:report

πŸ“Š API Endpoints

Method Endpoint Description
GET /alumni List all alumni
GET /alumni/{id} Get specific alumni
POST /alumni Create new alumni
PUT /alumni/{id} Update alumni
DELETE /alumni/{id} Delete alumni
GET /alumni/search Search alumni
GET /alumni/export Export data

πŸ§ͺ Testing

# Run unit tests
mvn test

# Run integration tests
mvn verify

# Run with coverage
mvn jacoco:prepare-agent test jacoco:report

πŸš€ Deployment

Production Deployment

# Build production WAR
mvn clean package -Pprod

# Deploy to production server
./deploy_production.bat

Docker Deployment

FROM tomcat:10.1-jdk21
COPY target/alumni-management.war /usr/local/tomcat/webapps/
EXPOSE 8080
CMD ["catalina.sh", "run"]

πŸ”’ Security Features

  • βœ… SQL Injection Prevention
  • βœ… XSS Protection
  • βœ… CSRF Token Validation
  • βœ… Input Sanitization
  • βœ… Session Management
  • βœ… Role-based Access Control

πŸ“± Browser Support

Browser Version Status
Chrome 90+ βœ… Full Support
Firefox 88+ βœ… Full Support
Safari 14+ βœ… Full Support
Edge 90+ βœ… Full Support

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ Changelog

See CHANGELOG.md for a detailed history of changes.

πŸ› Troubleshooting

Common Issues

Issue Solution
404 Error Check Tomcat logs, verify WAR deployment
Database Connection Verify MySQL service, check credentials
Compilation Errors Ensure JDK 21, run mvn clean install
Port Conflicts Change Tomcat port in server.xml

Getting Help

πŸ“„ License

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

πŸ™ Acknowledgments

  • Apache Tomcat - Web server and servlet container
  • MySQL - Database management system
  • Bootstrap - Frontend framework
  • JSTL - JSP Standard Tag Library
  • Maven - Build automation tool

πŸ“ž Contact


Made with ❀️ by the Alumni Management Team

GitHub stars GitHub forks GitHub watchers

About

alumni managing application edit view or add using servlet java and swing ui

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages