import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner; public class Student {
public static void main(String args[]) {
try {
Class.forName("com.mysql.jdbc.Driver"); //加载MYSQL JDBC驱动程序
// System.out.println("Success loading Mysql Driver!");
}
catch (Exception e) {
System.out.print("Error loading Mysql Driver!");
e.printStackTrace();
}
menu();
} public static void menu() {
System.out.println("******************学生个人成绩管理系统***********");
System.out.printf("\n", null);
System.out.println(" 1、增加成绩");
System.out.println(" 2、修改成绩");
System.out.println(" 3、删除成绩");
System.out.println(" 4、查询成绩");
System.out.println(" 5、显示全部");
System.out.println(" 6、退出系统");
System.out.printf("\n", null);
System.out.println("************************************************");
System.out.println("请输入功能编号(1-6):");
Scanner r0 = new Scanner(System.in);
int i = r0.nextInt();
switch(i){
case 1:
add();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
menu();
break;
case 2:
update();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
break;
case 3:
del();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
menu();
break;
case 4:
find();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
menu();
break;
case 5:
showall();
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
menu();
break;
case 6: break;
default:
System.out.println("请输入数字1到6");
try {
Thread.sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
} break;
}
r0.close();
}
public static void add(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入新的学生信息,输入格式为学号,姓名,分数。如:201220201032 xu 78.5");
String input =sc.nextLine();
String[] additem=input.split(" ");
if(additem.length==3){
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/stumana","root","root");
Statement stmt = connect.createStatement();
int rs = stmt.executeUpdate("insert into student (id,name,grades) values( '"+additem[0]+"', '"+additem[1]+"' ,'"+additem[2]+"')");
if(rs==1)
System.out.println("添加成功!");
}
catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
} }
public static void update(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生编号");
String id=sc.nextLine();
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/stumana","root","root");
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery("select * from student where name='"+id+"'");
if(rs!=null){
System.out.println("请输入新的学生信息,输入格式为学号,姓名,分数。如:201220201032 xu 78.5");
String input =sc.nextLine();
String[] additem=input.split(" ");
if(additem.length==3){
int rs1 = stmt.executeUpdate("update student set id= '"+additem[0]+"', name='"+additem[1]+"' ,grades='"+additem[2]+"'where id='"+id+"'");
if(rs1==1)
System.out.println("修改成功!");
}
}
free(null,stmt ,connect);
}
catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
public static void del(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生编号");
String id=sc.nextLine();
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/stumana","root","root");
Statement stmt = connect.createStatement();
int rs = stmt.executeUpdate("delete from student where id='"+id+"'");
if(rs==1)
System.out.println("删除成功!");
free(null,stmt ,connect);
}
catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
public static void find(){
Scanner sc = new Scanner(System.in);
System.out.println("请输入学生姓名");
String id=sc.nextLine();
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/stumana","root","root");
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery("select * from student where name='"+id+"'");
System.out.print("id"+" ");
System.out.print("姓名"+" ");
System.out.println("成绩");
while (rs.next()) {
System.out.print(rs.getString("id")+" ");
System.out.print(rs.getString("name")+" ");
System.out.println(rs.getFloat("grades"));
}
free(rs,stmt ,connect);
}
catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
public static void showall(){
try {
Connection connect = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/stumana","root","root");
//连接URL为 jdbc:mysql//服务器地址/数据库名 ,后面的2个参数分别是登陆用户名和密码 // System.out.println("Success connect Mysql server!");
Statement stmt = connect.createStatement();
ResultSet rs = stmt.executeQuery("select * from student"); System.out.print("id"+" ");
System.out.print("姓名"+" ");
System.out.println("成绩");
while (rs.next()) {
System.out.print(rs.getString("id")+" ");
System.out.print(rs.getString("name")+" ");
System.out.println(rs.getFloat("grades"));
}
free(rs,stmt ,connect);
}
catch (Exception e) {
System.out.print("get data error!");
e.printStackTrace();
}
}
public static void free(ResultSet resultset,Statement st,Connection conn)
{
try{
if(resultset!=null)
resultset.close();
} catch (Exception e) {
e.printStackTrace();
}
finally
{
try
{
if(st!=null)
st.close();
} catch (Exception e) {
e.printStackTrace();
}
finally
{
if(conn!=null)
try {
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}
} }

JDBC成绩管理系统的更多相关文章

  1. DAO JDBC 学生成绩管理系统

    1:student.course类 package JDBCU; public class Student { private String no; private String name; publ ...

  2. JSP+Servlet+JDBC+mysql实现的学生成绩管理系统

    项目简介 项目来源于:https://gitee.com/zzdoreen/SSMS 本系统基于JSP+Servlet+Mysql 一个基于JSP+Servlet+Jdbc的学生成绩管理系统.涉及技术 ...

  3. 学生成绩管理系统 1.0(Java+MySql)

    真难…… 数据库建立不会,中文编码不会,插入数据不会,删除不会…… Java读入数据不会……数据库连接不会…… 你也好意思说自己是学计算机的啊魂淡…… 我会慢慢写2.0,3.0版的……噗…… src/ ...

  4. JSP+SSM+Mysql实现的学生成绩管理系统

    项目简介 项目来源于:https://gitee.com/z77z/StuSystem 本系统是基于JSP+SSM+Mysql实现的学生成绩管理系统.主要实现的功能有教师管理.学生管理.课程管理.学生 ...

  5. 学生成绩管理系统(SSM+MySQL+JSP)

    开发工具:Eclipse前端技术:基础:html+css+JavaScript框架:JQuery+H-ui后端技术:Spring+SpringMVC+mybatis模板引擎:JSP数据库:mysql ...

  6. Java+Eclipse+MySQL+Swing实现学生会考成绩管理系统(免费完整项目)

    版权声明:原创不易,本文禁止抄袭.转载,侵权必究! 目录 一.需求开发文档 二.数据库设计文档 三.功能模块部分代码及效果展示 四.完整源码下载 五.作者Info 一.需求开发文档 项目完整文件列表: ...

  7. Java项目:学生成绩管理系统(二)

    学生成绩管理系统(二):项目介绍 一.设计要求: 1.1 简单的图形界面登录功能. 1.2 对数据库的的信息的查询功能. 1.3 对数据库的的信息的修改功能. 1.4 对数据库的的信息的删除功能. 1 ...

  8. Java项目:学生成绩管理系统(一)

    学生成绩管理系统(一) 项目名称:学生成绩管理系统 项目需求分析(Need 需求): (1)该系统的用户分为教师和学生.教师的功能有:管理某一学生或课程的信息以及成绩,包括增.删.查.报表打印等:学生 ...

  9. 学生成绩管理系统[C]

    #include<stdio.h> #include<stdlib.h> #include<string.h> #include<conio.h> #d ...

随机推荐

  1. 挂羊头卖狗肉蓄意欺骗读者——谭浩强《C程序设计(第四版)》中所谓的“按照C99”(二)

    挂羊头卖狗肉蓄意欺骗读者——谭浩强<C程序设计(第四版)>中所谓的“按照C99”(二) 在<谭C>p4:“本书的叙述以C99标准为依据”,下面从C89到C99的主要变化方面来看 ...

  2. 机器学习:异常检测算法Seasonal Hybrid ESD及R语言实现

    Twritters的异常检测算法(Anomaly Detection)做的比较好,Seasonal Hybrid ESD算法是先用STL把序列分解,考察残差项.假定这一项符合正态分布,然后就可以用Ge ...

  3. css3属性之 box-sizing

    w3c plus上有详细介绍及原理http://www.w3cplus.com/content/css3-box-sizing,这里摘录其中重要知识点部分. 本文重点考虑移动开发,所以默认移动端的浏览 ...

  4. WordPress实现登录或退出后直接跳转到首页的方法

    现在Wordpress是登录之后跳回到我们上次查看的页面,那么要如何修改它登录之后直接跳回到首页呢,这里就来给给大家详细介绍一下解决方法. 首先定位到登录链接所在位置,你会看到类似下面的代码: 复制代 ...

  5. Linux之保留yum安装软件后的RPM包

    yum安装软件很方便,但是下载下来的rpm包在安装后默认会被删除掉: 如果希望保留yum安装的软件包该如何做呢? 设置方法: 将/etc/yum.conf里对应的keepcache参数改为1即可,然后 ...

  6. webApp移动开发之REM

    最近发现一偏很好的文章,关于webAPP开发REM 一个css单位: 来自腾讯ISUX; web app变革之rem

  7. 一、Docker之旅

    刚刚接触到docker的同事可能会一头雾水,docker到底是一个什么东西,先看看官方的定义. Docker是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的.可移植的.自给自足的容器.开发者在笔 ...

  8. js加密的密文让PHP解密(AES算法)

      JS加密代码如下     <script src="http://crypto-js.googlecode.com/svn/tags/3.0.2/build/rollups/aes ...

  9. QT笔记之VS开发添加类

    1. 2. 3.

  10. Java-String类的常用方法总结

    一.String类String类在java.lang包中,java使用String类创建一个字符串变量,字符串变量属于对象.java把String类声明的final类,不能有类.String类对象创建 ...