Below is a beginner-friendly, step-by-step guide to create a Java-based School Database Management System using NetBeans + XAMPP (MySQL).
This guide covers project setup, database creation, connecting Java to MySQL, CRUD operations, and sample code.


1. Install Required Tools

✔ Install NetBeans IDE

Download from: Apache NetBeans (search in browser).

✔ Install XAMPP Server

Includes MySQL and phpMyAdmin.

✔ Install JDK (Java Development Kit)

Minimum Java 8 or above.


2. Start XAMPP and Create MySQL Database

  1. Open XAMPP Control Panel
  2. Start:
    • Apache (optional, only for phpMyAdmin)
    • MySQL
  3. Open phpMyAdmin (localhost/phpmyadmin)

✔ Create a new database:

school_db

✔ Create tables:

students table

CREATE TABLE students (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100),
  class VARCHAR(20),
  section VARCHAR(5),
  email VARCHAR(100)
);

teachers table

CREATE TABLE teachers (
  id INT AUTO_INCREMENT PRIMARY KEY,
  name VARCHAR(100),
  subject VARCHAR(50),
  phone VARCHAR(15)
);

3. Create Java Project in NetBeans

  1. Open NetBeans → File → New Project
  2. Select: Java with Ant → Java Application
  3. Project Name:
SchoolManagementSystem
  1. Uncheck “Create Main Class” (optional).

4. Add MySQL JDBC Connector

Java needs a connector to communicate with MySQL.

Steps:

  1. Download mysql-connector-j.jar
  2. In NetBeans → Right click project → Properties
  3. Libraries → Add JAR/Folder
  4. Select the downloaded JAR.

Now Java can connect to MySQL.


5. Create Database Connection Class

Create a package:

com.school.db

Create a class:

package com.school.db;

import java.sql.Connection;
import java.sql.DriverManager;

public class DBConnection {
    public static Connection getConnection() {
        Connection con = null;
        try {
            Class.forName("com.mysql.cj.jdbc.Driver"); 
            con = DriverManager.getConnection(
                "jdbc:mysql://localhost:3306/school_db",
                "root", ""
            );
            System.out.println("Database Connected!");
        } catch (Exception e) {
            e.printStackTrace();
        }
        return con;
    }
}

6. Create GUI (Swing) for School Management

You can create forms using:

NetBeans → New → JFrame Form

Common screens:

  • Student Registration Form
  • Teacher Management Form
  • Dashboard
  • Search/Delete/Update Forms

7. Insert Data into MySQL (Java Code Example)

Example: Add Student

Connection con = DBConnection.getConnection();

String sql = "INSERT INTO students(name, class, section, email) VALUES (?, ?, ?, ?)";

PreparedStatement pst = con.prepareStatement(sql);

pst.setString(1, txtName.getText());
pst.setString(2, txtClass.getText());
pst.setString(3, txtSection.getText());
pst.setString(4, txtEmail.getText());

pst.executeUpdate();
JOptionPane.showMessageDialog(this, "Student Added Successfully!");

8. Fetch All Students (Display in JTable)

DefaultTableModel model = (DefaultTableModel) tableStudents.getModel();
model.setRowCount(0);

Connection con = DBConnection.getConnection();
Statement st = con.createStatement();
ResultSet rs = st.executeQuery("SELECT * FROM students");

while (rs.next()) {
    model.addRow(new Object[]{
        rs.getInt("id"),
        rs.getString("name"),
        rs.getString("class"),
        rs.getString("section"),
        rs.getString("email")
    });
}

9. Update Student Details

String sql = "UPDATE students SET name=?, class=?, section=?, email=? WHERE id=?";

PreparedStatement pst = con.prepareStatement(sql);
pst.setString(1, txtName.getText());
pst.setString(2, txtClass.getText());
pst.setString(3, txtSection.getText());
pst.setString(4, txtEmail.getText());
pst.setInt(5, Integer.parseInt(txtId.getText()));

pst.executeUpdate();
JOptionPane.showMessageDialog(this, "Student Updated!");

10. Delete Student

String sql = "DELETE FROM students WHERE id=?";

PreparedStatement pst = con.prepareStatement(sql);
pst.setInt(1, Integer.parseInt(txtId.getText()));

pst.executeUpdate();
JOptionPane.showMessageDialog(this, "Student Deleted!");

Project Structure Example

SchoolManagementSystem/
│
├── src/
│   ├── com.school.db/
│   │     └── DBConnection.java
│   ├── com.school.ui/
│   │     ├── StudentForm.java
│   │     ├── TeacherForm.java
│   │     └── Dashboard.java
│   └── com.school.main/
│         └── Main.java
│
├── mysql-connector-j.jar
└── build.xml

Your Project is Ready!

You now have:
✔ Database created
✔ Java connected with MySQL
✔ CRUD operations
✔ GUI forms
✔ Fully working School Management System

Source Code Download Link

Categories: Source Code

0 Comments

Leave a Reply

Avatar placeholder

Your email address will not be published. Required fields are marked *