Java完整的學(xué)生選課系統(tǒng)源碼Word版

上傳人:痛*** 文檔編號(hào):45647222 上傳時(shí)間:2021-12-08 格式:DOC 頁數(shù):20 大?。?3.50KB
收藏 版權(quán)申訴 舉報(bào) 下載
Java完整的學(xué)生選課系統(tǒng)源碼Word版_第1頁
第1頁 / 共20頁
Java完整的學(xué)生選課系統(tǒng)源碼Word版_第2頁
第2頁 / 共20頁
Java完整的學(xué)生選課系統(tǒng)源碼Word版_第3頁
第3頁 / 共20頁

下載文檔到電腦,查找使用更方便

0 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《Java完整的學(xué)生選課系統(tǒng)源碼Word版》由會(huì)員分享,可在線閱讀,更多相關(guān)《Java完整的學(xué)生選課系統(tǒng)源碼Word版(20頁珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //需求分析:寫一個(gè)較為嚴(yán)謹(jǐn)?shù)膶W(xué)生選課系統(tǒng),實(shí)現(xiàn)學(xué)生可以選擇多門選課課程,并將有效選課結(jié)果保存到數(shù)據(jù)庫。學(xué)生需要登錄后,才能選課。讓學(xué)生可以在選課系統(tǒng)通過多種方式查詢到要選的課程信息。 //選課規(guī)則:1、每個(gè)學(xué)生可以選多門課程,多次選課的總學(xué)分不能超過6學(xué)分;2、不能重復(fù)選擇一門課程;3、每一門課程的選課人數(shù)都有數(shù)量限制,當(dāng)某門課程的選課名額滿時(shí),則應(yīng)另選課程。4、憑用戶名和密碼登錄,通過提交某一課程號(hào)來選課 //總體設(shè)計(jì)方案:建立三個(gè)類:登錄類register,選課類studentChooseCourse,數(shù)據(jù)庫工具類JDBCUt

2、il;一個(gè)SQL腳本文件用于生成數(shù)據(jù)庫表結(jié)構(gòu)和初始記錄,以搭建數(shù)據(jù)庫環(huán)境。 登錄類register類,負(fù)責(zé)對(duì)用戶的身份進(jìn)行驗(yàn)證;工具類JDBCUtil用于實(shí)現(xiàn)連接,你可調(diào)用JDBCUtil的getConnection()方法等到鏈接。 選課類studentChooseCourse用于,實(shí)現(xiàn)選課功能。其中包括幾個(gè)主要方法: 1、actionPerformed(ActionEvent) 用于監(jiān)聽用戶“查詢”和“提交”操作,并負(fù)責(zé)調(diào)用各種方法對(duì)其進(jìn)行處理 2、createSearchCourse()用于產(chǎn)生圖形用戶界面 3、processBeforeCommit()用于對(duì)用戶的“提交”查找

3、進(jìn)行驗(yàn)證,剔除無效的用戶操作 4、tryCommit()負(fù)責(zé)對(duì)有效的“提交”操作,進(jìn)一步處理,并將有效的操作結(jié)果時(shí)時(shí)保存到數(shù)據(jù)庫,并更新數(shù)據(jù)庫原有信息 //本程序用到的知識(shí)點(diǎn):數(shù)據(jù)庫連接JDBC;SQL建表、插入輸入、動(dòng)態(tài)查詢;圖形用戶界面的產(chǎn)生以及處理查詢結(jié)果集并較好顯示;程序設(shè)計(jì)基礎(chǔ)知識(shí)。   //代碼如下: import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.sql.*; import j

4、avax.swing.*; import javax.swing.table.DefaultTableModel; import school.schoolPicture.JdbcUtil; 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! public class StudentChooseCourse extends JFrame implements ActionListener { JTextField jtfSearch = new JTextField(11); String[] columnNames = new String[] { "課程ID&

5、quot;, "課程名", "學(xué)時(shí)", "學(xué)分", "學(xué)期", "性質(zhì)" }; DefaultTableModel dtmSearch = new DefaultTableModel(columnNames, 27); JTable jtSearch = new JTable(dtmSearch); JScrollPane jspSearch = new JScrollPane(jtSearch); JComboBox jcbSearch = new JComboBox(); JTex

6、tField jtfSelectedCourse = new JTextField(10); Connection con = null; PreparedStatement ps = null; ResultSet rs = null; private static String usrName; private static String passwrd; //在構(gòu)造方法中添加兩個(gè)參數(shù)。以便在"提交"時(shí),將學(xué)生的身份連同所選的課程,一同記錄在學(xué)生選課表中。 public StudentChooseCourse(String usrName, String

7、passwrd) { createSearchCourse(); this.usrName = usrName; this.passwrd = passwrd; } public String getUsrName() { return usrName; } public void setUsrName(String usrName) { this.usrName = usrName; } public String getPasswrd() { return passwrd; } public void setPasswrd(String passwrd) {

8、this.passwrd = passwrd; }   傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //根據(jù)用戶的時(shí)間,做出相應(yīng)的反映 public void actionPerformed(ActionEvent e) { String str = e.getActionCommand(); //清空結(jié)果顯示區(qū)中的內(nèi)容,如果有的話。 if ("查詢".trim().equals(str)) { int k = 1; while (k < 10) { for (int i = 1; i < 7; i++) { j

9、tSearch.setValueAt(null, k - 1, i - 1); } k++; } //調(diào)用下面的這個(gè)方法,在數(shù)據(jù)庫中進(jìn)行查找,并將結(jié)果顯示在表格中。 searchAvailableCourse(); } else if ("提交".equals(str)) { //processBeforeCommit()對(duì)用戶選課操作進(jìn)行有效性檢驗(yàn); //剔除無效操作:如輸入無效的課程號(hào),或已經(jīng)選擇了某一課程,已經(jīng)選滿的6學(xué)分等各種情況 boolean effect=processBeforeCommit(); //如果課程存在,且該學(xué)生具有選擇該課

10、程的資格,即effect為true,進(jìn)入正式提交程序(tryCommit()) if(effect==true) {tryCommit();} } } //對(duì)用戶選課操作進(jìn)行有效性檢驗(yàn); public boolean processBeforeCommit(){ //清空原結(jié)果顯示區(qū)中的內(nèi)容,如果有的話。 int k = 1; while (k < 10) { for (int i = 1; i < 7; i++) { jtSearch.setValueAt(null, k - 1, i - 1); } k++; } //取得用戶輸入的課程號(hào)

11、 String userInput = jtfSelectedCourse.getText().toString().trim() .toLowerCase(); //無效操作1:在數(shù)據(jù)庫中的coursexx表中查詢?cè)撜n程號(hào)。如果不存在該課程,給出提示。 String sql = "select cno from coursexx where cno=? "; boolean flagCourseExist = false; try { ps = con.prepareStatement(sql); ps.setString(1, userInput);

12、rs = ps.executeQuery(); flagCourseExist = rs.next(); } catch (Exception eC) { eC.printStackTrace(); } if (!flagCourseExist) { JOptionPane.showMessageDialog(null, "該課程不存在,請(qǐng)重新輸入"); return false; } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //判斷該學(xué)生選修課已選課程的總學(xué)分是否小于6; //無效操作2:如果已有選課記錄,并且總學(xué)分大于6學(xué)分,該

13、學(xué)生不能在選了。 PreparedStatement ps = null; sql = "select sum(grade) " + "from (select x.sname , o,k.grade grade " + "from coursexx k join choicesxx x " + "on o=o and x.sname=?) result"; String grade =null; try { ps = con.prepareStatement(sql); ps.setString

14、(1, usrName); rs = ps.executeQuery(); while (rs.next()) { grade = rs.getString(1); if(grade==null){grade="0";} } } catch (Exception rrr) { rrr.printStackTrace(); } System.out.println("總學(xué)分:" + grade); if (Integer.parseInt(grade) > 6) { JOptionPane.showMessageDialog

15、(null, "你已經(jīng)選滿6學(xué)分,系統(tǒng)將退出"); this.setVisible(false); return false; } //無效操作3:課程該學(xué)生已經(jīng)選擇了某課程,則不能再選該課程了。 sql = "select * from choicesxx where sname=? and cno=?"; boolean flag = false; try { ps = con.prepareStatement(sql); ps.setString(1, this.getUsrName()); ps.setString(2, us

16、erInput); rs = ps.executeQuery(); flag = rs.next(); } catch (Exception eaa) { eaa.printStackTrace(); } if (flag) { JOptionPane.showMessageDialog(null, "你已經(jīng)選擇了該課程。請(qǐng)另選課程"); return false;} 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //如果以上無效操作都不存在,則返回true,意為這是一個(gè)準(zhǔn)有效操作 return true; } //對(duì)有效的提交操

17、作的進(jìn)行處理 public void tryCommit() { // userInput為用戶輸入的課程ID. String userInput = jtfSelectedCourse.getText().toString().trim() .toLowerCase(); // if course still available(count<MAX_STUDENT),save result. // else if course not available,show Message to student. PreparedStatement ps; String sql

18、= "select (Max-selectedCount) as RemainedCount " + "from Coursexx where cno=?"; try { ps = con.prepareStatement(sql); // 取得學(xué)生ID或名字,將課程ID存入學(xué)生選課表choicesxx ps.setString(1, userInput); rs = ps.executeQuery(); ResultSetMetaData meta = rs.getMetaData(); int cols = meta.getColum

19、nCount(); int RemainedCount = -1; while (rs.next()) { RemainedCount = rs.getInt(1); System.out.println("RemainedCount:" + RemainedCount); } //如果該課程還有選擇的名額,提示單項(xiàng)選課操作成功。 if (RemainedCount > 0) { // save studentId and courseId to student-course table. // this.getUsrName();userInput

20、 sql = "insert into choicesxx values(?,?)"; ps = con.prepareStatement(sql); ps.setString(1, this.getUsrName()); ps.setString(2, userInput); ps.executeUpdate(); JOptionPane.showMessageDialog(null, "選課成功: " + this.getUsrName() + " 選了" + userInput + "." +

21、"" + " 還有 " + RemainedCount + " 人可以選該課程。"); // 更新課程中已選該課程的人數(shù):即將可選該課程的人數(shù)減去1個(gè)人。 sql = "update CourseXX set selectedCount=selectedCount+1 where cno=?"; ps = con.prepareStatement(sql); ps.setString(1, userInput); ps.executeUpdate(); mit(); //如果該課程已經(jīng)沒有選擇名額,

22、提示重新選課 } } catch (Exception es) { es.printStackTrace(); try { con.rollback(); } catch (Exception ey) { ey.printStackTrace(); } } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //對(duì)用戶查詢課程信息,進(jìn)行處理,并顯示查詢結(jié)果 public void searchAvailableCourse() { // 讓程序自動(dòng)選擇連接的是Oracle或SqlServ

23、er. if (JDBCUtil.getConnection() != null) { System.out.println(JDBCUtil.getConnection()); con = JDBCUtil.getConnection(); } else { con = JdbcUtil.getConnection(); } //userInput取得用戶輸入的信息,selectedItem取得用戶選擇的查詢方式 String userInput = jtfSearch.getText().toString().trim().toLowerCase(); String se

24、lectedItem = jcbSearch.getSelectedItem().toString().trim(); System.out.println("User search:" + userInput); System.out.println("selectedItem:" + selectedItem); String sql = null; //按用戶查詢方式,如按課程名,課程ID或?qū)W時(shí)的查詢進(jìn)行處理;并在表格中實(shí)現(xiàn)結(jié)果 try { if ("課程名".equals(selectedItem)) { sql

25、 = "select cno,cname,hour,grade,term,isNeed from CourseXX where cname = ?"; ps = con.prepareStatement(sql); ps.setString(1, userInput); } else if ("課程ID".equals(selectedItem)) { sql = "select cno,cname,hour,grade,term,isNeed from CourseXX where cno = ?"; ps = con.p

26、repareStatement(sql); ps.setString(1, userInput); } else if ("學(xué)時(shí)".equals(selectedItem)) { sql = "select cno,cname,hour,grade,term,isNeed from CourseXX where hour = ?"; ps = con.prepareStatement(sql); ps.setInt(1, Integer.parseInt(userInput)); } else if ("學(xué)分".equal

27、s(selectedItem)) { sql = "select cno,cname,hour,grade,term,isNeed from CourseXX where grade = ?"; ps = con.prepareStatement(sql); ps.setInt(1, Integer.parseInt(userInput)); } else if ("學(xué)期".equals(selectedItem)) { sql = "select cno,cname,hour,grade,term,isNeed from Cours

28、eXX where term = ?"; ps = con.prepareStatement(sql); ps.setString(1, userInput); } System.out.println(sql); rs = ps.executeQuery(); mit(); ResultSetMetaData meta = rs.getMetaData(); int cols = meta.getColumnCount(); String result = null; int k = 1; boolean flag = false; //將查詢結(jié)果以表格的形

29、式顯示出來 while (rs.next()) { for (int i = 1; i <= cols; i++) { result = rs.getString(i); System.out.println(result); jtSearch.setValueAt(result, k - 1, i - 1); } k++; flag = true; } //如果查詢結(jié)果集為空,提示用戶沒有該課程 if (flag == false) { JOptionPane.showMessageDialog(null, "該課程不存在,請(qǐng)重新輸入");

30、 return; } } catch (Exception ex) { ex.printStackTrace(); try { con.rollback(); } catch (Exception er) { er.printStackTrace(); } } //產(chǎn)生圖形用戶界面,以便用戶操作 public void createSearchCourse() { this.setLayout(new GridLayout(3, 1)); JPanel jp1 = new JPanel(); jp1.setLayout(new GridLayout(4, 1));

31、 JPanel jp2 = new JPanel(); JPanel jp3 = new JPanel(); JPanel jp10 = new JPanel(); JPanel jp11 = new JPanel(); JPanel jp12 = new JPanel(); JPanel jp13 = new JPanel(); JLabel jlSearch = new JLabel(" 學(xué) 生 選 課 系 統(tǒng) "); jp11.add(jlSearch); jcbSearch.addItem(new String("課程名"));

32、 jcbSearch.addItem(new String("課程ID")); jcbSearch.addItem(new String("學(xué)時(shí)")); jcbSearch.addItem(new String("學(xué)分")); jcbSearch.addItem(new String("學(xué)期")); jp12.add(jtfSearch); jp12.add(jcbSearch); JButton jbOK = new JButton("查詢"); jbOK.addActionL

33、istener(this); jbOK.setSize(90, 20); jp13.add(jbOK); jp1.add(jp10); jp1.add(jp11); jp1.add(jp12); jp1.add(jp13); jp2.add(jspSearch); JLabel jlSelectedCourse = new JLabel("請(qǐng)輸入課程ID:"); JButton jbSelectedCourse = new JButton("提交"); jbSelectedCourse.addActionListener(this);

34、 jp3.add(jlSelectedCourse); jp3.add(jtfSelectedCourse); jp3.add(jbSelectedCourse); this.add(jp1); this.add(jp2); this.add(jp3); this.setVisible(true); this.setSize(485, 600); } //當(dāng)某學(xué)生有效登錄后,啟動(dòng)程序(將學(xué)生的登錄信息也傳過來,以便保存選課操作時(shí)使用) public static void main(String[] args) { //String usrName = "xu

35、liang"; //String passwrd = "123"; new StudentChooseCourse(usrName, passwrd); } } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //---以下為搭建學(xué)生選課系統(tǒng)的SQL腳本文件。只需運(yùn)行一次,就可有完整的數(shù)據(jù)庫表結(jié)構(gòu)和初始記錄。 //----------------------------------------------------------------------------------------- //該腳本針對(duì)SQLserver;Oracl

36、e的SQL腳本類似,只需將將數(shù)據(jù)類型如varchar改為varchar2,int改為number等 --table1: registerXU 登錄表 drop table registerXu; create table registerXu (id varchar(20),userName varchar(20),passWord varchar(20),identify varchar(20)); insert into registerXu values('s001','xuliang','123','學(xué)生');

37、insert into registerXu values('s002','xuliang2','1234','學(xué)生'); insert into registerXu values('j001','jack','12345','學(xué)生'); insert into registerXu values('001','user','user','學(xué)生'); insert into registerXu

38、values('z001','zlm','corejava','老師'); --String sql = "select * from registerXu " --+ "where userName=? and passWord=? and identify=?"; --table 2:Coursexx課程表 drop table Coursexx; create table Coursexx(cno varchar(20) primary key,cname varchar(2

39、0),hour Int, grade Int,term varchar(20),isNeed varchar(20), selectedCount Int ,Max Int); insert into Coursexx values('c001','CoreJava',50,5,'201007','NoNecessary',0,50); insert into Coursexx values('c002','XML',20,2,'201008','NoNecessary

40、',0,40); insert into Coursexx values('c003','HIBERNATE',20,4,'201008','NoNecessary',0,30); insert into Coursexx values('c004','SQL',20,4,'201006','NoNecessary',0,5); insert into Coursexx values('c005','JDBC',20,2,

41、'201008','NoNecessary',0,3); insert into Coursexx values('c006','AJAX',20,2,'201010','NoNecessary',0,1); insert into Coursexx values('c007','JSP',100,8,'201009','NoNecessary',0,1 --sql = "select cno,cname,hour,gr

42、ade,term,isNeed from CourseXX where cname = ?";   傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! --table 3:學(xué)生表-- drop table studentxx; create table studentxx(sid varchar(20),sname varchar(20) primary key,sex varchar(20),birthday varchar(20), className varchar(20), image varchar(20)); insert into

43、studentxx values('s001','xuliang','male','19901124','sd1003','good'); insert into studentxx values('s002','xuliang2','male','19851124','sd0910','good'); insert into studentxx values('j001','

44、jack','male','19881124','sd1003','good'); insert into studentxx values('001','user','male','19901124','sd1005','good'); insert into studentxx values('s003','sisi','female','19880124'

45、,'sd1007','good'); insert into studentxx values('as003','crystal','female','19880124','asd1007','good'); --table 4:choices學(xué)生選課表 drop table choicesxx; create table choicesxx( sname varchar(20) references studentxx(sname),cno varchar

46、(20) references coursexx(cno)); --判斷某一個(gè)學(xué)生已經(jīng)選的課程的總學(xué)分是否小于6分 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! //----------用戶登錄類 --------------------------------------- //用途:驗(yàn)證用戶是否具有登錄系統(tǒng)的資格------------------------ package school; import javax.swing.*; import school.schoolPicture.JdbcUtil; import java.sql.*; imp

47、ort java.awt.*; import java.awt.event.*; public class Register implements ActionListener { JFrame jf = new JFrame("學(xué)生成績(jī)管理與選課系統(tǒng)"); JTextField jtfUserName = new JTextField(10); JPasswordField jpfPassWord = new JPasswordField(10); JComboBox identify = new JComboBox(); //constructor pu

48、blic Register() { CreateRegisterGUI(); } // deal with user action, when user check:"登錄","取消"or "注冊(cè)" public void actionPerformed(ActionEvent e) { String str = e.getActionCommand(); if (str.equalsIgnoreCase("登錄")) { //當(dāng)用戶點(diǎn)擊登錄時(shí),調(diào)用以下方法去數(shù)據(jù)庫做匹配 processLogin(

49、); } else if (str.equalsIgnoreCase("取消")) { jtfUserName.setText(""); jpfPassWord.setText(""); } else if (str.equalsIgnoreCase("注冊(cè)")) { new CreateLogin(); } } //當(dāng)用戶點(diǎn)擊登錄時(shí),調(diào)用以下方法去數(shù)據(jù)庫做匹配 public void processLogin() { // create connection to the database.

50、 Connection con = null; // Connection con = JDBCUtil.getConnection(); //讓程序自動(dòng)連接相應(yīng)的數(shù)據(jù)庫,以避免連接數(shù)據(jù)庫時(shí)頻繁改動(dòng)連接程序 if (JdbcUtil.class == null) { //連接達(dá)內(nèi)Oracle數(shù)據(jù)庫 con = JdbcUtil.getConnection(); } else { //連接本地SQLSERVER數(shù)據(jù)庫 con = JDBCUtil.getConnection(); } // write sql sentence String usrName = jtfUse

51、rName.getText().trim(); String passwrd = new String(jpfPassWord.getPassword()).trim(); String ident = identify.getSelectedItem().toString().trim(); String sql = "select * from registerXu " + "where userName=? and passWord=? and identify=?"; System.out.println(usrName + "

52、;:" + passwrd + ":" + ident); // create object of PreparedStatement try { PreparedStatement ps = con.prepareStatement(sql); // Prepare parameter for the sql ps.setString(1, usrName); ps.setString(2, passwrd); ps.setString(3, ident); // send parameter to compiler to compile. R

53、esultSet rs = ps.executeQuery(); StringBuffer sb = new StringBuffer(""); ResultSetMetaData meta = rs.getMetaData(); int cols = meta.getColumnCount(); //you can use another simple way to check whether the people has records in database: //define a boolean flag=false, if has record chan

54、ge it //to true;otherwise, if flag=flase,showMessage("Input ERROR") while (rs.next()) { for (int i = 1; i < cols; i++) { sb.append(meta.getColumnName(i)); sb.append(rs.getString(i)); } } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! if (sb.length() < 1) { JOptionPane.showMessageDialog(nul

55、l, "用戶名或密碼錯(cuò)誤"); } else if (sb.length() >= 1) { if (ident.equals("student")) { //if he or she is a student, and usrName-passwrd alright, then go to 學(xué)生選課系統(tǒng) new StudentChooseCourse(usrName, passwrd); jf.setVisible(false); // new StudentEntered(); } else if (ident.equals(&q

56、uot;teacher")) { // new TeacherEntered(usrName,passwrd); new TeacherEntered(); jf.setVisible(false); } else if (ident.equals("admin")) { // go to administrator pages. } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! } } catch (Exception er) { er.printStackTrace(); } } //產(chǎn)生圖形用戶界面 public v

57、oid CreateRegisterGUI() { jf.setLayout(new GridLayout(5, 1)); JPanel jp1 = new JPanel(); JLabel jl1 = new JLabel("學(xué)生成績(jī)管理系統(tǒng)"); jp1.add(jl1); jf.add(jp1); JPanel jp2 = new JPanel(); JLabel jl2 = new JLabel("用戶名:"); jp2.add(jl2); jp2.add(jtfUserName); jf.add(jp2); JPanel

58、 jp3 = new JPanel(); // JPasswordField jpfPassWord = new JPasswordField(10); JLabel passWord = new JLabel("密 碼:"); jp3.add(passWord); jp3.add(jpfPassWord); jf.add(jp3); JPanel jp4 = new JPanel(); JLabel jl4 = new JLabel("身 份:"); // identify.addItem(new String("學(xué)生 &qu

59、ot;)); identify.addItem(new String("student ")); // identify.addItem(new String("老師 ")); identify.addItem(new String("teacher ")); // identify.addItem(new String("管理員 ")); identify.addItem(new String("admin ")); identify.addActionListener(this)

60、; jp4.add(jl4); jp4.add(identify); jf.add(jp4); JPanel jp5 = new JPanel(); JButton enter = new JButton("登錄"); enter.addActionListener(this); JButton cancel = new JButton("取消"); cancel.addActionListener(this); JButton regist = new JButton("注冊(cè)"); regist.addActio

61、nListener(this); jp5.add(enter); jp5.add(cancel); jp5.add(regist); jf.add(jp5); jf.setSize(400, 250); jf.setVisible(true); jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! } public static void main(String[] args) { new Register(); } } //--------- 選課系統(tǒng)多次調(diào)

62、用到的本類JDBCUtil的getConnection方法-------------------------------- //---------通過該工具類選課系統(tǒng)連接到數(shù)據(jù)庫。JdbcUtil類與次類似,連接的是Oracle數(shù)據(jù)庫---------- import java.sql.*; public class JDBCUtil { public JDBCUtil() { } PreparedStatement ps = null; ResultSet rs = null; static { String driverName = "com.microsoft

63、.sqlserver.jdbc.SQLServerDriver"; try { Class.forName(driverName); } catch (ClassNotFoundException e) { e.printStackTrace(); } } public static Connection getConnection() { Connection connection = null; String url = "jdbc:sqlserver://localhost:1433; DatabaseName=master"; Stri

64、ng user = "sa"; String password = "sd100301"; // String password="Foolish004"; try { connection = DriverManager.getConnection(url, user, password); connection.setAutoCommit(false); System.out.println(connection); } catch (SQLException e) { e.printStackTrace(); } return connection; } 傳播優(yōu)秀Word版文檔 ,希望對(duì)您有幫助,可雙擊去除! public static void main(String[] args) { new JDBCUtil().getConnection(); } }

展開閱讀全文
溫馨提示:
1: 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
2: 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
3.本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
5. 裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!