A comprehensive Java-based Tourism Management System designed to streamline the operations of tourism agencies in Ethiopia. This system facilitates the management of tourists, tour guides, hotels, tour packages, bookings, and payments.
-
Tourist Management
- Register and manage tourist information
- Track tourist bookings and history
- Manage passport and contact details
-
Guide Management
- Manage tour guides with their specializations
- Track guide availability and assignments
- Monitor guide performance and ratings
-
Hotel Management
- Maintain hotel information and amenities
- Track hotel bookings and availability
- Manage hotel ratings and reviews
-
Package Management
- Create and manage tour packages
- Set package prices and durations
- Track package popularity and bookings
-
Booking System
- Process tour bookings
- Manage booking status and confirmations
- Handle multiple tourist bookings
-
Payment Processing
- Process payments for bookings
- Support multiple payment methods
- Track payment status and history
- Java
- MySQL Database
- JDBC for database connectivity
- Swing for GUI interface
- Java Development Kit (JDK) 8 or higher
- MySQL Server 5.7 or higher
- Maven (for dependency management)
-
Clone the repository:
git clone https://github.com/yourusername/ethiopian-tourism-system.git
-
Set up the database:
# Run the database creation script mysql -u your_username -p < tourism_db.sql # Import sample data (optional) mysql -u your_username -p < sample_data.sql
-
Configure database connection:
- Update the database connection properties in
src/main/resources/database.properties - Set your MySQL username and password
- Update the database connection properties in
-
Build the project:
mvn clean install
-
Run the application:
java -jar target/tourism-system.jar
-
Login with default credentials:
- Username: admin
- Password: admin123
JAVA-PROJECT-main/
├── com/
│ └── tourism/
│ ├── dao/ # Data Access Objects
│ ├── model/ # Entity classes
│ ├── ui/ # User Interface components
│ └── util/ # Utility classes
├── lib/ # External libraries
├── tourism_db.sql # Database schema
├── sample_data.sql # Sample data
└── README.md # This file
The system uses the following main tables:
tourist- Stores tourist informationguide- Manages tour guide detailshotel- Contains hotel informationpackage- Stores tour package detailsbooking- Manages booking informationpayment- Handles payment records
- Fork the repository
- Create your 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
- OOP Project Instractor
- All contributors who have helped shape this project
For support, email alazarnega07@gmail.com
- Mobile application development
- Online payment gateway integration
- Multi-language support
- Advanced reporting features
- Guide rating system
- Tourist feedback system