个人信息增删改查和刷新(JDBC)

个人信息增删改查和刷新(JDBC)

个人信息增删改查和刷新(JDBC)
添加
个人信息增删改查和刷新(JDBC)
修改
个人信息增删改查和刷新(JDBC)
标题
个人信息增删改查和刷新(JDBC)
删除

                               以上为效果图

 

                              以下为代码部分

public interface IUserImpl {
    // 定义方法

    public List<Student> seleAll(String name);

    // 查询 通过某些字段进行查询
    // Student selectName(String name);

    // 添加信息
    public int add(Student student);

    // 删除方法
    public int delete(int id);

    public Student selectId(int id);

    public int update(Student student);
}

 

 

public class UserDao implements IUserImpl {

    @Override
    public List<Student> seleAll(String name) {
        List<Student> list = new ArrayList<Student>();
        Connection conn = DBUtil.getConnection();
        String sql = "";
        try {
            if (name != null) {
                sql = "select * from student where name like '%" + name + "%'";
            } else {
                sql = "select * from student";
            }

            PreparedStatement ps = conn.prepareStatement(sql);
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                Student s = new Student();
                s.setId(rs.getInt("id"));
                s.setName(rs.getString("name"));
                s.setAge(rs.getInt("age"));
                s.setPhone(rs.getString("phone"));
                s.setSchool(rs.getString("school"));
                s.setClassName(rs.getString("classname"));
                list.add(s);

            }
        } catch (Exception e) {
            // TODO: handle exception
        }
        return list; // 返回值 切记
    }

    @Override
    public int add(Student student) {
        Connection conn = DBUtil.getConnection();
        int n = 0;
        try {
            // 对应数据库五个值
            String sql = "insert into student values(?,?,?,?,?,?)"; 
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1, student.getId());
            ps.setString(2, student.getName());
            ps.setInt(3, student.getAge());
            ps.setString(4, student.getPhone());
            ps.setString(5, student.getSchool());
            ps.setString(6, student.getClassName());
            n = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        DBUtil.close(conn);
        return n;
    }

    @Override
    public int delete(int id) {
        Connection conn = DBUtil.getConnection();
        String sql = "delete from student where id=?";
        int n = 0;
        try {
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1, id);
            n = ps.executeUpdate();
        } catch (Exception e) {
            // TODO: handle exception
        }
        return n;
    }

    @Override
    public Student selectId(int id) {
        // TODO Auto-generated method stub
        Student s= new Student();
        Connection conn = DBUtil.getConnection();
        String sql = "select * from student where id=?";
        try {
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setInt(1, id);
            ResultSet rs = ps.executeQuery();
            while (rs.next()) {
                s.setId(rs.getInt("id"));
                s.setName(rs.getString("name"));
                s.setAge(rs.getInt("age"));
                s.setPhone(rs.getString("phone"));
                s.setSchool(rs.getString("school"));
                s.setClassName(rs.getString("classname"));
            }
        } catch (Exception e) {
            // TODO: handle exception
        }
        return s;
    }

    @Override
    public int update(Student student) {
        Connection conn = DBUtil.getConnection();
        String sql="update student set name=?,age=?,phone=?,school=?,classname=? where id=?";
        int n=0;    
        try {
            PreparedStatement ps = conn.prepareStatement(sql);
            ps.setString(1, student.getName());
            ps.setInt(2, student.getAge());
            ps.setString(3, student.getPhone());
            ps.setString(4, student.getSchool());
            ps.setString(5, student.getClassName());
            ps.setInt(6, student.getId());
            n=ps.executeUpdate();
        } catch (Exception e) {
            // TODO: handle exception
        }
        return n;
    }

}

 

package com.lsx;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

import com.Dao.IUserImpl;
import com.Dao.UserDao;
import com.entity.Student;

public class AddStudent extends JFrame{
   JPanel jPanel  = new JPanel();
   JLabel jLabel = new JLabel("id: ");
   JTextField field = new JTextField(15);

   JLabel jLabel2 = new JLabel("姓名: ");
   JTextField field2 = new JTextField(15);

   JLabel jLabel3 = new JLabel("年龄: ");
   JTextField field3 = new JTextField(15);

   JLabel jLabel4 = new JLabel("电话: ");
   JTextField field4 = new JTextField(15);

   JLabel jLabel5 = new JLabel("学校: ");
   JTextField field5 = new JTextField(15);

   JLabel jLabel6 = new JLabel("班级: ");
   JTextField field6 = new JTextField(15);

   
   JButton button  = new JButton("添加");
   public Frame06 frame06;
   
    public AddStudent(final Frame06 frame06){
       this.frame06=frame06;
        this.setTitle("添加");
       this.setSize(400, 300);
       this.setLocationRelativeTo(null);
       this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
       jPanel.add(jLabel);
       jPanel.add(field);
       
       jPanel.add(jLabel2);
       jPanel.add(field2);
       
       jPanel.add(jLabel3);
       jPanel.add(field3);
       
       jPanel.add(jLabel4);
       jPanel.add(field4);
       
       jPanel.add(jLabel5);
       jPanel.add(field5);
       jPanel.add(jLabel6);
       jPanel.add(field6);
       jPanel.add(button);
       
       
       button.addActionListener(new ActionListener() {
        
        @Override
        public void actionPerformed(ActionEvent arg0) {
            // TODO Auto-generated method stub
            Student student =new Student();
            String id=field.getText();
            String name=field2.getText();
            String age=field3.getText();
            String phone=field4.getText();
            String school=field5.getText();
            String classname=field6.getText();
            
            student.setId(Integer.parseInt(id));
            student.setName(name);
            student.setAge(Integer.parseInt(age));
            student.setPhone(phone);
            student.setSchool(school);
            student.setClassName(classname);
            
        IUserImpl impl = new UserDao();
        int n=impl.add(student);
        if(n>0){
           JOptionPane.showMessageDialog(null, "添加成功");    
           //关闭窗口
           AddStudent.this.dispose();
           frame06.showTime("");
         }else{
             JOptionPane.showMessageDialog(null, "添加失败");    
         }
        }
    });
       
       
       
       this.add(jPanel);
       this.setVisible(true);
       
   }
    public static void main(String[] args) {
    //    new AddStudent();
    }
}
 

package com.lsx;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

import com.Dao.IUserImpl;
import com.Dao.UserDao;
import com.entity.Student;

public class Update extends JFrame{
    JPanel jPanel=new JPanel();
    JLabel jLabel=new JLabel("id:");
    JTextField field=new JTextField(15);
    JLabel jLabel1=new JLabel("姓名:");
    JTextField field1=new JTextField(15);
    JLabel jLabel2=new JLabel("年龄:");
    JTextField field2=new JTextField(15);
    JLabel jLabel3=new JLabel("电话:");
    JTextField field3=new JTextField(15);
    JLabel jLabel4=new JLabel("学校:");
    JTextField field4=new JTextField(15);
    JLabel jLabel5=new JLabel("班级:");
    JTextField field5=new JTextField(15);
    JButton button=new JButton("修改");
    
    IUserImpl impl=new UserDao();
    public Update(String id,final Frame06 frame06) {
        this.setTitle("修改");
        this.setSize(300, 500);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        //加载数据
        Student student=impl.selectId(Integer.parseInt(id));
        field.setText(student.getId()+"");
        field1.setText(student.getName());
        field2.setText(student.getAge()+"");
        field3.setText(student.getPhone());
        field4.setText(student.getSchool());
        field5.setText(student.getClassName());
        
        jPanel.add(jLabel);
        jPanel.add(field);
        jPanel.add(jLabel1);
        jPanel.add(field1);
        jPanel.add(jLabel2);
        jPanel.add(field2);
        jPanel.add(jLabel3);
        jPanel.add(jLabel4);
        jPanel.add(field4);
        jPanel.add(jLabel5);
        jPanel.add(field5);
        jPanel.add(button);
        button.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent e) {
                //获取数据
                Student student =new Student();
                String id=field.getText();
                String name=field1.getText();
                String age=field2.getText();
                String phone=field3.getText();
                String school=field4.getText();
                String classname=field5.getText();
                //输出id sysout(id)
                student.setId(Integer.parseInt(id));
                student.setName(name);
                student.setAge(Integer.parseInt(age));
                student.setPhone(phone);
                student.setSchool(school);
                student.setClassName(classname);
                 //sysout(student)                
                int n=impl.update(student);
                //sysout(n)
                if(n>0){
                    
                    JOptionPane.showMessageDialog(null, "修改成功");
                    Update.this.dispose();
                    frame06.showTime("");
                }else{
                    JOptionPane.showMessageDialog(null, "修改失败");
                }
            }
        });
        this.add(jPanel);
        this.setVisible(true);
        
    }
 
}

package com.lsx;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;
import java.util.List;
import java.util.Vector;


import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.table.DefaultTableModel;
import com.Dao.IUserImpl;
import com.Dao.UserDao;
import com.entity.Student;
//ok了
public class Frame06 extends JFrame{
    //最上面的查询
    JPanel jPanel = new JPanel();
    JLabel jLabel = new JLabel("姓名:");
    JTextField field = new JTextField(15);
    JButton button = new JButton("查询");
    
    //表单
    JTable jTable = new JTable();
    //设置表单样式
    DefaultTableModel dtModel = new DefaultTableModel(); 
        //设置滚动  分页
    JScrollPane pane = new JScrollPane(jTable);  //把表单放在滚动中间
    //三部分 按钮 add delete flush update 
    JPanel jPanel2 = new JPanel();
    JButton button2 = new JButton("增加");
    JButton button3 = new JButton("删除");
    JButton button4 = new JButton("修改");
    JButton button5 = new JButton("刷新");
    IUserImpl impl = new UserDao();
    //显示所有数据的一个方法
    public void showTime(String name){
        
        List<Student> students = impl.seleAll(name);
        
        int n=dtModel.getRowCount();
//        System.out.println("122:"+n);
        for (int i = 0; i < n; i++) {
            dtModel.removeRow(0);   //相当于刷新
        }
        for(Student student:students){
            Vector<Object> vector = new Vector<Object>();
            vector.add(student.getId());
            vector.add(student.getName());
            vector.add(student.getAge());
            vector.add(student.getPhone());
            vector.add(student.getSchool());
            vector.add(student.getClassName());
            dtModel.addRow(vector);
           System.out.println(student);
        }
    }
    
    
    public Frame06(){
        this.setTitle("表单");
        this.setSize(400, 300);
        this.setLocationRelativeTo(null);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        jPanel.add(jLabel);
        jPanel.add(field);
        jPanel.add(button);
        
        dtModel.addColumn("id");
        dtModel.addColumn("姓名");
        dtModel.addColumn("年龄");
        dtModel.addColumn("电话");
        dtModel.addColumn("学校");
        dtModel.addColumn("班级");
        jTable.setModel(dtModel);
        showTime("");
        //查询
        button.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent arg0) {
                String name = field.getText();
                showTime(name);                
            }
        });
        
        jPanel2.add(button2);
        jPanel2.add(button3);
        jPanel2.add(button4);
        jPanel2.add(button5);
        //增加
        button2.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent e) {
                //先到增加页面   new Frame06()
                //调用showTime方法
                new AddStudent(Frame06.this);
            }
        }); 
        //删除
        button3.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent e) {
               int c = jTable.getSelectedRow();
               System.out.println("第几行"+c);
               String id=jTable.getValueAt(c, 0).toString();
               int n=impl.delete(Integer.parseInt(id));
               if(n>0){
                   JOptionPane.showMessageDialog(null, "删除成功");
                   showTime("");
               }else{
                   JOptionPane.showMessageDialog(null, "删除失败");
               }
               
            }
        });
        //修改
        button4.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent arg0) {
                // TODO Auto-generated method stub
                int c = jTable.getSelectedRow();
                System.out.println(c);
                String id=jTable.getValueAt(c, 0).toString();
                new Update(id,Frame06.this);
            }
        });
        //刷新   就是把文本框内容清空,再把信息都显示出来
        button5.addActionListener(new ActionListener() {
            
            @Override
            public void actionPerformed(ActionEvent e) {
                //查询文本框是不是为空
                field.setText("");
                //再调显示方法
                showTime("");
                
            }
        });
        
        this.getContentPane().add(jPanel,"North");
        this.getContentPane().add(pane,"Center");
        this.getContentPane().add(jPanel2,"South");
        
        this.setVisible(true);
        
    }
    public static void main(String[] args) {
        new Frame06();
    }
}
 

package com.entity;

public class Student {
  private int id;
  private String name;
  private int age;
  private String phone;
  private String school;
  private String ClassName;
public int getId() {
    return id;
}
public void setId(int id) {
    this.id = id;
}
public String getName() {
    return name;
}
public void setName(String name) {
    this.name = name;
}
public int getAge() {
    return age;
}
public void setAge(int age) {
    this.age = age;
}
public String getPhone() {
    return phone;
}
public void setPhone(String phone) {
    this.phone = phone;
}
public String getSchool() {
    return school;
}
public void setSchool(String school) {
    this.school = school;
}
public String getClassName() {
    return ClassName;
}
public void setClassName(String className) {
    ClassName = className;
}
public Student(int id, String name, int age, String phone, String school, String className) {
    super();
    this.id = id;
    this.name = name;
    this.age = age;
    this.phone = phone;
    this.school = school;
    ClassName = className;
}

public Student() {
    super();
}
@Override
public String toString() {
    return "Student [id=" + id + ", name=" + name + ", age=" + age + ", phone=" + phone + ", school=" + school
            + ", ClassName=" + ClassName + "]";
}
  
  
}
 

相关文章:

  • 2022-12-23
  • 2021-12-03
  • 2021-07-05
  • 2021-10-07
  • 2022-12-23
  • 2021-10-22
  • 2021-11-03
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-10-23
  • 2022-12-23
  • 2021-11-05
  • 2022-01-28
  • 2021-09-16
相关资源
相似解决方案