【java+Mysql】學生信息管理系統

學生信息管理系統是一種用于管理學生信息的軟件系統,旨在提高學校管理效率和服務質量。本課程設計報告旨在介紹設計和實現學生信息管理系統的過程。報告首先分析了系統的需求,包括學生基本信息管理、成績管理等功能。接著介紹了系統的設計方案,包括系統架構、數據庫設計和界面設計等內容。在實現部分,報告詳細描述了系統的開發過程和關鍵技術,如數據庫連接等。最后,報告總結了系統的特點和優勢,并提出了進一步改進和發展的建議。通過本課程設計,我們深入理解了學生信息管理系統的設計與實現,提高了軟件開發能力和團隊合作能力。

1 ?引言

隨著信息技術的飛速發展,學校管理也逐漸轉向數字化和信息化方向。學生信息管理系統作為學校管理的重要組成部分,承擔著學生信息錄入、查詢、統計等功能,為學校管理者提供了便捷高效的工具。本課程設計旨在通過設計和實現一個全功能的學生信息管理系統,深入理解數據庫設計、編程開發等相關知識,提升學生的信息管理能力和實踐能力。本課程設計將采用intelij idea、Navicat作為開發平臺,以信息錄入與管理、信息查詢為設計目標,結合學生信息管理的實際需求,設計并實現一個易用可靠的學生信息管理系統。通過本課程設計,學生將深入了解數據庫設計與管理、編程開發等相關技術,提升自身信息管理和系統開發能力。本報告將圍繞學生信息管理系統的設計與實現展開,首先介紹系統的需求分析,然后詳細闡述系統的設計思路和功能模塊,最后給出系統的實現和測試情況,并總結本次課程設計的收獲和不足之處。通過本報告的撰寫,旨在全面展示學生信息管理系統課程設計的全過程和成果,為今后的學習和實踐積累經驗,提供參考和借鑒。

1.1 ?研究背景和意義

1.1.1研究背景

信息化教育發展: 隨著信息技術的迅速發展,教育管理也逐步向數字化、信息化轉變。學生信息管理系統作為教育信息化建設的重要組成部分,受到了廣泛關注和重視。

教育管理需求: 高效、準確地管理學生信息對于教育管理工作至關重要。學校管理者和教師需要一個功能完備、易用可靠的學生信息管理系統來支持學校的日常教學和管理工作。

技術發展趨勢: 數據庫技術、網絡技術、軟件工程等方面的不斷發展,為學生信息管理系統的設計與實現提供了技術保障和支持。

1.1.2研究意義

提高管理效率: 學生信息管理系統的建立可以使學校管理者和教師更加便捷地進行學生信息的錄入、查詢和統計,提高管理效率和工作質量。

信息共享與交流: 學生信息管理系統可以促進學校內部各部門之間的信息共享和交流,提升教育教學工作的整體協調性和效率。

1.?2??國內外現狀發展及趨勢?

國內:中國的學生信息管理系統在不斷提升數據管理和教務管理的效率,越來越多的學校采用數字化、網絡化的管理方式,以滿足日益增長的學生數量和復雜的管理需求。國外:國外學生信息管理系統也經歷了類似的發展過程,許多國家的學校和教育機構都使用自己定制的系統或者商用系統,以支持學生信息管理、教學計劃和成績跟蹤等功能。

趨勢:智能化和個性化:未來學生信息管理系統將更加智能化,利用人工智能和大數據技術為學生提供個性化的學習支持和建議。云端化和移動化:越來越多的學校將信息管理系統遷移到云端,以提高系統的可訪問性和可擴展性,并且系統將更加注重移動端的用戶體驗,支持學生、教師和家長隨時隨地訪問和管理信息。數據安全和隱私保護:隨著數據泄露和隱私問題的日益突出,學生信息管理系統將更加注重數據安全和隱私保護,采取更加嚴格的措施保護學生和教育機構的數據安全。

2 系統需求分析

2.1系統總體需求目標

信息記錄與管理:系統能夠有效地記錄和管理學生的基本信息,如姓名、性別、年齡、聯系方式、成績等。

用戶權限管理:對用戶登錄設置權限。

查詢:提供查詢學生信息的功能。

易用性與界面友好:界面簡潔直觀,操作方便。

性能優化:系統能夠穩定運行,響應速度快。

2.2系統業務流程分析

學生信息錄入:管理員通過系統錄入新生或轉入學生的基本信息。

成績錄入與管理:管理員將學生的成績錄入系統。系統會根據錄入的學生的成績進行評測。

信息查詢:管理員可以通過系統查詢學生信息、成績信息等。

2.3系統功能需求分析

2.3.1學生管理功能:

學生信息錄入與修改:添加學生信息,修改、刪除、更新學生信息。

學生信息查詢:根據姓名、學號等條件查詢學生信息。

學生信息統計:統計學生人數、男女比例、年齡分布等信息。

2.3.2 成績管理功能:

成績錄入與修改:教師錄入學生的考試成績或作業成績。

成績查詢:學生查詢自己的成績,教師查詢所教授課程學生成績。

成績統計:統計班級或課程的平均成績、及格率等信息。

2.4系統性能分析

響應時間:系統對用戶請求的響應時間,包括頁面加載、查詢、修改等操作的耗時情況,以確保用戶體驗良好。

并發處理能力:系統在高并發情況下的穩定性和性能表現,確保能夠同時處理多個用戶的請求而不降低性能。

數據庫性能:數據庫的讀寫速度、索引效率、連接池管理等方面的性能表現,對系統整體性能有重要影響。

系統資源利用率:監控系統的 CPU、內存、磁盤等資源利用率,避免資源瓶頸影響系統性能。

3 系統總體設計

3.1系統功能結構設計

學生信息管理系統:由登陸子系統、查詢子系統、管理子系統。功能結構圖如圖3-1。

(1)登錄子系統分為超級管理員登錄、管理員登錄以及學生端登錄。它主要提供用戶登錄功能,并按各用戶的權限使用本系統。

(2)查詢子系統包含根據相應的條件進行模糊查詢查詢到其想要的學生信息。

(3)管理子系統包括學生信息的增加、刪除等管理學生信息。

圖3-1

3.2數據庫設計

3.2.1 概念結構設計

(1)學生管理子系統:

在進入頁面之前需要進行登錄,在學生在學號和密碼正確的情況下進入系統。學生可以修改個人的密碼,查詢選修課程、學習成績,還可以查詢、選擇課程。各實體之間的關系:學生和課程:多對多,學生和老師:多對多,學生和專業:多對一。

  1. 管理員管理子系統:

老師在工號和密碼對應的情況下進入系統。

老師可以查詢老師的個人信息和修改個人密碼,可以查詢授課課程信息,可以查詢選修課程的學生,可以對學生的成績進行錄入、修改和查詢。修改個人的密碼

查詢授課課程,查詢選修課程的學生信息,對學生的成績進行錄入、修改和查詢。各實體之間的關系:老師和課程:多對多,老師和專業:多對一。

E-R圖:

圖3-2

3.2.2 邏輯結構設計

關系模型

班級(編號,班級名稱,備注)

學生(編號,姓名,學號,性別,所在院系,班級id,成績等級)

用戶(編號,用戶名,密碼)

學院(編號,學院名稱)

關系模式

t_school_class(id,className,classDesc)

t_student(id,name,sn,sex,dept,classld,score)

t_user(id,userName,password)

dept(id,dept)

基礎數據處理

1. t_school_class班級

2. t_student學生

3. t_user用戶

4.dept學院

3.2.3 物理結構設計

數據庫存儲:在數據庫服務器上,可以創建多個數據庫實例來存儲不同類型的數據,如學生信息、課程信息、成績信息等。每個數據庫實例包含多個表,每個表包含相應的字段來存儲具體的數據。

3.2.4 數據庫建設?

1.建立數據庫

2.使用數據庫

3.創建表

DROP TABLE IF EXISTS `dept`;CREATE TABLE `dept`  (`id` int(11) NOT NULL COMMENT '編號',`dept` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '學院',PRIMARY KEY (`id`) USING BTREE,INDEX `dept`(`dept` ASC) USING BTREE) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;DROP TABLE IF EXISTS `t_school_class`;CREATE TABLE `t_school_class`  (`id` int(11) NOT NULL AUTO_INCREMENT,`className` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`classDesc` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;DROP TABLE IF EXISTS `t_student`;CREATE TABLE `t_student`  (`id` int(11) NOT NULL AUTO_INCREMENT,`name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`sn` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`sex` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`dept` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`classId` int(11) NULL DEFAULT NULL,`score` varchar(1000) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (`id`) USING BTREE,INDEX `classId`(`classId` ASC) USING BTREE,INDEX `t_student_ibfk_2`(`dept` ASC) USING BTREE,CONSTRAINT `t_student_ibfk_1` FOREIGN KEY (`classId`) REFERENCES `t_school_class` (`id`) ON DELETE RESTRICT ON UPDATE RESTRICT) ENGINE = InnoDB AUTO_INCREMENT = 18 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;DROP TABLE IF EXISTS `t_user`;CREATE TABLE `t_user`  (`id` int(11) NOT NULL AUTO_INCREMENT,`userName` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,`password` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL,PRIMARY KEY (`id`) USING BTREE) ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;

3.3?系統安全性設計

在系統功能的安全性需求上,應該從保密性、完整性、身份可認性、可用性以及可控性等多個角度進行分析。具體有!

(1)保密性。對于系統中涉及的信息對沒有授權的實體,不可進行對信息的查看與修改。

(2)完整性。信息在存儲和上傳過程中不會發生改變。

(3)身份可認性。在使用系統時應對用戶信息進行確認,避免信息混亂,導致信息泄露

(4)可用性。保證授權的用戶在使用時不會發生不能使用的情況。

3.4?本章小結

系統總體設計主要由系統功能結構設計,數據庫設計和系統安全性設計組成,以此來滿足用戶在使用時的體驗感,提高系統使用時的穩定性。

4 系統實現

?4.1 系統架構實現

本系統主要包括三種業務流程:登陸業務流程、學生個人信息業務流程、班級業務流程。該系統采用多層架構,視圖類用作表示層。除了向客戶提供信息之外,它還獲得管理員或教師或學生輸入的信息。用戶輸入的簡單控制。表單獲得用戶輸入信息后,提交給視圖,在這里首先轉換獲得的數據,然后將相應的數據封裝為數據傳輸對象。視圖將封裝的數據提交給模型,并使用提交給視圖的數據對象來執行復雜的業務邏輯操作。對數據庫的訪問是在DAO級別。DAO層實現特定的數據庫操作方法,服務層調用DAO層方法來實現數據庫操作。通過應用這種多層體系結構,提高了系統的可維護性、可擴展性和可移植性。

登陸業務流程概述:輸入用戶名、密碼,登錄到系統,對相關信息進行增、刪、改、查以及導入和導出。進行完操作之后,點擊安全退出,退出系統。管理員業務流程圖如圖3-2所示。

圖4.1.1業務流程圖

從功能模塊上可以分為如下幾大模塊:學生信息的導入、導出模塊、刪除學生信息模塊、修改學生信息模塊、查詢學生信息模塊、添加學生信息模塊。主要功能模塊如圖4.1.2所示。

?

?

???

圖4.1.2?學生個人信息模塊圖

班級信息模塊類似有刪除班級信息模塊、修改班級信息模塊、查詢班級信息模塊、添加班級信息模塊。主要功能模塊如圖4.1.3所示。?

圖4.1.3?班級信息模塊圖

4.2 系統功能實現

4.2.1登錄界面實現

首先新建用戶登錄所對應的實體user類,一個user對象代表一個用戶,此外,用戶表中有的字段,都需要在這個類中反應出來,并且創建空參和滿參構造方法,以及set、get和toString方法。

用戶實體類:

public class User {private int id; // 編號private String userName; // 用戶名private String password; // 密碼public User() {super();// TODO Auto-generated constructor stub}public User(String userName, String password) {super();this.userName = userName;this.password = password;}

(set和get方法以及同toString方法省略)

第二步就是對登錄的邏輯處理,首先是登陸名以及密碼的非空校驗,兩者有一個為空就不繼續訪問數據庫,直接返回給用戶錯誤的信息,提醒用戶更正登錄信息。

圖4.2.1.1登錄界面圖

當用戶名或者密碼為空的時候點擊登錄就會出現提示信息,如圖4.2.1.2

圖4.2.1.2登錄界面提示信息圖

代碼部分的實現是使用了awt框架中的事件處理函數

private void loginActionPerformed(ActionEvent evt) {String userName=this.userNameTxt.getText();String password=new String(this.passwordTxt.getPassword());if(StringUtil.isEmpty(userName)){JOptionPane.showMessageDialog(null, "用戶名不能為空!");return;}if(StringUtil.isEmpty(password)){JOptionPane.showMessageDialog(null, "密碼不能為空!");return;}User user=new User(userName,password);Connection con=null;try {con=dbUtil.getCon();User currentUser=userDao.login(con, user);if(currentUser!=null){dispose();new MainFrm().setVisible(true);}else{JOptionPane.showMessageDialog(null, "用戶名或者密碼錯誤!");}} catch (Exception e) {e.printStackTrace();}finally{try {dbUtil.closeCon(con);} catch (Exception e) {e.printStackTrace();}}}

4.2.2 班級信息模塊設計

首先新建班級所對應的實體studentClass類,一個studentClass對象代表一個班級,此外,班級表中有的字段,都需要在這個類中反應出來,并且創建空參和滿參構造方法,以及set、get和toString方法。

班級實體類:

public class SchoolClass {private int id; // 編號private String className; // 班級名稱private String calssDesc; // 備注public SchoolClass() {super();}public SchoolClass(String className, String calssDesc) {super();this.className = className;this.calssDesc = calssDesc;}public SchoolClass(int id, String className, String calssDesc) {super();this.id = id;this.className = className;this.calssDesc = calssDesc;}

(set和get方法以及同toString方法省略)

第二步就是對班級信息邏輯部分的實現了,包括增加刪除修改查詢,其中添加是單獨放在了一個界面,而查詢、修改以及刪除放在了同一個界面,這樣便于維護,如圖所示

圖4.2.2.1班級信息界面圖

點擊添加則會調用添加部分的界面函數,彈出信息添加的界面如圖所示,可以輸入班級的名稱,以及對班級的詳細描述進行添加,在輸入錯誤的情況下也可以點擊重置,就會清空所有填寫的信息,這樣便于操作。

圖4.2.2.2班級信息界面圖

點擊維護則會調用維護部分的界面函數,彈出信息維護的界面如圖所示,可以修改班級的名稱,以及對班級的詳細描述進行修改。

圖4.2.2.2班級信息界面圖

實現班級信息維護的代碼如下,其中也是使用了awt中的事件處理函數,以及swing中的函數實現界面的顯示跳轉彈框等交互的操作。

private void bookTypeAddActionPerformed(ActionEvent evt) {String className=this.classNameTxt.getText();String classDesc=this.classDescTxt.getText();if(StringUtil.isEmpty(className)){JOptionPane.showMessageDialog(null, "班級信息名稱不能為空!");return;}SchoolClass schoolClass=new SchoolClass(className,classDesc);Connection con=null;try{con=dbUtil.getCon();int n=schoolClassDao.add(con, schoolClass);if(n==1){JOptionPane.showMessageDialog(null, "班級信息添加成功!");resetValue();}else{JOptionPane.showMessageDialog(null, "班級信息添加失敗!");}}catch(Exception e){e.printStackTrace();JOptionPane.showMessageDialog(null, "班級信息添加失敗!");}finally{try {dbUtil.closeCon(con);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

4.2.3 學生信息模塊設計

首先新建學生所對應的實體student類,一個student對象代表一個用戶,此外,用戶表中有的字段,都需要在這個類中反應出來,并且創建空參和滿參構造方法,以及set、get和toString方法。

用戶實體類:

public class Student {private int id; // 編號private String name; // 姓名private String sn; // 學號private String sex; // 性別private String dept; // 所在院系private Integer classId; // 班級Idprivate String className; // 班級名稱private String score; // 成績等級public Student() {super();}public Student(String name, String sn, String sex, String dept, Integer calssId, String address) {super();this.name = name;this.sn = sn;this.sex = sex;this.dept = dept;this.classId = calssId;this.score = score;}

(set和get方法以及同toString方法省略)

第二步就是對學生個人信息邏輯部分的實現了,包括增加刪除修改查詢,其中添加是單獨放在了一個界面,而查詢、修改以及刪除放在了同一個界面,這樣便于維護,如圖所示

圖4.2.3.1學生信息界面圖

其中手工填寫學生的姓名學號、所在院系和成績等級,性別通過單選框選擇,班級通過下拉菜單進行選擇。

圖4.2.3.2學生信息添加界面圖

在學生信息維護的界面可以對學生信息進行檢索,可以通過學生的姓名、學生的編號、學生所在的班級進行篩選,點擊選擇某位學生的信息,就可以對該學生的信息進行操作了,可以修改其名字、性別、所在的學院、學生的學號、所屬的班級以及家庭住址。也可以點擊刪除、刪除該學生的信息。

圖4.2.3.3學生信息修改/刪除界面圖

實現個人信息維護的代碼如下,其中也是使用了awt中的事件處理函數,以及swing中的函數實現界面的顯示跳轉彈框等交互的操作,學生信息的字段信息比較多需要注意要對應字段賦值。

private void studentUpdateActionPerformed(ActionEvent evt) {String id=this.idTxt.getText();if(StringUtil.isEmpty(id)){JOptionPane.showMessageDialog(null, "請選擇要修改的記錄");return;}String sname=this.nameTxt.getText();String sn=this.snTxt.getText();String dept=this.deptTxt.getText();String address=this.addressTxt.getText();if(StringUtil.isEmpty(sname)){JOptionPane.showMessageDialog(null, "學生信息名稱不能為空!");return;}if(StringUtil.isEmpty(sn)){JOptionPane.showMessageDialog(null, "學生學號不能為空!");return;}if(StringUtil.isEmpty(dept)){JOptionPane.showMessageDialog(null, "學生學院不能為空!");return;}String sex="";if(manJrb.isSelected()){sex="男";}else if(femaleJrb.isSelected()){sex="女";}SchoolClass schoolClassTmp=(SchoolClass) schoolClassJcb.getSelectedItem();int scId=schoolClassTmp.getId();Student book=new Student(Integer.parseInt(id),  sname, sn, sex, dept,  scId,  address);Connection con=null;try{con=dbUtil.getCon();int addNum=studentDao.update(con, book);if(addNum==1){JOptionPane.showMessageDialog(null, "學生信息修改成功!");resetValue();this.fillTable(new Student());}else{JOptionPane.showMessageDialog(null, "學生信息修改失敗!");}}catch(Exception e){e.printStackTrace();JOptionPane.showMessageDialog(null, "學生信息修改失敗!");}finally{try {dbUtil.closeCon(con);} catch (Exception e) {// TODO Auto-generated catch blocke.printStackTrace();}}}

學生的編號是信息維護邏輯操作的關鍵所在,首先需要通過學生的編號id查出該學生的各類信息反顯在前臺界面,然后根據前臺更新后的信息,先映射到學生的實體類然后通過數據庫dao層同步更新數據庫的信息,最后達到學生信息的維護。

5 測試

5.1.1數據一致性測試

本次測試主要檢測添加和修改班級信息的功能部分是否符合預期,通過輸入不同的班級信息確認表的建立

表5.1.1 添加和修改班級信息

班級名稱

班級信息

是否成功

計科1班

某個班級

計科2班

老師帶的最好班級

null

某個班級

本次測試主演檢測添加班級功能部分是否符合預期,通過輸入班級名稱為空的情況,如表5.1.2所示,若班級名稱為空都能添加成功,所以這個系統的數據庫在后期的維護中要進行修改,不符合實際情況,實際情況就是,在學校內,班級名稱是必不可少的。當然,本小組成員在后期維護中會不定期檢查系統,完善系統。

表5.1.2 添加和修改班級測試表

班級名稱

班級信息

是否通過

計科1班

某個班級

計科2班

最好的班級

null

某個班級

本次測試主要檢測學生信息添加部分是否符合預期,通過輸入不同的名字和學號,包括兩者為空的情況,如表5.1.3所示,當學號、名字、學院有一者為空時,均無法實現信息的添加,符合實際情況,而當輸入的成績為空時,這段信息符合部分考生因缺考等原因無成績,符合預期。

表5.1.3 輸入學生成績信息測試表

名字

學號

學生學院

成績等級

是否通過

小鳴

20209054

信工院

A

null

12345678

傳藝院

B

陳哥

null

信工院

A

張三

23145678

null

A

李四

45678912

經管院

null

本次測試主要檢測學生信息的查詢功能部分是否符合預期,通過輸入不同的姓名、學號、班級包括為空的情況,測試它的實體完整性。如表5.1.4所示,當輸入學生姓名,學號,班級為空時,可以出現該學生的相關信息;輸入學生學號。而姓名班級為空時,同樣可以出現該學生信息,而姓名學號為空時,輸入如班級,則顯示為2班全班信息,當姓名、學號、班級全為空時,則顯示所有數據。符合預期。

表5.1.4 學生信息查詢測試

姓名

學號

班級

學院

是否通過

陳璆鳴

null

null

null

null

12345678

null

null

null

null

計科2班

null

null

null

null

信工院

null

null

null

null

本次測試主要檢測管理員操作修改學生信息功能部分是否符合預期,在選擇相應的信息后,在相關內容里進行修改,測試實體完整性。如表5.1.7所示,若沒有選擇相應的信息則無法進行修改。所以,只有當數據庫內有相應的信息,并且選擇了相應信息并進行輸入才能判斷正確,通過測試。

表5.1.7 修改學生成績信息測試表

選擇

姓名

性別

學院

學號

班級

成績

是否通過

陳璆鳴

信工

12345678

計科1班

A+

null

null

null

null

null

null

否(未選擇內容

5.1.2數據庫的性能測試

應用軟件除了功能外,很重要的一部分就是軟件的性能,而對于數據庫系統,數據庫性能的好壞會直接影響應用軟件的性能,這部分的測試,一般手工測試就顯得無能為力了,這時就要借助自動化的測試軟件,例如:DataFactory,DataFactory 是一種強大的數據產生器,它允許開發人員和測試人員很容易產生百萬行有意義的正確的測試數據庫,該工具支持DB2、Oracle、Sybase、SQL Server 數據庫。這樣,就可以模擬出應用軟件長期使用后,海量數據存儲的數據庫的性能狀況。從而盡早發現問題,進行數據庫性能的優化。(未來的設想和維護)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/76791.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/76791.shtml
英文地址,請注明出處:http://en.pswp.cn/web/76791.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Linux mmp文件映射補充(自用)

addr一般為NULL由OS指明,length所需長度(4kb對齊),prot(權限,一般O_RDWR以讀寫), flag(MAP_SHARED(不刷新到磁盤上,此進程獨有)和MAP_PRIVATE(刷新…

Nginx openresty web服務 與 Go 原生web服務性能對比

1 概述 Nginx采用的是IO復用模型,能處理超高并發。 Go語言采用協程,能輕量級的處理超高并發。 那么在不考慮業務邏輯復雜的前提下,即假如將Nginx和Go都提供一個/test接口,并在接口邏輯中都只是讓其做20毫秒的耗時操作&#xff0c…

[創業之路-377]:企業法務 - 有限責任公司與股份有限公司的優缺點對比

有限責任公司(簡稱“有限公司”)與股份有限公司(簡稱“股份公司”)是我國《公司法》規定的兩種主要公司形式,二者在設立條件、治理結構、股東權利義務等方面存在顯著差異。以下從核心特征、設立條件、治理結構、股東權…

QEMU源碼全解析 —— 塊設備虛擬化(21)

接前一篇文章:QEMU源碼全解析 —— 塊設備虛擬化(20) 本文內容參考: 《趣談Linux操作系統》 —— 劉超,極客時間 《QEMU/KVM源碼解析與應用》 —— 李強,機械工業出版社 特此致謝! 上一回開始解析blockdev_init函數,講到了其中調用的blk_new_open函數,該函數的作用…

藍橋杯中的知識點

總結: 這次考的并不理想 比賽前好多知識點遺漏 但到此為止已經結束了 mod 是 模運算(Modulo Operation)的縮寫,表示求兩個數相除后的 余數 10mod31 (a % b) (7%21) 1e9代表1乘以10的9次方&#xff0c…

批量替換多個 Word 文檔中的指定圖片

在 Word 文檔中,我們可以插入各種各樣的圖片,比如插入 logo、插入設計圖、施工圖等等。在某些情況下,我們也會碰到需要將 Word 文檔中某張圖片替換成其它圖片的場景,比如將舊的 Logo 替換成新的 Logo。當我們有大量的 Word 文檔需…

基于微信小程序的中醫小妙招系統的設計與實現

hello hello~ ,這里是 code袁~💖💖 ,歡迎大家點贊🥳🥳關注💥💥收藏🌹🌹🌹 🦁作者簡介:一名喜歡分享和記錄學習的在校大學生…

Java 8 新特性深度解析:現代編程的轉折點

精心整理了最新的面試資料和簡歷模板,有需要的可以自行獲取 點擊前往百度網盤獲取 點擊前往夸克網盤獲取 Java 8 是 Java 發展史上的重要里程碑,它引入了函數式編程范式、增強了集合處理能力,并徹底革新了日期時間處理方式。本文將通過代碼示…

鷓鴣云平臺實時追蹤任務進度的核心機制

一、?三維可視化監控? BIMGIS融合建模?:通過無人機測繪與三維建模技術生成施工場地數字孿生模型,支持實時查看各標段三維模型與施工進度的匹配度,偏差超過5%自動觸發預警。 進度匹配度分析?:中央數據中臺整合施工規劃、資源…

【Spring Boot】MyBatis多表查詢的操作:注解和XML實現SQL語句

1.準備工作 1.1創建數據庫 (1)創建數據庫: CREATE DATABASE mybatis_test DEFAULT CHARACTER SET utf8mb4;(2)使用數據庫 -- 使?數據數據 USE mybatis_test;1.2 創建用戶表和實體類 創建用戶表 -- 創建表[??表…

ISO15189認證有什么要求?ISO15189認證流程

ISO 15189 認證要求及流程詳解 ISO 15189 是國際標準化組織(ISO)針對 醫學實驗室質量和能力 的認證標準,適用于醫院檢驗科、第三方醫學實驗室、血站等機構。該認證確保實驗室的技術能力和管理體系符合國際標準,提高檢測結果的準確…

【Linux】調試工具gdb的認識和使用指令介紹(圖文詳解)

目錄 1、debug和release的知識 2、gdb的使用和常用指令介紹: (1)、windows下調試的功能: (2)、進入和退出: (3)、調試過程中的相關指令: 3、調試究竟是在…

【Pytorch 中的擴散模型】去噪擴散概率模型(DDPM)的實現

介紹 廣義上講,擴散模型是一種生成式深度學習模型,它通過學習到的去噪過程來創建數據。擴散模型有很多變體,其中最流行的通常是文本條件模型,它可以根據提示生成特定的圖像。一些擴散模型(例如 Control-Net&#xff0…

Milvus(3):數據庫、Collections說明

1 數據庫 Milvus 在集合之上引入了數據庫層,為管理和組織數據提供了更有效的方式,同時支持多租戶。 1.1 什么是數據庫 在 Milvus 中,數據庫是組織和管理數據的邏輯單元。為了提高數據安全性并實現多租戶,你可以創建多個數據庫&am…

【質量管理】“武藏曲線”和“微笑曲線”的差異

什么是“微笑曲線” 在電子制造領域,“微笑曲線”(Smiling Curve)是由宏碁集團創始人施振榮于1992年提出的一個理論模型,用于描述產業鏈中不同環節的附加價值分布。該曲線因形狀類似“微笑”而得名,核心觀點是&#xf…

【html】a標簽target屬性以及擴展應用

進行頁面新窗口打開跳轉&#xff0c;我們使用 <a> 標簽即可實現。 <a>標簽可以通過設置target的值來控制此鏈接的打開方式&#xff0c;一般可取以下值&#xff1a; _self&#xff1a;默認值&#xff0c;鏈接在當前窗口打開 _blank&#xff1a;鏈接在新窗口打開 …

一文讀懂什么是 MCP、A2A、ANP

在人工智能快速發展的今天&#xff0c;智能體&#xff08;Agent&#xff09;正逐步成為互聯網交互的新主體。它們不僅能替代人類完成復雜任務&#xff0c;還能通過協作形成更高效的網絡生態。然而&#xff0c;這一切的實現離不開通信協議的支持。本文將解析智能體領域的三大核心…

Python3網絡爬蟲開發--爬蟲基礎

網絡爬蟲基礎 1.1 HTTP基本原理 1.1.1 URI和URL URI即統一資源標志符,URL即統一資源定位符。 有這樣一個鏈接,http://test.com/test.txt,在這個鏈接中,包含了訪問協議https,訪問目錄(即根目錄),資源名稱(test.txt)。通過這樣的鏈接,可以在互聯網上找到這個資源,這…

OpenCV顏色變換cvtColor

OpenCV計算機視覺開發實踐&#xff1a;基于Qt C - 商品搜索 - 京東 顏色變換是imgproc模塊中一個常用的功能。我們生活中看到的大多數彩色圖片都是RGB類型的&#xff0c;但是在進行圖像處理時需要用到灰度圖、二值圖、HSV&#xff08;六角錐體模型&#xff0c;這個模型中顏色的…

Hadoop----高可用搭建

目錄標題 **什么是高可用&#xff1f;****?搭建的步驟**一.jdk**安裝配置**- **要點**: 二.zookeeper**集群配置**- **要點** 三.Hadoop高可用的搭建- **要點**①環境變量的配置②配置文件的修改 ③內容分發④集群任務的初次啟動 什么是高可用&#xff1f; 通過冗余設計 自動…