2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩59頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、<p><b>  課程設(shè)計(jì)說(shuō)明文檔</b></p><p>  學(xué)生選課管理系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)</p><p><b>  學(xué)校: </b></p><p><b>  學(xué)院:新媒體學(xué)院</b></p><p>  專業(yè)班級(jí):信息管理與信息系統(tǒng)1班</p>

2、<p><b>  姓名: </b></p><p><b>  學(xué)號(hào): </b></p><p><b>  一、課程設(shè)計(jì)目的</b></p><p>  通過(guò)這次的設(shè)計(jì),主要是做出一個(gè)小型的管理系統(tǒng),來(lái)加強(qiáng)對(duì)JAVA所學(xué)知識(shí)的鞏固和融會(huì)貫通,可以說(shuō)是對(duì)一個(gè)學(xué)期所學(xué)知識(shí)的一個(gè)小結(jié),

3、加深對(duì)JAVA數(shù)據(jù)庫(kù)的理解。</p><p>  二、需求分析功能需求分析: 該系統(tǒng)具備管理學(xué)生信息、課程信息、選課信息的功能:用戶通過(guò)輸入賬號(hào)和密碼進(jìn)下該系統(tǒng)后,可以進(jìn)行一些基礎(chǔ)維護(hù)(學(xué)生信息維護(hù)、課程信息維護(hù)、選課信息維護(hù))。全部都可以進(jìn)行增加、修改、刪除、模糊查詢。</p><p><b>  三、數(shù)據(jù)項(xiàng):</b></p><p>

4、  1表admin(用戶表)</p><p>  2表S(學(xué)生信息表)</p><p>  3表C(課程信息表)</p><p>  4表SC(學(xué)生信息表)</p><p><b>  四、系統(tǒng)功能描述</b></p><p>  該小型系統(tǒng)主要是用于管理學(xué)生及課程的基本信息,主要功能包括四方面的

5、:</p><p>  1.管理學(xué)生信息,其中包括添加,刪除,修改等操作。</p><p>  2.管理課程信息,其中包括添加,刪除,修改等操作。</p><p>  3.管理選課信息,其中包括添加,刪除,修改等操作。</p><p>  4.查詢信息,其中包括查詢學(xué)生信息,查詢課程信息,查詢選課信息等操作。</p><p

6、><b>  五、代碼分析</b></p><p><b>  連接數(shù)據(jù)庫(kù)方法:</b></p><p>  這是java連接數(shù)據(jù)庫(kù)的驅(qū)動(dòng),有關(guān)數(shù)據(jù)庫(kù)的操作都要用到他。</p><p>  public static Connection CONN(){</p><p>  String dr

7、iverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加載JDBC驅(qū)動(dòng)</p><p>  String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=student"; //連接服務(wù)器和數(shù)據(jù)庫(kù)test,此處student是數(shù)據(jù)庫(kù)名<

8、/p><p>  String userName = "sa"; //默認(rèn)用戶名</p><p>  String userPwd = "mima"; //密碼</p><p>  Connection dbConn=null;</p><p><b>  try {</b>&

9、lt;/p><p>  Class.forName(driverName);</p><p>  dbConn = DriverManager.getConnection(dbURL, userName, userPwd);</p><p>  System.out.println("Connection Successful!"); </

10、p><p>  //如果連接成功 控制臺(tái)輸出Connection Successful!</p><p>  } catch (Exception e) {</p><p>  e.printStackTrace();}</p><p>  return dbConn;}</p><p>  用戶登錄界面user.java

11、:</p><p>  登錄時(shí),凡是賬號(hào)密碼未填寫(xiě)、輸入錯(cuò)誤賬號(hào)密碼都會(huì)提出錯(cuò)誤提示框。在填寫(xiě)好賬號(hào)密碼后,會(huì)讀取數(shù)據(jù)庫(kù)里admin表,并查詢其輸入是否存在,若無(wú)誤,則登錄到用戶界面。</p><p>  public class User extends JFrame{</p><p>  private JLabel use,password; <

12、/p><p>  private JTextField k1;//用戶名輸入框</p><p>  private JPasswordField k2;//密碼輸入框</p><p>  private JButton b1,b2;</p><p><b>  //登錄窗口</b></p><p> 

13、 public User(JFrame f){</p><p>  super("系統(tǒng)登錄");</p><p>  Container c=getContentPane();</p><p>  c.setLayout(new FlowLayout());</p><p>  use=new JLabel("u

14、sername:");</p><p>  use.setFont(new Font("Serif",Font.PLAIN,20));</p><p>  password=new JLabel("password:");</p><p>  password.setFont(new Font("Serif

15、",Font.PLAIN,20));</p><p>  k1=new JTextField(12);</p><p>  k2=new JPasswordField(12);</p><p>  b1=new JButton("登錄");</p><p>  b2=new JButton("退出&qu

16、ot;);</p><p><b>  //設(shè)置登錄方法</b></p><p>  BHandler b=new BHandler();</p><p>  EXIT d=new EXIT();</p><p>  b1.addActionListener(b);</p><p>  b2.a

17、ddActionListener(d);</p><p><b>  //添加控件</b></p><p>  c.add(use);</p><p>  c.add(k1);</p><p>  c.add(password);</p><p>  c.add(k2);</p>&

18、lt;p>  c.add(b1);</p><p>  c.add(b2);</p><p>  setBounds(600,300,250,150);</p><p>  setVisible(true);</p><p>  setResizable(false);</p><p>  setDefaultC

19、loseOperation(JFrame.EXIT_ON_CLOSE);}</p><p><b>  //主函數(shù)</b></p><p>  public static void main(String[] args) {</p><p>  User f1=new User(new JFrame());}</p><p&

20、gt;<b>  效果圖:</b></p><p>  用戶界面:Menu.java</p><p>  用戶界面能菜單欄有4個(gè)一級(jí)菜單,學(xué)生管理、課程管理、選課管理都能添加、修改、刪除數(shù)據(jù),分別操作數(shù)據(jù)庫(kù)里的S表(學(xué)生),C表(課程),SC表(選課)。查詢管理則可進(jìn)行三個(gè)表的查詢。</p><p>  import java.awt.*;&l

21、t;/p><p>  import java.awt.event.*;</p><p>  import javax.swing.*;</p><p>  public class Menu extends JFrame implements ActionListener{</p><p>  Addstu 增加學(xué)生界面;</p>

22、<p>  Updatastu 修改學(xué)生界面;</p><p>  Delstu 刪除學(xué)生界面;</p><p>  AddC 增加課程界面;</p><p>  DelC 刪除課程界面;</p><p>  UpdateC 修改課程界面;</p><p>  AddSC 增加選課界面;</p>

23、<p>  DelSC 刪除選課界面;</p><p>  UpdateSC 修改選課界面;</p><p>  Selstu 學(xué)生查詢界面;</p><p>  JPanel pCenter;</p><p>  CardLayout card=null;</p><p>  JLabel label=

24、null;</p><p>  JMenuBar mb=new JMenuBar();//菜單欄</p><p>  JMenu m1=new JMenu("學(xué)生管理");</p><p>  JMenuItem add1=new JMenuItem("add1 ");</p><p>  JMen

25、uItem updata1=new JMenuItem("updata1 ");</p><p>  JMenuItem delete1=new JMenuItem("delete1 ");</p><p>  JMenu m2=new JMenu("課程管理");</p><p>  JMenuI

26、tem add2=new JMenuItem("add2 ");</p><p>  JMenuItem updata2=new JMenuItem("updata2 ");</p><p>  JMenuItem delete2=new JMenuItem("delete2 ");</p><p&

27、gt;  JMenu m3=new JMenu("選課管理");</p><p>  JMenuItem add3=new JMenuItem("add3 ");</p><p>  JMenuItem updata3=new JMenuItem("updata3 ");</p><p>  JMe

28、nuItem delete3=new JMenuItem("delete3 ");</p><p>  JMenu m4=new JMenu("查詢管理");</p><p>  JMenuItem 學(xué)生查詢=new JMenuItem("查詢信息 ");</p><p>  JMenuItem m

29、5=new JMenuItem("系統(tǒng)退出");</p><p>  Font t=new Font ("sanerif",Font.PLAIN,12);</p><p>  public Menu (){</p><p>  this.setTitle("學(xué)生選課管理系統(tǒng)");</p>&l

30、t;p>  try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}</p><p>  catch(Exception e){System.err.println("不能設(shè)置外觀: "+e);}</p><p><b>  //組合菜單</b>&

31、lt;/p><p>  addMenu1();</p><p>  addMenu2();</p><p>  addMenu3();</p><p>  addMenu4();</p><p>  addJMenuBar();</p><p>  setJMenuBar(mb);</p>

32、;<p>  label=new JLabel("選課管理系統(tǒng)",JLabel.CENTER);</p><p>  label.setFont(new Font("宋體",Font.BOLD,36));</p><p>  label.setHorizontalTextPosition(SwingConstants.CENTER);&

33、lt;/p><p>  label.setForeground(Color.red);</p><p><b>  //點(diǎn)擊事件</b></p><p>  add1.addActionListener(this);</p><p>  updata1.addActionListener(this);</p>

34、<p>  delete1.addActionListener(this);</p><p>  m5.addActionListener(this);</p><p>  add2.addActionListener(this);</p><p>  delete2.addActionListener(this);</p><p>

35、;  updata2.addActionListener(this);</p><p>  add3.addActionListener(this);</p><p>  delete3.addActionListener(this);</p><p>  updata3.addActionListener(this);</p><p>  

36、學(xué)生查詢.addActionListener(this);</p><p>  card=new CardLayout();</p><p>  pCenter=new JPanel();</p><p>  pCenter.setLayout(card);</p><p>  增加學(xué)生界面=new Addstu();</p>

37、<p>  修改學(xué)生界面=new Updatastu(); </p><p>  刪除學(xué)生界面=new Delstu();</p><p>  增加課程界面=new AddC();</p><p>  刪除課程界面=new DelC();</p><p>  修改課程界面=new UpdateC();</p><

38、p>  增加選課界面=new AddSC();</p><p>  刪除選課界面=new DelSC();</p><p>  修改選課界面=new UpdateSC();</p><p>  學(xué)生查詢界面=new Selstu();</p><p>  pCenter.add("歡迎界面",label);</

39、p><p>  pCenter.add("增加學(xué)生界面",增加學(xué)生界面);</p><p>  pCenter.add("修改學(xué)生界面",修改學(xué)生界面);</p><p>  pCenter.add("刪除學(xué)生界面",刪除學(xué)生界面);</p><p>  pCenter.add(&quo

40、t;增加課程界面",增加課程界面);</p><p>  pCenter.add("刪除課程界面",刪除課程界面);</p><p>  pCenter.add("修改課程界面",修改課程界面);</p><p>  pCenter.add("增加選課界面",增加選課界面);</p>

41、<p>  pCenter.add("刪除選課界面",刪除選課界面);</p><p>  pCenter.add("修改選課界面",修改選課界面);</p><p>  pCenter.add("學(xué)生查詢界面", 學(xué)生查詢界面);</p><p>  add(pCenter,BorderLay

42、out.CENTER);</p><p>  validate();</p><p>  setVisible(true);</p><p>  setBounds(400,150,400,280);</p><p>  setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);</p>&l

43、t;p>  addWindowListener(new WindowAdapter(){//關(guān)閉程序時(shí)的操作</p><p>  public void windowClosing(WindowEvent e){System.exit(0);} });</p><p>  validate();}</p><p>  private void addJMe

44、nuBar() {</p><p>  mb.add(m1);mb.add(m2);mb.add(m3);mb.add(m4);mb.add(m5);}</p><p>  private void addMenu4() {</p><p>  m4.add(學(xué)生查詢);m4.setFont(t);}</p><p>  private vo

45、id addMenu3() {</p><p>  m3.add(add3);m3.add(updata3);m3.add(delete3);m3.setFont(t);}</p><p>  private void addMenu2() {//將菜單加入到菜單欄中</p><p>  m2.add(add2);m2.add(updata2);m2.add(de

46、lete2);m2.setFont(t); }</p><p>  private void addMenu1() {</p><p>  m1.add(add1);m1.add(updata1);m1.add(delete1);m1.setFont(t); }</p><p>  public void actionPerformed(ActionEvent e)

47、{</p><p>  Object obj=e.getSource();</p><p>  if(obj==m5){System.exit(0);}</p><p>  else{if(obj==add1){card.show(pCenter,"增加學(xué)生界面");}</p><p>  else{if(obj==upd

48、ata1){ card.show(pCenter,"修改學(xué)生界面");}</p><p>  else{if(obj==delete1){ card.show(pCenter, "刪除學(xué)生界面");}</p><p>  else{if(obj==add2){ card.show(pCenter, "增加課程界面");}</

49、p><p>  else{if(obj==delete2){ card.show(pCenter, "刪除課程界面");}</p><p>  else{if(obj==updata2){ card.show(pCenter, "修改課程界面");}</p><p>  else{if(obj==add3){ card.show(

50、pCenter, "增加選課界面");}</p><p>  else{if(obj==delete3){ card.show(pCenter, "刪除選課界面");}</p><p>  else{if(obj==updata3){ card.show(pCenter, "修改選課界面");}</p><p&

51、gt;  else{if(obj==學(xué)生查詢){ card.show(pCenter, "學(xué)生查詢界面");</p><p>  }}}}}}}}}}}}</p><p>  public static void main(String[] args) {new Menu();}}</p><p><b>  效果圖:</b>

52、;</p><p>  添加界面:AddC.java/AddSC.java/Addstu.java</p><p>  添加數(shù)據(jù)時(shí),若遇到必須信息未填寫(xiě)、不能重復(fù)的信息在數(shù)據(jù)庫(kù)中已存在,都會(huì)提示無(wú)法添加及其錯(cuò)誤原因。</p><p>  import java.awt.*;</p><p>  import javax.swing.*;<

53、;/p><p>  import java.sql.*;</p><p>  import java.awt.event.*;</p><p>  public class AddC extends JPanel implements ActionListener{</p><p>  JTextField 課號(hào),課名;</p>&

54、lt;p>  JButton 錄入;</p><p>  public AddC(){</p><p>  try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){System.err.println("不能設(shè)置外觀: "+e);}

55、</p><p>  課號(hào)=new JTextField(12);</p><p>  課名=new JTextField(12);</p><p>  錄入=new JButton("錄入");</p><p>  錄入.addActionListener(this);</p><p>  Box

56、 box1=Box.createHorizontalBox();//橫放box</p><p>  Box box2=Box.createHorizontalBox();</p><p>  Box box3=Box.createHorizontalBox();</p><p>  Box box4=Box.createHorizontalBox();</p&

57、gt;<p>  box1.add(new JLabel("課號(hào):"));</p><p>  box1.add(課號(hào));</p><p>  box2.add(new JLabel("課名:"));</p><p>  box2.add(課名);</p><p>  box4.add(錄

58、入);</p><p>  Box boxH=Box.createVerticalBox();//豎放box</p><p>  boxH.add(box1);</p><p>  boxH.add(box2);</p><p>  boxH.add(box3);</p><p>  boxH.add(box4);&l

59、t;/p><p>  boxH.add(Box.createVerticalGlue());</p><p>  JPanel messPanel=new JPanel();</p><p>  messPanel.add(boxH);</p><p>  setLayout(new BorderLayout());</p><

60、;p>  add(messPanel,BorderLayout.CENTER);</p><p>  validate();}</p><p><b>  效果圖:</b></p><p>  添加界面:UpdateC.java/UpdateSC.java /Updatestu.java</p><p>  先查找

61、你想要修改的項(xiàng)目,若修改的信息包括號(hào)碼(學(xué)號(hào)、課號(hào)),則會(huì)進(jìn)行查詢,如果修改后的號(hào)碼已存在,以及修改后必須的信息變成空都會(huì)提示無(wú)法修改和其錯(cuò)誤原因。此外,若修改C表或則S表,會(huì)連同SC表中對(duì)應(yīng)的信息一起修改。</p><p>  import java.awt.*;</p><p>  import java.awt.event.*;</p><p>  impor

62、t java.sql.*;</p><p>  import javax.swing.*;</p><p>  public class UpdateC extends JPanel implements ActionListener{</p><p>  String save=null;</p><p>  JTextField 課號(hào)1,

63、課號(hào),課名;</p><p>  JButton 修改,查找;</p><p>  public UpdateC(){</p><p>  try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());}catch(Exception e){System.err.println(&q

64、uot;不能設(shè)置外觀: "+e);}</p><p>  課號(hào)1=new JTextField(12);</p><p>  課號(hào)=new JTextField(12);</p><p>  課名=new JTextField(12);</p><p>  修改=new JButton("修改");</

65、p><p>  查找=new JButton("查找");</p><p>  Box box1=Box.createHorizontalBox();//橫放box</p><p>  Box box2=Box.createHorizontalBox();</p><p>  Box box3=Box.createHorizo

66、ntalBox();</p><p>  Box box4=Box.createHorizontalBox();</p><p>  Box box5=Box.createHorizontalBox();</p><p>  box1.add(new JLabel("課號(hào):",JLabel.CENTER));</p><p&g

67、t;  box1.add(課號(hào));</p><p>  box2.add(new JLabel("課名:",JLabel.CENTER));</p><p>  box2.add(課名);</p><p>  box3.add(修改);</p><p>  box5.add(new JLabel("課號(hào):&quo

68、t;,JLabel.CENTER));</p><p>  box5.add(課號(hào)1);</p><p>  box5.add(查找);</p><p>  修改.addActionListener(this);</p><p>  查找.addActionListener(this);</p><p>  Box b

69、oxH=Box.createVerticalBox();//豎放box</p><p>  boxH.add(box1);</p><p>  boxH.add(box2);</p><p>  boxH.add(box3);</p><p>  boxH.add(box4);</p><p>  boxH.add(B

70、ox.createVerticalGlue());</p><p>  JPanel picPanel=new JPanel();</p><p>  JPanel messPanel=new JPanel();</p><p>  messPanel.add(box5);</p><p>  picPanel.add(boxH);</

71、p><p>  setLayout(new BorderLayout());</p><p>  JSplitPane splitV=new JSplitPane(JSplitPane.VERTICAL_SPLIT,messPanel,picPanel);//分割</p><p>  add(splitV,BorderLayout.CENTER);</p>

72、<p>  validate();}</p><p>  刪除界面:DelC.java/DelSC.java /Deltu.java</p><p>  先查找你想要?jiǎng)h除的項(xiàng)目,然后刪除,此外,若刪除C表或則S表的內(nèi)容,會(huì)連同SC表中對(duì)應(yīng)的信息一起修改。</p><p>  import java.awt.*;</p><p> 

73、 import java.awt.event.*;</p><p>  import java.sql.*;</p><p>  import javax.swing.*;</p><p>  public class DelC extends JPanel implements ActionListener{</p><p>  Strin

74、g save=null;</p><p>  JTextField 課號(hào)1,課號(hào),課名;</p><p>  JButton 刪除,查找;</p><p>  public DelC(){</p><p>  try {UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassNa

75、me());}catch(Exception e){System.err.println("不能設(shè)置外觀: "+e);}</p><p>  課號(hào)1=new JTextField(12);</p><p>  課號(hào)=new JTextField(12);</p><p>  課名=new JTextField(12);</p>

76、<p>  刪除=new JButton("刪除");</p><p>  查找=new JButton("查找");</p><p>  Box box1=Box.createHorizontalBox();//橫放box</p><p>  Box box2=Box.createHorizontalBox();&

77、lt;/p><p>  Box box3=Box.createHorizontalBox();</p><p>  Box box4=Box.createHorizontalBox();</p><p>  Box box5=Box.createHorizontalBox();</p><p>  box1.add(new JLabel(&quo

78、t;課號(hào):",JLabel.CENTER));</p><p>  box1.add(課號(hào));</p><p>  box2.add(new JLabel("課名:",JLabel.CENTER));</p><p>  box2.add(課名);</p><p>  box4.add(刪除);</p>

79、;<p>  box5.add(new JLabel("課號(hào):",JLabel.CENTER));</p><p>  box5.add(課號(hào)1);</p><p>  box5.add(查找);</p><p>  Box boxH=Box.createVerticalBox();//豎放box</p><p&

80、gt;  boxH.add(box1);</p><p>  boxH.add(box2);</p><p>  boxH.add(box3);</p><p>  boxH.add(box4);</p><p>  boxH.add(Box.createVerticalGlue());</p><p>  刪除.ad

81、dActionListener(this);</p><p>  查找.addActionListener(this);</p><p>  JPanel picPanel=new JPanel();</p><p>  JPanel messPanel=new JPanel();</p><p>  messPanel.add(box5);

82、</p><p>  picPanel.add(boxH);</p><p>  setLayout(new BorderLayout());</p><p>  JSplitPane splitV=new JSplitPane(JSplitPane.VERTICAL_SPLIT,messPanel,picPanel);//分割</p><p&g

83、t;  add(splitV,BorderLayout.CENTER);</p><p>  validate();}</p><p>  查詢界面:Selsto.java</p><p>  可以以任意條件模糊查找相關(guān)的表。</p><p>  import java.awt.*;</p><p>  import

84、java.awt.event.*;</p><p>  import java.sql.*;</p><p>  import javax.swing.*;</p><p>  public class Selstu extends JPanel implements ActionListener{</p><p>  JTextField

85、學(xué)號(hào),姓名,系別;</p><p>  JButton 查找;</p><p>  JTextField 課號(hào),課名;</p><p>  JButton 查找1;</p><p>  JTextField 課號(hào)1,學(xué)號(hào)1,成績(jī);</p><p>  JButton 查找2; </p><p>

86、  public Selstu (){</p><p>  學(xué)號(hào)=new JTextField(12);</p><p>  姓名=new JTextField(12);</p><p>  系別=new JTextField(12);</p><p>  課號(hào)=new JTextField(12);</p><p>

87、  課名=new JTextField(12);</p><p>  課號(hào)1=new JTextField(12);</p><p>  學(xué)號(hào)1=new JTextField(12);</p><p>  成績(jī)=new JTextField(12);</p><p>  查找=new JButton("查找學(xué)生信息");&

88、lt;/p><p>  查找1=new JButton("查找課程信息");</p><p>  查找2=new JButton("查找選課信息");</p><p>  Box box1=Box.createHorizontalBox();//橫放box</p><p>  Box box2=Box.cr

89、eateHorizontalBox();</p><p>  Box box4=Box.createHorizontalBox();</p><p>  Box box5=Box.createHorizontalBox();</p><p>  Box box6=Box.createHorizontalBox();</p><p>  Box

90、 box7=Box.createHorizontalBox();</p><p>  box1.add(new JLabel("學(xué)號(hào):",JLabel.CENTER));</p><p>  box1.add(學(xué)號(hào));</p><p>  box1.add(new JLabel("姓名:",JLabel.CENTER));&l

91、t;/p><p>  box1.add(姓名);</p><p>  box1.add(new JLabel("系別:",JLabel.CENTER));</p><p>  box1.add(系別);</p><p>  box2.add(查找);</p><p>  box4.add(new JLa

92、bel("課號(hào):",JLabel.CENTER));</p><p>  box4.add(課號(hào));</p><p>  box4.add(new JLabel("課名:",JLabel.CENTER));</p><p>  box4.add(課名);</p><p>  box6.add(查找1);

93、</p><p>  box5.add(new JLabel("課號(hào):",JLabel.CENTER));</p><p>  box5.add(課號(hào)1);</p><p>  box5.add(new JLabel("學(xué)號(hào):",JLabel.CENTER));</p><p>  box5.add(學(xué)

94、號(hào)1);</p><p>  box5.add(new JLabel("成績(jī):",JLabel.CENTER));</p><p>  box5.add(成績(jī));</p><p>  box7.add(查找2); </p><p>  Box boxH1=Box.createVerticalBox();//豎放box<

95、;/p><p>  boxH1.add(box1);</p><p>  boxH1.add(box2);</p><p>  boxH1.add(Box.createVerticalGlue());</p><p>  Box boxH2=Box.createVerticalBox();//豎放box</p><p> 

96、 boxH2.add(box4);</p><p>  boxH2.add(box6);</p><p>  boxH2.add(Box.createVerticalGlue()); </p><p>  Box boxH3=Box.createVerticalBox();//豎放box</p><p>  boxH3.add(box5);&

97、lt;/p><p>  boxH3.add(box7);</p><p>  boxH3.add(Box.createVerticalGlue()); </p><p>  查找.addActionListener(this);</p><p>  查找1.addActionListener(this);</p><p>

98、  查找2.addActionListener(this); </p><p>  JPanel messPanel=new JPanel();</p><p>  JPanel picPanel=new JPanel();</p><p>  JPanel threePanel=new JPanel();</p><p>  messPan

99、el.add(boxH1);</p><p>  picPanel.add(boxH2);</p><p>  threePanel.add(boxH3);</p><p>  setLayout(new BorderLayout());</p><p>  JSplitPane splitV=new JSplitPane(JSplitPan

100、e.VERTICAL_SPLIT,messPanel,picPanel);//分割</p><p>  add(splitV,BorderLayout.CENTER);</p><p>  JSplitPane splitV1=new JSplitPane(JSplitPane.VERTICAL_SPLIT,splitV,threePanel);//分割</p><p&

101、gt;  add(splitV1,BorderLayout.CENTER);</p><p>  validate();}</p><p><b>  效果圖:</b></p><p>  五、課程設(shè)計(jì)學(xué)習(xí)心得</p><p>  通過(guò)本次課程設(shè)計(jì),成功的完成了這個(gè)小型簡(jiǎn)單的系統(tǒng)的設(shè)計(jì),在整個(gè)設(shè)計(jì)過(guò)程中我對(duì)JAVA使用和

102、它強(qiáng)大的作用有了一個(gè)更深刻的認(rèn)識(shí),盡管這個(gè)系統(tǒng)很簡(jiǎn)單,但是它讓我綜合運(yùn)用了這個(gè)學(xué)期所學(xué)的JAVA的很多內(nèi)容,在此基礎(chǔ)上,對(duì)JAVA的基礎(chǔ)知識(shí)得到了更好的鞏固。</p><p>  其實(shí),在制作的過(guò)程中我也學(xué)到很多思想:首先,要學(xué)會(huì)統(tǒng)籌全局,合理規(guī)劃,例如在制作整個(gè)框架的時(shí)候提前就要做全面考慮,要把整個(gè)結(jié)構(gòu)圖畫(huà)出來(lái),并且要對(duì)數(shù)據(jù)庫(kù)表里的東西做全面規(guī)劃。同時(shí)在編寫(xiě)程序的時(shí)候也要想好先實(shí)現(xiàn)什么功能,再實(shí)現(xiàn)什么功能,這樣

103、做出來(lái)的東西才有條理性,更容易實(shí)現(xiàn)和理解。其次,要細(xì)心仔細(xì)。Java程序雖然容易理解,但在寫(xiě)的過(guò)程中一不留心就會(huì)出現(xiàn)錯(cuò)誤。當(dāng)然出錯(cuò)是在所難免的,與性質(zhì)有關(guān)的錯(cuò)誤可以經(jīng)過(guò)思考討論后進(jìn)行改正,但如果粗心大意,出現(xiàn)輸入上的錯(cuò)誤就很難發(fā)現(xiàn)和修改,會(huì)耽誤很多時(shí)間。</p><p>  我認(rèn)為最大的收獲是提高了自己的動(dòng)手能力。在平時(shí)的上機(jī)中大多數(shù)是根據(jù)書(shū)上的思想和布局來(lái)寫(xiě)程序的。這次的課程設(shè)計(jì)要自己思考自己寫(xiě),考慮的東西比平

104、時(shí)上機(jī)考慮的要多的多。在整個(gè)設(shè)計(jì)過(guò)程中寫(xiě)代碼不是最難的,最難的是構(gòu)思和布局。這次課程設(shè)計(jì)也是一次很好的實(shí)踐活動(dòng),讓我們體會(huì)到了java的神奇作用。</p><p>  下面是java的源代碼,總共有15個(gè)類。分別是AddC.java,AddSC.java,Addstu.java, Delstu.java,DelC.java, DelSC.java,Menu.java,SelC.java,SelSC.java,Se

105、lstu.java,Student.java,Updatastu.java,UpdateC.java,UpdateSC.java,User.java。</p><p>  因?yàn)楸救颂珣?,所以一些類名的錯(cuò)誤沒(méi)有修改,也沒(méi)有優(yōu)化系統(tǒng),總之還算是能運(yùn)行的,數(shù)據(jù)庫(kù)用的是sql2005,如果用別的數(shù)據(jù)庫(kù)就要改驅(qū)動(dòng),具體自己上網(wǎng)百度吧。如果自己有空,優(yōu)化一下還是很好滴……</p><p>  AddC

106、.jaba:</p><p>  import java.awt.*;</p><p>  import javax.swing.*;</p><p>  import java.sql.*;</p><p>  import java.awt.event.*;</p><p>  public class AddC

107、extends JPanel implements ActionListener{</p><p>  JTextField 課號(hào),課名;</p><p>  JButton 錄入;</p><p>  public AddC(){</p><p>  try {UIManager.setLookAndFeel(UIManager.getSy

108、stemLookAndFeelClassName());}</p><p>  catch(Exception e){System.err.println("不能設(shè)置外觀: "+e);}</p><p>  課號(hào)=new JTextField(12);</p><p>  課名=new JTextField(12);</p>&

109、lt;p>  錄入=new JButton("錄入");</p><p>  錄入.addActionListener(this);</p><p>  Box box1=Box.createHorizontalBox();//橫放box</p><p>  Box box2=Box.createHorizontalBox();</p

110、><p>  Box box3=Box.createHorizontalBox();</p><p>  Box box4=Box.createHorizontalBox();</p><p>  box1.add(new JLabel("課號(hào):"));</p><p>  box1.add(課號(hào));</p>&

111、lt;p>  box2.add(new JLabel("課名:"));</p><p>  box2.add(課名);</p><p>  box4.add(錄入);</p><p>  Box boxH=Box.createVerticalBox();//豎放box</p><p>  boxH.add(box1)

112、;</p><p>  boxH.add(box2);</p><p>  boxH.add(box3);</p><p>  boxH.add(box4);</p><p>  boxH.add(Box.createVerticalGlue());</p><p>  JPanel messPanel=new JPa

113、nel();</p><p>  messPanel.add(boxH);</p><p>  setLayout(new BorderLayout());</p><p>  add(messPanel,BorderLayout.CENTER);</p><p>  validate();</p><p><b

114、>  }</b></p><p>  public void actionPerformed(ActionEvent c){</p><p>  Object obj=c.getSource();</p><p>  if(obj==錄入){</p><p>  if(課號(hào).getText().equals("&q

115、uot;)||課名.getText().equals("")){</p><p>  JOptionPane.showMessageDialog(this,"學(xué)生信息請(qǐng)?zhí)顫M再錄入!" );</p><p><b>  }</b></p><p>  Statement stmt=null;</p&g

116、t;<p>  ResultSet rs=null,rs1=null;</p><p>  String sql,sql1;</p><p>  sql1="select * from C where Cno='"+課號(hào).getText()+"'";</p><p>  sql="ins

117、ert into C values('"+課號(hào).getText()+"','"+課名.getText()+"')";</p><p><b>  try{</b></p><p>  Connection dbConn1=CONN();</p><p>  stm

118、t=(Statement)dbConn1.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);</p><p>  rs1=stmt.executeQuery(sql1);</p><p>  if(rs1.next()){JOptionPane.showMessageDialog(th

119、is,"該課號(hào)以存在,無(wú)法添加");}</p><p><b>  else{</b></p><p>  stmt.executeUpdate(sql);</p><p>  JOptionPane.showMessageDialog(this,"添加成功");</p><p>

120、;<b>  }</b></p><p>  rs1.close();</p><p>  stmt.close();</p><p><b>  }</b></p><p>  catch(SQLException e){</p><p>  System.out.pr

121、int("SQL Exception occur.Message is:"+e.getMessage());</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b&

122、gt;  //連接數(shù)據(jù)庫(kù)方法</b></p><p>  public static Connection CONN(){</p><p>  String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver"; //加載JDBC驅(qū)動(dòng)</p><p>  Strin

123、g dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=student"; //連接服務(wù)器和數(shù)據(jù)庫(kù)test</p><p>  String userName = "sa"; //默認(rèn)用戶名</p><p>  String userPwd = "huangjiwei&quo

124、t;; //密碼</p><p>  Connection dbConn=null;</p><p><b>  try {</b></p><p>  Class.forName(driverName);</p><p>  dbConn = DriverManager.getConnection(dbURL, u

125、serName, userPwd);</p><p>  System.out.println("Connection Successful!"); //如果連接成功 控制臺(tái)輸出Connection Successful!</p><p>  } catch (Exception e) {</p><p>  e.printStackTrac

126、e();</p><p><b>  }</b></p><p>  return dbConn;</p><p><b>  }</b></p><p><b>  }</b></p><p>  AddSC.java:</p><

127、p>  import java.awt.*;</p><p>  import javax.swing.*;</p><p>  import java.sql.*;</p><p>  import java.util.*;</p><p>  import javax.swing.filechooser.*;</p>

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫(kù)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論