package others.swing.p003;
import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
/**
* 学生信息管理系统
* 详细介绍:https://jackwei.blog.csdn.net/article/details/120843764
*/
public class StudentInfoManage {
public static void main(String args[]) {
new FrameInOut();
}
}
class FrameInOut extends JFrame implements ActionListener {
JButton btn; //定义按钮
JPanel pb; //定义面板作为容器
// Image im = Toolkit.getDefaultToolkit().getImage(Panel.class.getResource("/s.jpg"));
FrameInOut() {
super("学生信息管理系统"); //设置界面标题
btn = new JButton("进入学生信息系统");
btn.setForeground(Color.red);
btn.setFont(new Font("黑体", Font.BOLD, 18));
pb = new JPanel();
pb.add(btn);
add(pb);
setLayout(new FlowLayout());
// pb.setBackground(Color.black);
btn.addActionListener(this);
setLayout(new FlowLayout()); //设置界面采用流式布局
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(320, 240);
setVisible(true);
}
public void paint(Graphics g) {
super.paint(g);
// g.drawImage(im, 0, 0, 320, 240, this);
}
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == btn) {
new Information();//实例化
setVisible(false);
}
}
}
class Information extends JFrame implements ActionListener {
JMenuBar xx;//创建水平菜单栏xx
JButton a, b, c, d, f;
Information() {
xx = new JMenuBar();
/*初始化各个按钮*/
a = new JButton("显示");
b = new JButton("查询");
c = new JButton("添加");
d = new JButton("删除");
f = new JButton("修改");
/*将各控件按纽加入到菜单条xx中*/
xx.add(a);
xx.add(b);
xx.add(c);
xx.add(d);
xx.add(f);
setJMenuBar(xx);//设置菜单栏
/*各个按钮注册事件监听器*/
a.addActionListener(this);
b.addActionListener(this);
c.addActionListener(this);
d.addActionListener(this);
f.addActionListener(this);
setTitle("学生信息管理系统");
setBounds(100, 100, 400, 400);//设置在窗口的位置及大小
setVisible(true);
}
/*重载ActionListener接口的方法,实现各按钮名副其实的功能*/
@Override
public void actionPerformed(ActionEvent e) {
if (e.getSource() == a)//如果动作的事件源是"显示"
{
new Show().actionPerformed(null);
} else if (e.getSource() == b)//如果动作的事件源是"查询"
{
new Inquiry();
} else if (e.getSource() == c)//如果动作的事件源是"添加"
{
new Add();
} else if (e.getSource() == d)//如果动作的事件源是"删除"
{
new Delete();
} else if (e.getSource() == f)//如果动作的事件源是"修改"
{
new Revise();
}
}
}
//学生信息的浏览
class Show extends JFrame implements ActionListener {
JButton btn1;
JTextArea ta1; //定义一个文本域
JPanel p1;
Connection con; //与数据源的连接
Statement sql; //在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句
ResultSet rs; //执行查询数据库的语句生成
Show() {
btn1 = new JButton("显示基本信息");
btn1.setForeground(Color.blue); //设置按钮字体的颜色
btn1.setFont(new Font("黑体", Font.BOLD, 12)); //设置按钮字体的大小
ta1 = new JTextArea(5, 15); //设置按文本域的大小
ta1.setFont(new Font("黑体", Font.BOLD, 20)); //设置文本域所显示字体的大小
btn1.addActionListener(this); //对显示按钮进行监听
p1 = new JPanel();
p1.add(btn1); //在面板上添加按钮
p1.add(ta1); //在面板上添加文件域
getContentPane().add(p1); //获得JFrame的内容面板,再对其加入组件
setLayout(new FlowLayout()); //设置界面采用流式布局
p1.setBackground(Color.pink); //设置面板背景色
//setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setTitle("显示学生信息");
setSize(1200, 360); //设置界面尺寸
setVisible(true); //设置界面可见
}
/*重载ActionListener接口的方法*/
@Override
public void actionPerformed(ActionEvent e) {
if (true) {
// 清空内容
ta1.setText("");
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加载数据库驱动程序
} catch (ClassNotFoundException ex) {
System.out.println(ex.getMessage());
}
try {
con = DriverManager.getConnection("jdbc:odbc:studentInfo", "", "");//数据源名称url,账号,密码 建立连接
sql = con.createStatement(); //让已创建的连接对象con调用方法createStatement()创建这个SQL语句对象
rs = sql.executeQuery("SELECT * FROM xinxibiao");//执行查询
while (rs.next())//顺序查询数据
{
String number = rs.getString(1);//文本区域的对象调用append() 方法,append方法在被选元素的结尾(仍然在内部)插入指定内容
String name = rs.getString(2);
String sex = rs.getString(3);
String place = rs.getString(4);
String score = rs.getString(5);
String phone = rs.getString(6);
String qq = rs.getString(7);
ta1.append("学号:" + number);
ta1.append("\t姓名:" + name);
ta1.append("\t性别:" + sex);
ta1.append("\t籍贯:" + place);
ta1.append("\t成绩:" + score);
ta1.append("\t电话:" + phone);
ta1.append("\tqq:" + qq + "\n");
}
con.close();
} catch (SQLException ex) {
System.out.println(ex.getMessage());
}
}
}
}
//学生信息的查询
class Inquiry extends JFrame implements ActionListener {
JButton btn2;
JTextArea ta2;
JTextField tf1;
JLabel lab1;//定义标签
JPanel p2;
Connection con; //Connection代表打开的、与数据源的连接
Statement sql; //在已经建立数据库连接的基础上,向数据库发送要执行的SQL语句
ResultSet rs; //执行查询数据库的语句生成
Inquiry() {
lab1 = new JLabel("请输入要查询的学号");
btn2 = new JButton("查询");
btn2.setForeground(Color.red);
btn2.setFont(new Font("微软雅黑", Font.BOLD, 12));
ta2 = new JTextArea(10, 20);
ta2.setForeground(Color.blue);
ta2.setFont(new Font("黑体", Font.BOLD, 18));
tf1 = new JTextField(10);
p2 = new JPanel();
add(lab1);//在面板上添加标签
add(tf1);//在面板上添加文本域
p2.add(btn2);//在面板上添加按纽
p2.add(ta2);
getContentPane().add(p2);//获得JFrame的内容面板,再对其加入组件
setLayout(new FlowLayout());
p2.setBackground(Color.blue);
setTitle("查询学生信息");
setBounds(20, 20, 400, 400);
setVisible(true);
btn2.addActionListener(this);
}
@Override
public void actionPerformed(ActionEvent e) {
boolean t = false;
ta2.setText("");
if (e.getSource() == btn2) {
String str = tf1.getText();
try {
Class.forName("sun
没有合适的资源?快使用搜索试试~ 我知道了~
学生信息管理案例实现代码
共1个文件
java:1个
需积分: 1 0 下载量 3 浏览量
2024-01-26
09:35:00
上传
评论
收藏 4KB RAR 举报
温馨提示
Java 语言有以下几个优点: 1. 简单易学:Java 语言的语法和结构相对简单,与传统的 C/C++ 语言相比,去掉了一些复杂而容易出错的特性,使得初学者更容易上手。 2. 面向对象:Java 是一种纯粹的面向对象编程语言,支持封装、继承和多态等面向对象的特性。通过面向对象的开发方式,可以提高代码的模块化、可维护性和重用性。 3. 平台无关性:Java 程序在编译后生成的是字节码(bytecode),而不是特定操作系统的机器码。这使得 Java 程序可以在不同的操作系统上运行,实现了“一次编写,到处运行”的理念。 4. 自动内存管理:Java 使用垃圾回收机制进行自动的内存管理,开发者无需手动分配和释放内存。这减少了内存泄漏和悬空指针等底层内存操作导致的 bug,并简化了程序开发的过程。 5. 强大的类库支持:Java 提供了庞大的标准类库和第三方类库,涵盖了常见的开发需求,包括文件处理、网络通信、多线程、数据库连接、图形用户界面等。这些类库使得Java开发人员能够更高效地开发应用程序。 6. 安全性:Java 的安全性是它的重要特点之一。Java 提供了一个安全模型,
资源推荐
资源详情
资源评论
收起资源包目录
StudentInfoManage.rar (1个子文件)
StudentInfoManage.java 21KB
共 1 条
- 1
资源评论
专家-百锦再
- 粉丝: 7468
- 资源: 731
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功