Java

Java Project Step by Step Using Postgresql Database

This java JDBC crud will teach you how to do basic database functions that are CREATE RETIEVE UPDATE and DELETE. using Postgresql Database. The INSERT, SELECT, UPDATE and DELETE statements can be used in any database system, because this is support by all relational database systems.this lesson will help you to learn java connect Postgresql Database.

The tutorial you learn java Postgresql crud operation step by step.  Crud operations are must when you developing  a java mini projects. learn how to INSERT, SELECT, UPDATE and DELETE in database by writing code to manage the records table in the database named lindaschool.  records table consist of following columns name,address,phone.

we will do the java best practice for understand java programming clearly and easily.

Feature of projects

  • The system shall be able to record student details : name,address,phone.
  • The system  shall be able to retrieve the student details : name,address,phone.
  • Then system shall be able to Edit and Delete the student details : name,address,phone.

Learn how to make this System Step by step

Step 1: Download JDK  Click here  follow the steps and install it.

Step 2: Download an appropriate jdbc driver Click here in order to connect jdbc and Postgresql.

Step 3: Download Postgresql. Click here   follow the steps and install it.

 

Establish the database connection

    Connection con;
    PreparedStatement pst;

    public void Connect()
    {  
        try {
            Class.forName("org.postgresql.Driver");
            con = DriverManager.getConnection("jdbc:postgresql://localhost:5434/Lindaschool", "postgres", "123" );
        } catch (ClassNotFoundException ex) {
            Logger.getLogger(StudentCrud.class.getName()).log(Level.SEVERE, null, ex);
        } catch (SQLException ex) {
            Logger.getLogger(StudentCrud.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

 

AddRecords

you can use the following code snippet to add the records in to database. paste the code inside the add button

 String name,address;
        
        int phone;
        
        name = txtName.getText();
        address = txtAddress.getText();
        phone = Integer.parseInt(txtPhone.getText());
        
        
        try {
            pst = con.prepareStatement("insert into records (name,address,phone)values(?,?,?)");
            pst.setString(1,name);
            pst.setString(2,address);
            pst.setInt(3,phone);
            pst.executeUpdate();
            Table();
            txtName.setText("");
             txtAddress.setText("");
              txtPhone.setText("");
             txtName.requestFocus();
            JOptionPane.showMessageDialog(this, "Successfully Saved");
        } catch (SQLException ex) {
            Logger.getLogger(StudentCrud.class.getName()).log(Level.SEVERE, null, ex);
        }


View Records

       public void Table()
    {
        try {
            pst = con.prepareStatement("SELECT * FROM records");
            ResultSet Rs = pst.executeQuery();
            DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
           
            ResultSetMetaData RSMD = Rs.getMetaData();
            int CC = RSMD.getColumnCount();
            DefaultTableModel DFT = (DefaultTableModel) jTable1.getModel();
            DFT.setRowCount(0);
            
            while(Rs.next()){
                
                  Vector v2 = new Vector();
           
                for (int ii = 1; ii <= CC; ii++) {
                    v2.add(Rs.getInt("id"));
                    v2.add(Rs.getString("name"));
                    v2.add(Rs.getString("address"));
                     v2.add(Rs.getInt("phone"));
                    
                }
                DFT.addRow(v2); 
            }
      
            jTable1.setModel(model);
        } catch (SQLException ex) {
            ex.printStackTrace();
        }
           
    }

you can use the following code snippet to retrieve the data stored in the database and present it to users in a proper format. create a method table_update() .paste the method inside the constructor of the class.when the form is loaded all the records will be shown on the jTable.

Form Constructor


   public StudentCrud() {
        initComponents();
        Connect();
        Table();
    

Edit return

you can use the following code snippet to select row of the jTable.after selected the row records will displyed in a relavent jTextfields.

Paste code inside the jTableMouseClicked event


        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        int selectedIndex = jTable1.getSelectedRow();
        
        int id = Integer.parseInt(model.getValueAt(selectedIndex, 0).toString());
        txtName.setText(model.getValueAt(selectedIndex, 1).toString());   
        txtAddress.setText(model.getValueAt(selectedIndex, 2).toString());
        txtPhone.setText(model.getValueAt(selectedIndex, 3).toString());


Edit

you can use the following code snippet to Edit the records.

 

Paste code inside the Edit button.


        String name,address;
        int phone;
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        int selectedIndex = jTable1.getSelectedRow();
        
        int id = Integer.parseInt(model.getValueAt(selectedIndex, 0).toString());
                  
        name = txtName.getText();
        address = txtAddress.getText();
        phone = Integer.parseInt(txtPhone.getText());
        
       
        try {
            pst = con.prepareStatement("update records set name =?,address = ?,phone =? where id = ?");
            pst.setString(1,name);
            pst.setString(2,address);
            pst.setInt(3,phone);
             pst.setInt(4,id);
            pst.executeUpdate();
            Table();
            txtName.setText("");
             txtAddress.setText("");
              txtPhone.setText("");
             txtName.requestFocus();
            JOptionPane.showMessageDialog(this, "Successfully Updatedd");
        } catch (SQLException ex) {
            Logger.getLogger(StudentCrud.class.getName()).log(Level.SEVERE, null, ex);
        }



Delete

you can use the following code snippet to Delete the records.

Paste code inside the Delete button.

  String name,address;
        
        int phone;
        DefaultTableModel model = (DefaultTableModel) jTable1.getModel();
        int selectedIndex = jTable1.getSelectedRow();
        
        int id = Integer.parseInt(model.getValueAt(selectedIndex, 0).toString());
                  
        
       
        try {
            pst = con.prepareStatement("delete from records  where id = ?");
             pst.setInt(1,id);
            pst.executeUpdate();
            Table();
            txtName.setText("");
             txtAddress.setText("");
              txtPhone.setText("");
             txtName.requestFocus();
            JOptionPane.showMessageDialog(this, "Successfully Deleteddd");
        } catch (SQLException ex) {
            Logger.getLogger(StudentCrud.class.getName()).log(Level.SEVERE, null, ex);
        }


i have attached the video link below. which will do this tutorials step by step.

 

admin

Recent Posts

GitHub Copilot vs Microsoft Copilot Best AI Tool to Use in 2025

GitHub is a powerful tool used by teams and developers around the globe. This guide is…

2 days ago

Chat with Claude AI Free – Your Super-Smart AI Buddy

It's like having a super-smart buddy that is always there to help you write stories,…

6 days ago

Best Festivals UK 2025 [Free Guide Included]

The UK is known for its rich history, diverse culture, and most of all  its…

1 week ago

Bank Holidays 2025 UK – Plan Your Perfect Long Weekends

Do you have a plan for your next holiday? Being aware of the Bank Holidays within the…

1 week ago

Master Cursor AI Full Guide for Students & Creators

The world is rapidly changing of software development AI-assisted tools for coding have become the main focus. As…

1 week ago

Google Gemini AI Free AI Tool for Students & Creators

Google Gemini AI is among the top talked about developments. What exactly is it? What…

1 week ago