最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java基于jdbc實現(xiàn)簡單學生管理系統(tǒng)

 更新時間:2021年10月25日 08:35:26   作者:權。  
本文主要主要介紹了java連接mysql數據庫的一個簡單學生系統(tǒng),通過jdbc連接數據庫。文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

這個是java連接mysql數據庫的一個簡單學生系統(tǒng),通過jdbc連接數據庫。

工具類

JDBCuntils.

package Student;


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

//數據庫的工具類
public class JDBCuntils {
 
    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();
            }
        }
    }
}

數據庫配置文件(這個是連接你自己的數據庫的信息,在包里創(chuàng)建就好)

db.properties

driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/db3
user=root
password=1767737316.
#<!-- \u914D\u7F6E\u521D\u59CB\u5316\u5927\u5C0F -->
initialSize=6
#<!-- \u914D\u7F6E\u521D\u59CB\u5316\u6700\u5927\u8FDE\u63A5\u6570 -->
maxActive=20
#<!-- \u914D\u7F6E\u521D\u59CB\u5316\u6700\u5C0F\u8FDE\u63A5\u6570 -->
minIdle=3
#<!-- \u914D\u7F6E\u83B7\u53D6\u8FDE\u63A5\u7B49\u5F85\u8D85\u65F6\u7684\u65F6\u95F4,1\u5206\u949F\u5355\u4F4D\u6BEB\u79D2 -->
maxWait=60000

Student.java

package Student;

import java.util.Date;
public class Student {
       private int id;
       private String name;
       private int score;
       public Student(int id, String name,int score) {

            this.id = id;
            this.name = name;
            this.score = score;
        }

        public Student() {

        }
        public String toString() {
            return "Student{" +
                    "name='" + id + '\'' +
                    ", age=" + name +
                    ", sex='" + score + '\'' +
                    '}';
        }
    public int getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getScore() {
        return score;
    }
    public void setScore(Integer score) {
        this.score = score;
    }  
}

Studentmannger.java

package Student;

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

/**
 * @author fanxf
 * @since 2018/4/27 17:06
 */

public class Studentmannger {
 
    private static Connection conn = null;
    private static PreparedStatement ps = null;
    private static ResultSet rs = null;
 
    /**
     * 添加學生數據
     *
     * @param student
     * @return
     * @throws SQLException 
     */
    public static int addStudent(Student student)     {
        conn = JDBCuntils.getConnection();
        int result = 0;
        try {
            ps = conn.prepareStatement("INSERT INTO student (id,`name`,score) VALUES (?, ?, ?)");
            ps.setInt(1, student.getId()); //設置第一個參數
            ps.setString(2, student.getName()); //設置第二個參數
            ps.setInt(3, student.getScore()); //設置第三個參數
            result = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            JDBCuntils.release(null, ps, conn);  //關閉連接
        }
        return result;
    }
 
    public void add() {
        Scanner scan = new Scanner(System.in);
        System.out.println("請輸入學生學號");
        int id = scan.nextInt();
        System.out.println("請輸入學生姓名");
        String name = scan.next();
        System.out.println("請輸入學生成績");
        int score = scan.nextInt();
        Student s = new Student(id, name, score);

        int flag = addStudent(s);
        if (flag > 0) {
            System.out.println("添加成功");
        } else {
            System.out.println("添加失敗");
        }
    }

 
    /**1
     * 
     * 修改
     *
     * @param student
     * @return
     */
    public static int updateStudent(Student student) {
        conn = JDBCuntils.getConnection();
        int result = 0;
        try {
            ps = conn.prepareStatement("UPDATE student SET id = ?, `name` = ?, score = ? WHERE id = ?");
            ps.setInt(1, student.getId()); //設置第一個參數
            ps.setString(2, student.getName()); //設置第二個參數
            ps.setInt(3, student.getScore()); //設置第三個參數
            ps.setInt(4, student.getId());
            result = ps.executeUpdate();
        } catch (SQLException e) {
            e.printStackTrace();
        } finally {
            JDBCuntils.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("請輸入學生姓名");
        scan.nextLine();
        String name = scan.nextLine();
        
        System.out.println("請輸入學生成績");
        int score = scan.nextInt();

        Student s = new Student(id, name, score );
        int flag = updateStudent(s);
        if (flag > 0) {
            System.out.println("更新成功");
        } else {
            System.out.println("更新失敗");
        }
    }
 
    /**
     * 刪除
     *
     * @param id
     * @return
     * @throws SQLException 
     */
    
    public static void select() throws SQLException  {
        Scanner scan = new Scanner(System.in);
        conn = JDBCuntils.getConnection();
            int n;
            String sql = "select * from student where id=?";
            PreparedStatement ps = conn.prepareStatement(sql);
            System.out.println("請輸入要查詢的學號");
            n = scan.nextInt();
            ps.setInt(1, n);
            ResultSet rs  = ps.executeQuery();
    //將sql語句傳至數據庫,返回的值為一個字符集用一個變量接收 
            while(rs.next()){    //next()獲取里面的內容
            System.out.println(rs.getInt(1)+" "+rs.getString(2)+" "+rs.getInt(3));
                                 //getString(n)獲取第n列的內容
                                    //數據庫中的列數是從1開始的
            }
    }
    public static int deleteStudent(int id) {
        conn = JDBCuntils.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 {
            JDBCuntils.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) throws SQLException {
        System.out.println("************ 歡迎進入學生管理系統(tǒng) *************");
        Studentmannger ms = new Studentmannger();
        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:
                    ms.select();
                    break;
                case 4:
                    ms.delete();
                    break;
                default:
                    System.out.println("沒有該操作選項,請重新來過!");
                    main(args);
                    break;
            }
        }
    }
}

工程目錄:

運行截圖:

到此這篇關于java基于jdbc實現(xiàn)簡單學生管理系統(tǒng)的文章就介紹到這了,更多相關jdbc 學生管理系統(tǒng)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • SpringBoot?Aop實現(xiàn)接口請求次數統(tǒng)計

    SpringBoot?Aop實現(xiàn)接口請求次數統(tǒng)計

    我們通過Spring AOP在每次執(zhí)行方法前或執(zhí)行方法后進行切面的處理,進而統(tǒng)計方法訪問的次數等功能,本文主要介紹了SpringBoot?Aop實現(xiàn)接口請求次數統(tǒng)計
    2024-02-02
  • SpringBoot生成和操作PDF的代碼詳解

    SpringBoot生成和操作PDF的代碼詳解

    本文主要介紹了在SpringBoot項目下,通過代碼和操作步驟,詳細的介紹了如何操作PDF,希望可以幫助到準備通過JAVA操作PDF的你,項目框架用的SpringBoot,但在JAVA中代碼都是通用的,需要的朋友可以參考下
    2025-01-01
  • 自動配置@EnableAutoConfiguration問題

    自動配置@EnableAutoConfiguration問題

    這篇文章主要介紹了自動配置@EnableAutoConfiguration問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Java 自定義動態(tài)數組方式

    Java 自定義動態(tài)數組方式

    這篇文章主要介紹了Java自定義動態(tài)數組方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • hibernate中的對象關系映射

    hibernate中的對象關系映射

    hibernate中的ORM映射文件通常以.hbm.xml作為后綴。使用這個映射文件不僅易讀,而且可以手工修改,也可以通過一些工具來生成映射文檔,下文給大家詳細的介紹hibernate中的對象關系映射,需要的朋友參考下吧
    2017-09-09
  • 解決maven常見錯誤:Dependency is duplicated in file(s):

    解決maven常見錯誤:Dependency is duplicated in 

    這篇文章主要介紹了解決maven常見錯誤:Dependency is duplicated in file(s):問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Java的Flowable工作流之加簽轉簽詳解

    Java的Flowable工作流之加簽轉簽詳解

    這篇文章主要介紹了Java的Flowable工作流之加簽轉簽詳解,Flowable是一個開源的工作流引擎,它提供了一套強大的工具和功能,用于設計、執(zhí)行和管理各種類型的工作流程,需要的朋友可以參考下
    2023-11-11
  • Struts2學習筆記(8)-Result常用類型

    Struts2學習筆記(8)-Result常用類型

    這篇文章主要介紹Struts2中Result四種常用的類型的用法,希望能給大家做一個參考。
    2016-06-06
  • Java 從Set里面取出有序的記錄詳解及實例

    Java 從Set里面取出有序的記錄詳解及實例

    這篇文章主要介紹了Java 從Set里面取出有序的記錄詳解及實例的相關資料,需要的朋友可以參考下
    2017-06-06
  • Hibernate雙向多對多映射關系配置代碼實例

    Hibernate雙向多對多映射關系配置代碼實例

    這篇文章主要介紹了Hibernate雙向多對多映射關系配置代碼實例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10

最新評論

泽库县| 镇沅| 谢通门县| 嘉黎县| 七台河市| 桐城市| 安岳县| 海晏县| 周至县| 五河县| 高阳县| 北海市| 阿荣旗| 关岭| 湖南省| 昆山市| 秦皇岛市| 广德县| 普格县| 平南县| 乾安县| 南江县| 平泉县| 南平市| 丘北县| 新泰市| 克山县| 泉州市| 漠河县| 双桥区| 军事| 横峰县| 阳曲县| 潼南县| 交城县| 五指山市| 永泰县| 铜陵市| 江都市| 诏安县| 綦江县|