栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java语言程序设计实践-第一次功能检查

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java语言程序设计实践-第一次功能检查

Java语言程序设计实践--第一次功能检查
  • 功能描述
  • 数据库操作部分
  • 核心代码(不是全部代码,要求注释)
  • 运行效果

功能描述

已完成学生成绩查询功能,支持按照学号查询该学生参与的所有比赛的成绩。

数据库操作部分

步骤:加载JDBC驱动;

private String jdbcName="com.mysql.jdbc.Driver";
Class.forName(jdbcName);

创建数据库连接;

private String url="jdbc:mysql://localhost:3306/javadb?serverTimezone=UTC&characterEncoding=utf-8";
private String name="root";
private String pass="0000";

创建一个Statement对象或者PreparedStatement对象

PreparedStatement pstmt=con.prepareStatement(sql);

执行SQL语句(可以返回结果集);

select * from 参与 where 学号=?

如果返回结果集,遍历结果集;

while(rs.next()) { 
tabledata[row][0]=rs.getInt(1);
	tabledata[row][1]=rs.getInt(2);
	tabledata[row][2]=rs.getInt(3);
	row++;}
核心代码(不是全部代码,要求注释)
package function1;

import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import javax.swing.*;

class DbUtil {
	

	private String url="jdbc:mysql://localhost:3306/javadb?serverTimezone=UTC&characterEncoding=utf-8";
	private String name="root";
	private String pass="0000";
	private String jdbcName="com.mysql.jdbc.Driver";
	
	public Connection getCon() throws Exception{

	Class.forName(jdbcName); //加载驱动

	Connection con=DriverManager.getConnection(url,name,pass); //创立连接

	return con;
	}	
}

class StuDao{
	public ResultSet show(Connection con,int num) throws Exception{
		String sql="select * from 参与 where 学号=?";
		PreparedStatement pstmt=con.prepareStatement(sql); //设置通道
		pstmt.setLong(1, num);
		return pstmt.executeQuery();
}}


public class StudentShow extends Jframe implements ActionListener{
	JLabel classTxt;
	JTextField classesTxt;
	JButton selectBtn;
	JTable students;
	JPanel panel;
	String []headers= {"学号","项目号","成绩"}; //结果集显示
	Object [][] tabledata;
	
	public StudentShow(String s) {
		super(s);
		classTxt=new JLabel("学号:");
		classesTxt=new JTextField(10);
		selectBtn=new JButton("查找");
		panel=new JPanel();
		panel.add(classTxt);panel.add(classesTxt);panel.add(selectBtn); //把组件添加到面板
		students=new JTable();
		setBounds(100,100,300,300);
		add(panel,BorderLayout.NORTH);
		selectBtn.addActionListener(this); //按钮添加监听器
		setVisible(true);
	}

	@Override
	public void actionPerformed(ActionEvent e) {
		String num=classesTxt.getText(); //从文本框获取文字
		
		int numInt = Integer.parseInt(num); //强制转换为int类型
        
		
		Connection con=null;
		DbUtil dbutil=new DbUtil();
		StuDao studao=new StuDao();
		ResultSet rs=null;
		tabledata=new Object[9][3];
	
		try {
			con=dbutil.getCon();
			rs=studao.show(con, numInt);

			int row=0;
			while(rs.next()) { //给表赋值
				tabledata[row][0]=rs.getInt(1);
				tabledata[row][1]=rs.getInt(2);
				tabledata[row][2]=rs.getInt(3);
				row++;
			}
			
			students=new JTable(tabledata,headers);
			add(new JScrollPane(students),BorderLayout.CENTER);
			
		} catch (Exception e1) {
			System.out.println("数据库连接失败");
		}
		}
		public static void main(String[] args) {
			new StudentShow("输入学号查询成绩");
		}
}
运行效果

图片:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/696705.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号