import java.awt.event.*;
10余年的安顺网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整安顺建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。创新互联建站从事“安顺网站设计”,“安顺网站推广”以来,每个客户项目都认真落实执行。
import javax.swing.*;
import java.awt.*;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class DeleteFrame extends JFrame implements ActionListener {
private MainFrame parentF;
JTextField jt1=new JTextField();
JTextField jt2=new JTextField();
JTextField JTextField_free=new JTextField();
JButton jb=new JButton("删除");
JOptionPane JOptionPane1 = new JOptionPane();
public DeleteFrame(MainFrame m){
super("删除学生信息 ");
parentF=m;
this.setSize( 400,250);
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
Container c=this.getContentPane();
c.setLayout(null);
JLabel j1=new JLabel("学 号");
JLabel j2=new JLabel("姓 名");
c.add(j1);
j1.setBounds(10,10,60,30);
c.add(jt1);
jt1.setBounds(70,10,100,30);
c.add(j2);
j2.setBounds(200,10,60,30);
c.add(jt2);
jt2.setBounds(250,10,100,30);
c.add(jb);
jb.setBounds(100,180,60,40);
jb.addActionListener(this);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
parentF.setVisible(true);
shutDown();
}
});
}
public void shutDown(){
this.dispose();
}
public void deleteRecord(int id){
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException ex){
System.exit(-1);
}
try{
String URL="jdbc:odbc:student1";
Connection con =DriverManager.getConnection(URL);
Statement stmt1=con.createStatement();
String SQL="delete from 成绩表 where id = " + id;
ResultSet rs=stmt1.executeQuery(SQL);
System.out.println(stmt1);
stmt1.close();
con.close();
JTextField_free.setText("");
JOptionPane1.showMessageDialog(this,"删除成功","消息",
JOptionPane.INFORMATION_MESSAGE);
}
catch(SQLException ex){
ex.printStackTrace();
}
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==jb){
this.deleteRecord(id);//id为所删记录的主键值
}
}
}
1.Student.java代码如下
/**
* 2016年5月12日上午11:03:22
*
* @author 3306 TODO 建立学生实体类
*
*/
public class Student {
private String stuNo;// 学号
private String stuName;// 姓名
public Student() {
super();
}
public Student(String stuNo, String stuName) {
super();
this.stuNo = stuNo;
this.stuName = stuName;
}
public String getStuNo() {
return stuNo;
}
public void setStuNo(String stuNo) {
this.stuNo = stuNo;
}
public String getStuName() {
return stuName;
}
public void setStuName(String stuName) {
this.stuName = stuName;
}
public String toString() {
return "No: " + this.stuNo + " Name: " + this.stuName;
}
}
2.OurClass.java代码如下
import java.util.ArrayList;
import java.util.List;
/**
* 2016年5月12日上午10:51:01
*
* @author 3306 TODO 定义常规操作类
*
*/
public class OurClass {
/*
* 存放学生的list
*/
private ListStudent stuList = new ArrayListStudent();
/**
* 添加学生
*
* @param stu
* 学生对象
*/
public void addStudent(Student stu) {
if (null != stu) {
stuList.add(stu);
}
}
/**
* 删除学生
*
* @param stuNo
* 学号
*/
public void delStudent(String stuNo) {
stuList.remove(findStudent(stuNo));
}
/**
* 显示全部学生
*/
public void displayAllStudent() {
for (int index = 0, size = stuList.size(); index size; index++) {
Student stu = stuList.get(index);
display(stu);
}
}
/**
* 显示学生信息
*
* @param stu
* 学生对象
*/
public void display(Student stu) {
System.out.println("This student's info: " + stu);
}
/**
* 查找学生
*
* @param stuNo
* 学号
* @return null or stu
*/
public Student findStudent(String stuNo) {
for (int index = 0, size = stuList.size(); index size; index++) {
Student stu = stuList.get(index);
if (stu.getStuNo().equals(stuNo)) {
return stu;
}
}
return null;
}
public static void main(String[] args) {
OurClass lab = new OurClass();
// 添加五个学生
System.out.println("\n\n----------------- Add Student -----------------\n");
for (int index = 0; index 5; index++) {
lab.addStudent(new Student("" + index, "stu" + index));
}
// 显示全部学生
System.out.println("\n\n----------------- Display Student -----------------\n");
lab.displayAllStudent();
// 删除第一位学生
System.out.println("\n\n----------------- Delete Student -----------------\n");
lab.delStudent("" + 0);
// 显示升序的所有学生
System.out.println("\n\n----------------- Remain Student -----------------\n");
lab.displayAllStudent();
// 根据学号查找学生
System.out.println("\n\n----------------- Find Student -----------------\n");
lab.display(lab.findStudent("4"));
}
}
3.Note
1)更多校验,请自行添加
2)如有疑惑,请留言,谢谢 :)
这个好办。另写一个方法 delStu(String sno)。方法里将几个表里数据逐表删除。方法就写在你现在执行sql语句的位置。不知道你有没有学事务,如果有就装在一个事务里执行。祝愉快。
1、首先在电脑上启动数据库 ,在数据库中创建表,下面给出具体的SQL语句。
2、然后打开eclipse 创建新项目 JDBCTest,需要导入相关的jar包并构建路径,如图。
3、接着创建entity实体层如图对应表中的数据。
4、创建数据连接层conn 用于MySQL数据库的连接代码如图 如图。
5、创建dao层持久层,在里面编写数据库表的增删改查的具体操作。
6、最后编写测试类 Test代码如图,就完成了。