JDBC实现学生管理系统

本文实例为大家分享了JDBC实现学生管理系统的具体代码,供大家参考,具体内容如下

1、学生类

package manage;

import java.util.Date;

/**
 * @author fanxf
 * @since 2018/4/27 17:01
 */
public class Student {

  private int id;

  private int age;

  private String sex;

  private String name;

  private Date dateCreated;

  public int getId() {
    return id;
  }

  public void setId(int id) {
    this.id = id;
  }

  public int getAge() {
    return age;
  }

  public void setAge(int age) {
    this.age = age;
  }

  public String getSex() {
    return sex;
  }

  public void setSex(String sex) {
    this.sex = sex;
  }

  public String getName() {
    return name;
  }

  public void setName(String name) {
    this.name = name;
  }

  public Date getDateCreated() {
    return dateCreated;
  }

  public void setDateCreated(Date dateCreated) {
    this.dateCreated = dateCreated;
  }

  public Student() {
  }

  public Student(int age, String sex, String name) {
    this.age = age;
    this.sex = sex;
    this.name = name;
  }

  public Student(int id, int age, String sex, String name) {
    this.id = id;
    this.age = age;
    this.sex = sex;
    this.name = name;
  }

  @Override
  public String toString() {
    return "Student{" +
        "id=" + id +
        ", age=" + age +
        ", sex='" + sex + '\'' +
        ", name='" + name + '\'' +
        ", dateCreated=" + dateCreated +
        '}';
  }
}

2、jdbc工具类

package manage;

import java.io.IOException;
import java.sql.*;
import java.util.Properties;

/**
 * @author fanxf
 * @since 2018/4/27 11:06
 */
//数据库的工具类
public class JdbcUtils {

  private static String driver = "";
  private static String url = "";
  private static String user = "";
  private static String password = "";

  static {
    Properties p = new Properties();
    try {
      p.load(Thread.currentThread().getContextClassLoader().getResourceAsStream("db.properties"));
    } catch (IOException e) {
      e.printStackTrace();
    }
    driver = p.getProperty("driver");
    url = p.getProperty("url");
    user = p.getProperty("user");
    password = p.getProperty("password");
    try {
      Class.forName(driver);
    } catch (ClassNotFoundException e) {
      e.printStackTrace();
    }
  }

  public static Connection getConnection() {
    try {
      return DriverManager.getConnection(url, user, password);
    } catch (SQLException e) {
      e.printStackTrace();
    }
    return null;
  }
  //释放的时候要从小到大释放
  //Connection -> Statement --> Resultset

  public static void release(ResultSet rs, Statement stmt, Connection conn) {
    if (rs != null) {
      try {
        rs.close();
      } catch (SQLException e) {
        e.printStackTrace();
      }
    }
    if (stmt != null) {
      try {
        stmt.close();
      } catch (SQLException e) {
        e.printStackTrace();
      }
    }

    if (conn != null) {
      try {
        conn.close();
      } catch (SQLException e) {
        e.printStackTrace();
      }
    }
  }
}

3、代码

package manage;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.Scanner;

/**
 * @author fanxf
 * @since 2018/4/27 17:06
 */
public class ManageSystem {

  private static Connection conn = null;
  private static PreparedStatement ps = null;
  private static ResultSet rs = null;

  /**
   * 添加学生数据
   *
   * @param student
   * @return
   */
  public static int addStudent(Student student) {
    conn = JdbcUtils.getConnection();
    int result = 0;
    try {
      ps = conn.prepareStatement("INSERT INTO student (age, sex, `name`, dateCreated) VALUES (?, ?, ?, now())");
      ps.setInt(1, student.getAge()); //设置第一个参数
      ps.setString(2, student.getSex()); //设置第二个参数
      ps.setString(3, student.getName()); //设置第三个参数
      result = ps.executeUpdate();
    } catch (SQLException e) {
      e.printStackTrace();
    } finally {
      JdbcUtils.release(null, ps, conn); //关闭连接
    }
    return result;
  }

  public void add() {
    Scanner scan = new Scanner(System.in);
    System.out.println("请输入学生年龄");
    int age = scan.nextInt();
    System.out.println("请输入学生性别");
    String sex = scan.next();
    System.out.println("请输入学生姓名");
    String name = scan.next();
    Student s = new Student(age, sex, name);
    int flag = addStudent(s);
    if (flag > 0) {
      System.out.println("添加成功");
    } else {
      System.out.println("添加失败");
    }
  }

  /**
   * 修改
   *
   * @param student
   * @return
   */
  public static int updateStudent(Student student) {
    conn = JdbcUtils.getConnection();
    int result = 0;
    try {
      ps = conn.prepareStatement("UPDATE student SET age = ?, sex = ?, `name` = ? WHERE id = ?");
      ps.setInt(1, student.getAge()); //设置第一个参数
      ps.setString(2, student.getSex()); //设置第二个参数
      ps.setString(3, student.getName()); //设置第三个参数
      ps.setInt(4, student.getId());
      result = ps.executeUpdate();
    } catch (SQLException e) {
      e.printStackTrace();
    } finally {
      JdbcUtils.release(null, ps, conn); //关闭连接
    }
    return result;
  }

  public void update() {
    Scanner scan = new Scanner(System.in);
    System.out.println("请输入学生id");
    int id = scan.nextInt();
    System.out.println("请输入学生年龄");
    int age = scan.nextInt();
    System.out.println("请输入学生性别");
    String sex = scan.next();
    System.out.println("请输入学生姓名");
    String name = scan.next();
    Student s = new Student(id, age, sex, name);
    int flag = updateStudent(s);
    if (flag > 0) {
      System.out.println("更新成功");
    } else {
      System.out.println("更新失败");
    }
  }

  /**
   * 删除
   *
   * @param id
   * @return
   */
  public static int deleteStudent(int id) {
    conn = JdbcUtils.getConnection();
    int result = 0;
    try {
      ps = conn.prepareStatement("DELETE FROM student WHERE id = ?");
      ps.setInt(1, id); //设置第一个参数
      result = ps.executeUpdate();
    } catch (SQLException e) {
      e.printStackTrace();
    } finally {
      JdbcUtils.release(null, ps, conn); //关闭连接
    }
    return result;
  }

  public void delete() {
    Scanner scan = new Scanner(System.in);
    System.out.println("请输入学生id");
    int id = scan.nextInt();
    int flag = deleteStudent(id);
    if (flag > 0) {
      System.out.println("删除成功");
    } else {
      System.out.println("删除失败");
    }
  }

  public static void main(String[] args) {
    System.out.println("************ 欢迎进入学生管理系统 *************");
    ManageSystem ms = new ManageSystem();
    boolean b = true;
    while (b) {
      System.out.println("你想进行以下哪项操作");
      System.out.println("1、添加学生  2、更新学生数据  3、学生信息查询  4、删除学生 0、退出");
      Scanner scan = new Scanner(System.in);
      int i = scan.nextInt();
      switch (i) {
        case 1:
          ms.add();
          break;
        case 2:
          ms.update();
          break;
        case 3:
          System.out.println();
          break;
        case 4:
          ms.delete();
          break;
        default:
          System.out.println("没有该操作选项,请重新来过!");
          main(args);
          break;
      }
    }
  }
}

4、properties数据库文件自己配置

数据库字段根据学生类建立!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • jdbc+jsp实现简单员工管理系统

    简单的页面分析 在上一个文章简单的数据库连接测试,已经测试和数据库做简单的交互,也就是dao层的实现,接下来要说的却是action的简单实现,在ssh中有struts作为表示层和server的交换,而这里我不是说的是关于struts这里只是简单的运用jsp的代码书写来实现数据的传输,这也是最繁琐的步骤,但是这却让我们对底层的调用有一个简单的了解,这里是直接调用封装好的数据,交换和使用,首先要书写的是action的使用,用的最多的就是getParameter表单的提交了,这里在网络上提交一个表单吗

  • JSP实现简单人事管理系统

    本文实例为大家分享了JSP实现简单人事管理系统的具体代码,供大家参考,具体内容如下 此系统使用jsp实现,其中包含了jsp九大内置对象和四大作用域的相关知识,采用map集合模拟数据库的方式,实现用户登录.员工信息展示.员工信息修改功能. JSP的九大内置对象:Application,Config,Exception,Out,PageContent,Page,Request,Respsonse,Sesstion JSP的四大作用域:Application Sesstion Page request

  • JSP实现客户信息管理系统

    本文实例为大家分享了JSP实现客户信息管理系统的具体代码,供大家参考,具体内容如下 项目示意图大概这样吧.我自己画的 登录界面代码 index.jsp: 完全没技术含量的,直接调用一个servlet控制的是否登录 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD

  • JSP学生信息管理系统设计

    本文实例为大家分享了JSP学生信息管理系统源码,供大家参考,具体内容如下 新建学生信息数据库 1.添加记录模块 <%@ page contentType="text/html" pageEncoding="UTF-8"%> <html> <head> <title>添加新学生</title> </head> <body> <form action="stuinsert

  • 基于jsp实现新闻管理系统 附完整源码

    很棒的新闻发布系统分享给大家,希望大家喜欢. 下面就让我们来说一说基于jsp的新闻发布系统,其中使用的技术有JavaBean.fillter.数据库等,能够实现新闻的发布功能,在发布之后能够进行对每一条新闻的删除.修改.或者继续增加新的文章,最后还能够进行查询功能,其中引用了百度编辑器,能够进行图文并茂的编辑,极大地方便用户的使用. 注:完整项目下载地址:新闻发布系统 一.效果演示 首先让我们来看一看实现的效果: 下面是登陆的首界面: 图1 首界面 管理员登录页面: 图2 管理员登录界面 下面是

  • JSP学生信息管理系统

    本文实例为大家分享了JSP学生信息管理系统源码,JSP+Servlet+Javabean+JDBC+MySQL,供大家参考,具体内容如下 1.service层,进行数据库操作     package com.service; /** * 负责学生信息的所有数据库操作,增删改查 */ import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQ

  • JDBC+GUI实现简单学生管理系统

    刚学完JDBC不久,做了一个简单的学生管理系统,可能还有不完善的地方,望各路大神见谅.废话不多说,我先贴个图让大家让大家瞅瞅,觉得是你想要的再看下去吧. 我是以管理者的身份去做的,适合初学者去学习. 在做之前,先捋一遍思路,简单来说分为三大步. 一.在数据库里建Student表存放学生信息 二.用JDBC来连接.操作数据库 三.展示Student数据,实现增删改查功能. 思路是非常简单的,但是要实现还是有很多细节需要注意,下面我就贴上我的代码,结合着代码给大家一步步的分析说明. 实现: 一.在数

  • JDBC实现学生管理系统

    本文实例为大家分享了JDBC实现学生管理系统的具体代码,供大家参考,具体内容如下 1.学生类 package manage; import java.util.Date; /** * @author fanxf * @since 2018/4/27 17:01 */ public class Student { private int id; private int age; private String sex; private String name; private Date dateCr

  • java基于jdbc实现简单学生管理系统

    目录 工具类 工程目录: 运行截图: 这个是java连接mysql数据库的一个简单学生系统,通过jdbc连接数据库. 工具类 JDBCuntils. package Student; import java.io.IOException; import java.sql.*; import java.util.Properties; //数据库的工具类 public class JDBCuntils { private static String driver = ""; privat

  • Java+Mysql学生管理系统源码

    最近正在学java和数据库,想起以前写的学生管理系统,都是从网上下载,敷衍了事.闲来无事,也就自己写了一个,不过功能实现的不是很多. 开发语言:java: 开发环境:Mysql, java: 开发工具:eclipse 开发此案例,首先得在电脑上有java开发环境和Mysql, java开发环境与Mysql的搭建,就不再叙述了,如果需要,请联系我最下面的联系方式:dingyelf@aliyun.com 此次系统比较简易:数据库中只有一个表:stu;功能:能够对学生增加.删除.修改. 开发步骤:  

  • Java基于MySQL实现学生管理系统

    本文为大家分享了Java基于MySQL实现学生管理系统,供大家参考,具体内容如下 因为实验室要交作业然后就做了一个学生管理系统,贴个代码纪念一下,做的太急界面什么的也比较差. 还有一些小细节没有完善不过还是能实现主要的功能的. Window是主界面 package First; import java.sql.*; import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Window { pub

  • JavaSwing实现小型学生管理系统

    本文实例为大家分享了JavaSwing实现小型学生管理系统的具体代码,供大家参考,具体内容如下 在项目中建立四个包,分别是com.wu.JavaBean.com.wuJavaDao.com.wu.JavaService.com.wu.JavaView 数据库表结构 学生表只有四个属性:学生姓名.学生性别.学生学号(主键).学生班级管理员表只有两个属性:管理员用户名(主键).管理员密码 这里笔者为了简单,学生表只写了四个属性,管理员表只写了两个属性. 在JavaBean新建Student和Root

  • springboot实现学生管理系统

    本文实例为大家分享了SpringBoot实现学生管理系统,供大家参考,具体内容如下 一.创建springboot项目 点击下一步 点击下一步,选择要添加的依赖 点击下一步,再点击完成 修改pom.xml如下 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http:/

  • 简单实现Java版学生管理系统

    本文实例为大家分享了Java实现学生管理系统的具体代码,供大家参考,具体内容如下 package BookDemo_1; import javax.swing.*; import java.awt.*; import java.awt.event.*; public class Test { public static void main(String[] args) { StudentSys stuSys=new StudentSys("学生管理系统"); stuSys.initWi

  • ASP.NET实现学生管理系统

    学生管理系统所需要的具体控件和主要属性: 1.登录窗体 基本控件: label(标签控件) 主要属性:Image(在标签上显示的图像) Text(在标签上显示的文本) TextBox(文本框控件) 主要属性:PasswordChar(指示在作为密码框时,文本框中显示的字符,而不是实际输入的文本) Button(按钮控件) ComboBox(下拉框)属性:SelectedItem:获取当前选定的项 事件:Click(单击控件时发生) private void butStyle_Click(obje

  • php学生管理系统

    本文实例为大家分享了php学生管理系统源码,供大家参考,具体内容如下 功能: 1.添加/删除/修改 2.数据存储. 界面分布: index.php --->主界面 add.php --->stu添加 action ---> sql中add/del/update (处理html表单-->mysql的数据存储 && 页面跳转) edit.php --->stu修改 menu.php -->首页 1. index.php <!DOCTYPE html&g

随机推荐