日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Java實(shí)現(xiàn)學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ) (java中把學(xué)生信息數(shù)據(jù)寫入數(shù)據(jù)庫(kù))

隨著時(shí)代的變遷,計(jì)算機(jī)技術(shù)快速發(fā)展,數(shù)據(jù)庫(kù)管理系統(tǒng)已成為日常生活和工作中必不可少的一部分。那么,如何實(shí)現(xiàn)一個(gè)簡(jiǎn)單的學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ)系統(tǒng)呢?本文將介紹如何使用Java技術(shù),實(shí)現(xiàn)一個(gè)基本的學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ)系統(tǒng)。

一、需求分析

在開(kāi)始實(shí)現(xiàn)之前,我們需要先明確需求。本文要實(shí)現(xiàn)的學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ)系統(tǒng)需要具有以下功能:

1.能夠輸入學(xué)生的基本信息,如姓名、性別、年齡、出生日期等。

2.能夠?qū)W(xué)生信息進(jìn)行查詢、修改和刪除操作。

3.能夠?qū)W(xué)生信息保存到數(shù)據(jù)庫(kù)中。

4.能夠從數(shù)據(jù)庫(kù)中讀取學(xué)生信息并顯示。

以上是實(shí)現(xiàn)該系統(tǒng)的基本要求,下面將分別介紹如何實(shí)現(xiàn)這些功能。

二、實(shí)現(xiàn)輸入學(xué)生基本信息

Java提供了很多方便的輸入輸出類來(lái)幫助我們實(shí)現(xiàn)輸入輸出操作,如Scanner類、Console類、System.in類等。在本文中,我們將使用Scanner類來(lái)實(shí)現(xiàn)輸入學(xué)生基本信息。

在Java中我們需要定義一個(gè)學(xué)生類,用來(lái)存儲(chǔ)學(xué)生的基本信息。學(xué)生類可以包含屬性:姓名、性別、年齡、出生日期等。然后,我們需要?jiǎng)?chuàng)建一個(gè)學(xué)生信息數(shù)組,用來(lái)存儲(chǔ)多個(gè)學(xué)生信息。

接下來(lái),我們使用Scanner類來(lái)獲取用戶輸入的學(xué)生信息,并將學(xué)生信息存儲(chǔ)到學(xué)生信息數(shù)組中,代碼如下:

public static void mn(String[] args) {

Scanner input = new Scanner(System.in);

int num; //存儲(chǔ)學(xué)生數(shù)量

System.out.println(“請(qǐng)輸入學(xué)生的數(shù)量:”);

num = input.nextInt(); //獲取學(xué)生數(shù)量

//定義學(xué)生信息數(shù)組

Student[] s = new Student[num];

System.out.println(“請(qǐng)輸入學(xué)生的基本信息:”);

for(int i=0; i

s[i] = new Student(); //創(chuàng)建學(xué)生對(duì)象

System.out.print(“姓名:”);

String name = input.next();

s[i].setName(name);

System.out.print(“性別:”);

char sex = input.next().charAt(0);

s[i].setSex(sex);

System.out.print(“年齡:”);

int age = input.nextInt();

s[i].setAge(age);

System.out.print(“出生日期(yyyy-MM-dd):”);

Date birthday = new SimpleDateFormat(“yyyy-MM-dd”).parse(input.next());

s[i].setBirthday(birthday);

System.out.println(“————————–“);

}

}

三、實(shí)現(xiàn)查詢、修改和刪除學(xué)生信息

通過(guò)上面的代碼,我們已經(jīng)實(shí)現(xiàn)了輸入學(xué)生的基本信息,接下來(lái)我們將實(shí)現(xiàn)查詢、修改和刪除學(xué)生信息的功能。

Java提供了很多數(shù)據(jù)庫(kù)操作的API,如JDBC、Hibernate、MyBatis等。在本文中,我們將使用JDBC API來(lái)實(shí)現(xiàn)數(shù)據(jù)庫(kù)操作。

我們需要連接數(shù)據(jù)庫(kù),這里我們使用MySQL數(shù)據(jù)庫(kù)。連接數(shù)據(jù)庫(kù)的代碼如下:

Class.forName(“com.mysql.jdbc.Driver”);

String url = “jdbc:mysql://localhost:3306/student_information_system”;

String username = “root”;

String password = “123456”;

Connection conn = DriverManager.getConnection(url, username, password);

然后,我們需要實(shí)現(xiàn)查詢、修改和刪除學(xué)生信息的代碼。代碼如下:

//查詢學(xué)生信息

String sql = “SELECT * FROM student_information”;

PreparedStatement pstmt = conn.prepareStatement(sql);

ResultSet rs = pstmt.executeQuery();

System.out.println(“學(xué)生基本信息如下:”);

while(rs.next()){

String name = rs.getString(“name”);

char sex = rs.getString(“sex”).charAt(0);

int age = rs.getInt(“age”);

Date birthday = rs.getDate(“birthday”);

System.out.println(“姓名:”+name+”\t性別:”+sex+”\t年齡:”+age+”\t出生日期:”+birthday);

}

//修改學(xué)生信息

sql = “UPDATE student_information SET age=? WHERE name=?”;

pstmt = conn.prepareStatement(sql);

pstmt.setInt(1, 20); //將名為小明的學(xué)生年齡修改為20歲

pstmt.setString(2, “小明”);

pstmt.executeUpdate();

//刪除學(xué)生信息

sql = “DELETE FROM student_information WHERE name=?”;

pstmt = conn.prepareStatement(sql);

pstmt.setString(1, “小明”); //刪除名為小明的學(xué)生信息

pstmt.executeUpdate();

四、實(shí)現(xiàn)將學(xué)生信息保存到數(shù)據(jù)庫(kù)中

我們已經(jīng)實(shí)現(xiàn)了查詢、修改和刪除學(xué)生信息的功能,接下來(lái)我們將實(shí)現(xiàn)將學(xué)生信息保存到數(shù)據(jù)庫(kù)中的功能。

代碼如下:

//將學(xué)生信息保存到數(shù)據(jù)庫(kù)中

for(int i=0; i

sql = “INSERT INTO student_information(name, sex, age, birthday) VALUES (?, ?, ?, ?)”;

pstmt = conn.prepareStatement(sql);

pstmt.setString(1, s[i].getName());

pstmt.setString(2, String.valueOf(s[i].getSex()));

pstmt.setInt(3, s[i].getAge());

pstmt.setDate(4, new java.sql.Date(s[i].getBirthday().getTime()));

pstmt.executeUpdate();

}

五、實(shí)現(xiàn)從數(shù)據(jù)庫(kù)中讀取學(xué)生信息并顯示

我們需要實(shí)現(xiàn)從數(shù)據(jù)庫(kù)中讀取學(xué)生信息并顯示的功能。

代碼如下:

//從數(shù)據(jù)庫(kù)中讀取學(xué)生信息并顯示

sql = “SELECT * FROM student_information”;

pstmt = conn.prepareStatement(sql);

rs = pstmt.executeQuery();

System.out.println(“學(xué)生基本信息如下:”);

while(rs.next()){

String name = rs.getString(“name”);

char sex = rs.getString(“sex”).charAt(0);

int age = rs.getInt(“age”);

Date birthday = rs.getDate(“birthday”);

System.out.println(“姓名:”+name+”\t性別:”+sex+”\t年齡:”+age+”\t出生日期:”+birthday);

}

六、

本文介紹了如何使用Java技術(shù),實(shí)現(xiàn)一個(gè)簡(jiǎn)單的學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ)系統(tǒng)。通過(guò)本文所述的方式,可以輕松實(shí)現(xiàn)學(xué)生信息的數(shù)據(jù)庫(kù)存儲(chǔ),并且實(shí)現(xiàn)基本的查詢、修改和刪除學(xué)生信息功能。如果您需要進(jìn)一步了解Java的相關(guān)知識(shí),請(qǐng)參考Java官方文檔或者Java編程的相關(guān)書籍。

相關(guān)問(wèn)題拓展閱讀:

  • 怎樣用Java實(shí)現(xiàn)從文本文檔中讀取數(shù)據(jù)并存入數(shù)據(jù)庫(kù)
  • 用java語(yǔ)句,建立一個(gè)數(shù)據(jù)庫(kù)student,在數(shù)據(jù)庫(kù)中建一個(gè)student表,表中至少有學(xué)號(hào)、姓名、專業(yè)三個(gè)字段

怎樣用Java實(shí)現(xiàn)從文本文檔中讀取數(shù)據(jù)并存入數(shù)據(jù)庫(kù)

不知道你要什么樣的文本,文本中的內(nèi)容是否是有格式的:

這里提供下思路,供參考:

1.文本文件,基本上式字符格式的了,可以用Reader  io流

2.如果是格式化的文本,可以按數(shù)據(jù)的長(zhǎng)度讀取,  readInt   readByte…

3.保存到數(shù)據(jù)庫(kù) 當(dāng)然用JDBC了,如果你讀取出來(lái)封裝成POJO了,也可以選擇 OM框架

import java.io.BufferedReader;

import java.io.FileInputStream;

import java.io.IOException;

import java.io.InputStreamReader;

/**

 * 文件讀取和寫入數(shù)據(jù)庫(kù)

 * @author  樊云升

 *

 */

public class FilesReader {

public FilesReader(){

}

/**

 * 讀取文件內(nèi)容

 * @param FILE

 * @return

 */

public String re_content(String FILE){

String content=””;

 try{

BufferedReader bufRead=new BufferedReader(new InputStreamReader(new FileInputStream(FILE)));  攜掘

      斗衫String  str;

while((str=bufRead.readLine())!=null){

content+=str+”\r\n”;

}

 }catch(IOException ioe){

  ioe.printStackTrace();

 }

return  content;

}

/**

 * 將特定字符寫入數(shù)據(jù)庫(kù)中(原來(lái)我寫的是重寫文件,你這里這里將content寫入數(shù)據(jù)庫(kù)就OK)

 * @param path

 * @return

 */

public boolean writeFile(String content){

try{

//數(shù)據(jù)庫(kù)寫入代碼

 辯銷核      }catch(Exception e){

 out.close();

 return false;

 }

return true;

}

public static void main(String args) {

String content=new FilesReader().re_content(“D:\\AJAX.htm”);

  new FilesReader().writeFile(content);

}

}

用java語(yǔ)句,建立一個(gè)數(shù)據(jù)庫(kù)student,在數(shù)據(jù)庫(kù)中建一個(gè)student表,表中至少有學(xué)號(hào)、姓名、專業(yè)三個(gè)字段

import java.sql.Connection;

import java.sql.Date;

import java.sql.DriverManager;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

import java.sql.PreparedStatement;

public class JDBC {

private Connection con = null;

private Statement stmt = null;

private ResultSet rs = null;

private String driver = “com.mysql.jdbc.Driver”; //不同的數(shù)據(jù)庫(kù)只要稍加修改即可

private String url=”jdbc:

?characterEncoding=GBK”;//連接也要改

private String user = “root”;//

用戶名

private String password = “mysql”;//密碼

/**

* 準(zhǔn)備連接

*/

public void startConnection() throws ClassNotFoundException, SQLException {

Class.forName(driver); //注冊(cè)數(shù)據(jù)庫(kù)驅(qū)動(dòng)

con = DriverManager.getConnection(url, user, password); //獲得數(shù)據(jù)庫(kù)連接

}

/**

* 執(zhí)行select 并返回結(jié)果集 throws SQLException

*/

public ResultSet query(String sql) throws SQLException {

stmt = con.createStatement(); //創(chuàng)建Statement

rs = stmt.executeQuery(sql); //執(zhí)行查詢

return rs;

}

/**

* 執(zhí)行insert update delete

*/

public int update(String sql) throws SQLException {

stmt = con.createStatement();

int r = stmt.executeUpdate(sql);

return r;

}

/**

* 釋放資源(連接)

*/

public void releaseConnection() {

try {

if (rs != null)

rs.close();

stmt.close();

if (con != null)

con.close();

} catch (SQLException e) {

e.printStackTrace();

}

}

}

2.對(duì)數(shù)據(jù)庫(kù)表的操作放在另外一包中,不同的操作在不同的類中實(shí)現(xiàn)—–>只要在其他的包里引入這個(gè)類包,再繼承這個(gè)類即可

操作內(nèi)容:—–>調(diào)用父類者猜派里的方法即可

(1)、使用結(jié)果集對(duì)數(shù)據(jù)庫(kù)表進(jìn)行操首賀作:先插入一條記錄,后刪除一條記錄;(2)、使用

批處理

方法插入3個(gè)學(xué)生的信息;(3)、使用事務(wù)實(shí)現(xiàn)一個(gè)同學(xué)

轉(zhuǎn)專業(yè)

—先刪除一條記錄、后增加一條記錄兆尺(兩者要么同時(shí)實(shí)現(xiàn),要么同時(shí)不實(shí)現(xiàn))。

3、程序的實(shí)現(xiàn)過(guò)程中加入異常處理語(yǔ)句

至少也該說(shuō)說(shuō)用什么數(shù)據(jù)庫(kù)吧…

關(guān)于java中把學(xué)生信息數(shù)據(jù)寫入數(shù)據(jù)庫(kù)的介紹到此就結(jié)束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關(guān)注本站。

成都服務(wù)器租用選創(chuàng)新互聯(lián),先試用再開(kāi)通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)提供簡(jiǎn)單好用,價(jià)格厚道的香港/美國(guó)云服務(wù)器和獨(dú)立服務(wù)器。物理服務(wù)器托管租用:四川成都、綿陽(yáng)、重慶、貴陽(yáng)機(jī)房服務(wù)器托管租用。


當(dāng)前標(biāo)題:Java實(shí)現(xiàn)學(xué)生信息數(shù)據(jù)庫(kù)存儲(chǔ) (java中把學(xué)生信息數(shù)據(jù)寫入數(shù)據(jù)庫(kù))
本文路徑:http://www.5511xx.com/article/dpegcgd.html