




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、(JAVA程序設(shè)計)學生信息管理系統(tǒng)起止日期:2013年06月10日至 2013年06月14日學生 姓 名賈光明班級網(wǎng)絡(luò)102班學號10408400229成績指導教師(簽字)計算機與通信學院2013年06月摘要本系統(tǒng)主要完成對學生信息的管理,包括錄入、添加、修改、刪除、查詢、打印信息等方面。系統(tǒng)可以完成對各類系統(tǒng)瀏覽、查詢、添加、刪除、修改等功能。系統(tǒng)的核心是添加、 修改和刪除三者之間的聯(lián)系,每一個表的修改都將聯(lián)動的修改其他的表,當完成添加刪除操作時系統(tǒng)會自動地完成學生信息的修改。設(shè)計一個簡單學生個人信息管理系統(tǒng),該系統(tǒng)具有錄入,查詢,修改三項基本功能。要求如下:1) 具有簡單的錄入,查詢和修
2、改功能。2) 修改學生信息必須輸入學號,然后對姓名、性別等修改;( 3) 使用文件存儲數(shù)據(jù)。(也可用數(shù)據(jù)庫)一、課程設(shè)計的目的與意義 31. 目的 32. 意義 3二、需求分析 31. 學生學籍管理系統(tǒng)主界面模塊 32. 錄入學生基本信息模塊 33. 修改學生基本信息模板 34. 查詢學生基本信息模板 35. 刪除學生基本信息模板 3三、分案設(shè)計 31. 定義四個Panel 面板 4四、方案的實施 5五、心得體會 16六、參考文獻 18一 、 課程設(shè)計的目的與意義目的:深入理解java 語言的語法規(guī)則及其優(yōu)勢,掌握類與方法的構(gòu)造方法,掌握基于 java 的各種操作的實現(xiàn)方法,訓練對基礎(chǔ)知識和基
3、本方法的綜合運用能力,增強對算法的理解能力,提高軟件設(shè)計能力。在實踐中培養(yǎng)獨立分析問題和解決問題的作風和能力。意義:熟練運用java 語言、基本構(gòu)造方法和算法的基礎(chǔ)知識,獨立編制一個具有中等難度的、解決實際應用問題的應用程序。通過題意分析、選擇類結(jié)構(gòu)、算法設(shè)計、編制程序、調(diào)試程序、軟件測試、結(jié)果分析、撰寫課程設(shè)計報告等環(huán)節(jié)完成軟件設(shè)計的全過程,不斷地完善程序以提高程序的性能。二、需求分析該學生學籍管理系統(tǒng)的所有功能均在一個Frame窗體中實現(xiàn)。學生學籍管理系統(tǒng)主界面模塊:采用Frame窗體來設(shè)置歡迎界面包括背景圖片及字幕(可以設(shè)計成滾動字幕效果),左上方的菜單條設(shè)計成下拉式。包括“錄入學生基本
4、信息”、 “修改學生基本信息”、 “刪除學生基本信息”、 “查詢學生基本信息”和“退出系統(tǒng)”五項菜單項。錄入學生基本信息模塊:采用Panel面板來設(shè)置該部分內(nèi)容信息并采用方位布局(邊緣布局)和Box輕量級組件來設(shè)置“學號”、 “姓名” 、 “性別” 、 “專業(yè)” 、 “年級” 、 “出生” ,并在該面板中添加了“錄入”和“重置”兩個按鈕進行監(jiān)聽,最后將該面板加入到Frame窗體中去。修改學生基本信息模板:采用Panel面板來設(shè)置該部分內(nèi)容信息,同樣是采用方位布局及Box組件來設(shè)置相關(guān)信息,并在學號旁設(shè)置了“開始修改”按鈕。在面板南部方位添加了“確定修改”和“重置”兩按鈕進行監(jiān)聽。查詢學生基本信
5、息模板:采用 Panel 面板來設(shè)置該部分內(nèi)容信息,并將該面板加入到主窗體中去,采用邊緣布局進行方位設(shè)置,在上方加入“查詢”按鈕進行監(jiān)聽。刪除學生基本信息模板:也是采用Panel 面板進行設(shè)置相關(guān)內(nèi)容,并用邊緣布局進行布局,并在上方添加“確定”按鈕,在下方添加“確定刪除”按鈕實現(xiàn)監(jiān)聽。三、分案設(shè)計定義四個Panel 面板1. 定義Reg(錄入學生基本信息)面板采用 BorderLayout (構(gòu)造一個組件之間沒有間距的新邊界布)和Box 輕量級組件進行布局, 在面板的Nother 方位添加一個 “錄入學生基本信息”的標簽, 并更改字體,顏色等。接 著 用 JTextField 輕 量 級 組
6、件 來 設(shè) 置 單 行 文 本 編 輯 , 并 將 其 加 入 到 用createHorizontalBox() 方 法 創(chuàng) 建 具 有 一 個 從 左 到 右 顯 示 其 組 件 的 Box 和 用 createHorizontalStrut() 創(chuàng)建一個不可見的、固定寬度的組件,使其在一個橫向box 中,通 常 使 用 此 方 法 強 行 使 兩 個 組 件 之 間 具 有 某 一 空 間 量 。 然 后 Box 與 Box 之 間 用 createVerticalBox()創(chuàng)建一個從上到下顯示其組件的Box,并用createVerticalStrut()方法創(chuàng)建一個不可見的、固定高度的組
7、件,使其在一個縱向box 中,通常使用此方法強行使兩個組件之間具有某一空間量。然后在面板的South 方位設(shè)置“錄入”與“重置”兩按鈕。最后實現(xiàn)與數(shù)據(jù)庫的橋接,能夠?qū)奈谋究颢@得的信息存儲到數(shù)據(jù)庫中去。2. 定義 Search( 查詢學生基本信息)面板該部分同樣采用BorderLayout (構(gòu)造一個組件之間沒有間距的新邊界布)和 Box輕量級組件進行布局,在面板的Nother 方位添加一個“查詢學生基本信息”的標簽,并更改字體,顏色等。接著用JTextField 輕量級組件來設(shè)置單行文本編輯,在學號這一文本框后再添加一個 “查詢” 按鈕。 并將其加入到用createHorizontalBox
8、() 方法創(chuàng)建具有一個從左到右顯示其組件的Box和用createHorizontalStrut()創(chuàng)建一個不可見的、固定寬度的組件,使其在一個橫向box 中,通常使用此方法強行使兩個組件之間具有某一空間量。然后Box與 Box 之 間 用 createVerticalBox() 創(chuàng) 建 一 個 從 上 到 下 顯 示 其 組 件 的Box, 并 用createVerticalStrut() 方法創(chuàng)建一個不可見的、固定高度的組件,使其在一個縱向box中,通常使用此方法強行使兩個組件之間具有某一空間量。最后實現(xiàn)與數(shù)據(jù)庫的橋接,能夠?qū)臄?shù)據(jù)庫中獲取信息并顯示到文本框中去。3. 定義 Modify(
9、修改學生基本信息)面板該部分同樣也是采用BorderLayout (構(gòu)造一個組件之間沒有間距的新邊界布)和Box輕量級組件進行布局,在面板的Nother 方位添加一個“修改學生基本信息”的標簽,并更改字體,顏色等。接著用JTextField 輕量級組件來設(shè)置單行文本編輯,并將其加入到用createHorizontalBox() 方 法 創(chuàng) 建 具 有 一 個 從 左 到 右 顯 示 其 組 件 的 Box 和 用 createHorizontalStrut() 創(chuàng)建一個不可見的、固定寬度的組件,使其在一個橫向box 中,通常使用此方法強行使兩個組件之間具有某一空間量。并在 “學號”該文本框后添
10、加一個“開始修改”按鈕用來監(jiān)聽。然后Box與Box之間用createVerticalBox()創(chuàng)建一個從上到下顯示其組件的Box, 并用 createVerticalStrut() 方法創(chuàng)建一個不可見的、固定高度的組件,使其在一個縱向box 中,通常使用此方法強行使兩個組件之間具有某一空間量。最后實現(xiàn)與數(shù)據(jù)庫的橋接,能夠?qū)臄?shù)據(jù)庫中獲取信息并顯示到文本框中去,并將修改后的信息存儲到數(shù)據(jù)庫中去。4. 定義 Delete( 刪除學生基本信息) 面板該部分還是采用BorderLayout (構(gòu)造一個組件之間沒有間距的新邊界布)和 Box輕量級組件進行布局,在面板的Nother 方位添加一個“修改學生
11、基本信息”的標簽,并更改字體,顏色等。接著用JTextField 輕量級組件來設(shè)置單行文本編輯,在學號這一文本框后再添加一 “確定” 按鈕實現(xiàn)監(jiān)聽。并將其所有文本框和標簽加入到用createHorizontalBox()方法創(chuàng)建具有一個從左到右顯示其組件的Box 和用 createHorizontalStrut() 創(chuàng)建一個不可見的、固定寬度的組件,使其在一個橫向box 中,通常使用此方法強行使兩個組件之間具有某一空間量。并在“學號”該文本框后添加一個“開始修改”按鈕用來監(jiān)聽。然后Box 與 Box之間用createVerticalBox() 創(chuàng)建一個從上到下顯示其組件的 Box,并用 cre
12、ateVerticalStrut() 方法創(chuàng)建一個不可見的、固定高度的組件,使其在一個縱向box中,通常使用此方法強行使兩個組件之間具有某一空間量,還在本面板的South方位添加“確定刪除”按鈕。最后實現(xiàn)與數(shù)據(jù)庫的橋接,能夠?qū)臄?shù)據(jù)庫中獲取信息并顯示到文本框中去,刪除后同時在數(shù)據(jù)庫中也刪除該信息并保存該操作。四、方案的實施1、學生信息管理系統(tǒng)的登錄學生信息管理系統(tǒng)可由管理員和學生兩種身份的人使用。管理員和學生身份登錄所能操作的功能有很大的區(qū)別。系統(tǒng)初始化一個系統(tǒng)管理員,登錄名: admin 密碼:admin 學生登錄系統(tǒng)的登錄名為學號,密碼也為學號(如:10001),登錄后可以修改密碼。登錄界
13、面國登陸登錄系統(tǒng)后的界面畫學生信息醴獺VLO P ' ' .1丁文件獺工具勤助Th逗熊理學生注冊D注冊社口修解生信息學號I查詢學生信息D蟒苧生信息一姓名性別o男:女地址錯翻示注冊學生信息界面修改學生信息界面查詢學生信息界面刪除學生信息界面1程序類的設(shè)計DeleteListener.java :刪除監(jiān)聽JTMouseListener.java :樹狀視圖LoginListener.java :登陸監(jiān)聽ResetListener.java :重置監(jiān)聽SaveListener.java:保存監(jiān)聽SearchAllListener.java :搜索所有學生信息SearchDListen
14、er.java :搜索一個學生信息SearchListener.java:搜索一個學生信息SearchRListener.java:搜索一個學生信息SubmitListener.java :提交信息監(jiān)聽2系統(tǒng)的使用說明及環(huán)境配置學生信息管理系統(tǒng)提供了管理員和學生這兩個角色登錄系統(tǒng),管理員通過用戶名:admin密碼:admin登錄系統(tǒng)后可以進行相應的操作。學生通過以自己的學號(如10001)作為用戶名和密碼登錄系統(tǒng)后進行相應的學生權(quán)限范圍內(nèi)的操作。 數(shù)據(jù)庫:Mysql 連接數(shù)據(jù)庫的登錄名:root密碼:zfz 代碼:DeleteListener.java :刪除監(jiān)聽 package manage
15、r.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JOptionPane;import manager.dao.JdbcIcpCURD;import manager.ui.conponent.DeletePanel;public class DeleteListener implements ActionListener public void actionPerformed(Acti
16、onEvent e) JButton jb=(JButton) e.getSource();DeletePanel dp=(DeletePanel) jb.getParent();String xuehao=dp. xuehaoFd .getText();String msg= "你確定要刪除學號為"+xuehao+ "的學生信息么?";int i=JOptionPane. showConfirmDialog (dp,msg, " 提 示 信 息 ”,JOptionPane. YES_NO_OPTION ,JOptionPane. WARNIN
17、G_MESSAGE);if (i=0)JdbcIcpCURD curd= new JdbcIcpCURD();boolean b=curd.deleteByXuehao(Integer.parseInt (xuehao);if (b) dp. errorLb .setText("刪除成功"); else dp. errorLb .setText("刪除失敗"); return ;JTMouseListener.java :樹狀視圖 package manager.ui.listener;import java.awt.CardLayout;import
18、java.awt.Component;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import javax.swing.JTree;import javax.swing.tree.DefaultMutableTreeNode;import javax.swing.tree.TreeNode;import javax.swing.tree.TreePath;import manager.ui.conponent.MainFrame;import manager.ui.conponent.PLeft;pu
19、blic class JTMouseListener implements MouseListener Overridepublicvoid mouseClicked(MouseEvent e) /TODO Auto-generated method stubJTree jt=(JTree) e.getSource();PLeft p=(PLeft) jt.getParent();f=(MainFrame)(DefaultMutableTreeNode)MainFramep.getParent().getParent().getParent().getParent();TreePath pat
20、h = jt.getPathForLocation(e.getX(), e.getY(); if (path= null ) return ;DefaultMutableTreeNodenodepath.getLastPathComponent(); String s=node.toString(); CardLayout cl=f.getPright().getLayout();if (s.equals( "注冊學生") cl.show(f.getPright(),"register" );if (s.equals( "修改學生信息"
21、;) cl.show(f.getPright(),"modify");if (s.equals( "查詢學生信息") cl.show(f.getPright(),"search");if (s.equals( "刪除學生信息") cl.show(f.getPright(),"delete" );if (s.equals( "學生信息管理") cl.show(f.getPright(),"welcom");Overridepublic void mouseE
22、ntered(MouseEvent e) / TODO Auto-generated method stubOverridepublic void mouseExited(MouseEvent e) / TODO Auto-generated method stubOverridepublic void mousePressed(MouseEvent e) / TODO Auto-generated method stubOverridepublic void mouseReleased(MouseEvent e) / TODO Auto-generated method stubLoginL
23、istener.java :登陸監(jiān)聽 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import javax.swing.JOptionPane;import manager.ui.conponent.Login;import manager.ui.conponent.MainFrame;public class LoginListener implements ActionListener
24、 Overridepublic void actionPerformed(ActionEvent e) JButton bt=(JButton) e.getSource();Loginframe=(Login)bt.getParent().getParent().getParent().getParent();String username=frame. usernameTa .getText().trim();String password=frame.passwordTaif (username!= null |password!= nullif ( "admin" .
25、equals(username)&&new MainFrame().setVisible( frame.dispose(); else frame. messageLb .setText( ".getText().trim();)"123" .equals(password) true );用戶名或密碼錯誤"); else frame. messageLb .setText("用戶名或密碼錯誤 "力ResetListener.java:重置監(jiān)聽 package manager.ui.listener;import ja
26、va.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import manager.ui.conponent.RegPanel;public class ResetListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();RegPanel jp=(RegPanel) jb.getParent
27、(); jp. xuehaoFd .setText( ""); jp. nameFd .setText( ""); jp. addressFd .setText( "");SaveListener.java:保存監(jiān)聽 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import manager.dao.JdbcIcpCURD;impo
28、rt manager.domain.Student;import manager.ui.conponent.ModifyPanel;public class SaveListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();ModifyPanel mp=(ModifyPanel) jb.getParent();String xuehao=mp.xuehaoTf .getText().trim();String n
29、ame=Tf .getText().trim();String gender=mp.String address=mp.genderTf .getText().trim();addressTf .getText().trim();String oldXuehao=mp.if (oldXuehao= nulloldXuehao=xuehao;xuehaoFd .getText().trim();|xuehao.equals( "" )if (xuehao= null |xuehao.equals( "" ) mp. errorLb .setT
30、ext( "請輸入修改后的學號 return ;if (name= null |name.equals( "" ) mp. errorLb .setText( "請輸入修改后的姓名 return ;););if (gender= null |gender.equals( "" ) mp. errorLb .setText( "請輸入修改后的性別 return ;if (address= null |address.equals( "" ) mp. errorLb .setText( "請輸入修改
31、后的地址 return ;Student stu= new Student。;););stu.setXuehao(Integer.parseInt (xuehao);stu.setName(name);stu.setGender(gender);stu.setAddress(address);int old=Integer.parseInt (oldXuehao);JdbcIcpCURD curd= new JdbcIcpCURD();if (curd.modify(stu, old)mp. errorLb .setText("修改成功.");SearchAllListen
32、er.java :搜索所有學生信息 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Vector;import javax.swing.JButton;import javax.swing.JTextArea;import manager.dao.JdbcIcpCURD;import manager.domain.Student;import manager.ui.conponent.SearchPanel;pu
33、blic class SearchAllListenerimplements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();SearchPanel sp=(SearchPanel) jb.getParent();JTextArea jt=sp.resultTa ;JdbcIcpCURD curd=newJdbcIcpCURD();Vector<Student> students=curd.getAllStudent();Stri
34、ngBuilder sb=newStringBuilder();for (Student s:students)sb.append("");sb.append(s.getXuehao();sb.append( "t");sb.append(s.getName();sb.append( "t"); sb.append(s.getGender(); sb.append( "t");sb.append(s.getAddress();sb.append( "t");sb.append(s.getRegT
35、ime().toString();sb.append( "n");jt.setText(sb.toString();SearchDListener.java :搜索一個學生信息 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import manager.dao.JdbcIcpCURD;import manager.domain.Student;import manager
36、.ui.conponent.DeletePanel;import manager.ui.conponent.ModifyPanel;import manager.ui.conponent.SearchPanel;public class SearchDListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();DeletePanel dp=(DeletePanel) jb.getParent();JdbcIcpCU
37、RD curd= new JdbcIcpCURD();String s=dp. xuehaoFd .getText().trim();Student stu=curd.searchByXuehao(Integer.parseInt (s);if (stu= null )dp. errorLb .setText("沒有查詢到此學生");return ;dp. xuehaoTf .setText( new Integer(stu.getXuehao().toString();dp. nameTf .setText(stu.getName();dp. genderTf .setT
38、ext(stu.getGender();dp. addressTf .setText(stu.getAddress();SearchListener.java:搜索一個學生信息package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import manager.dao.JdbcIcpCURD;import manager.domain.Student;import manager.ui.conpone
39、nt.ModifyPanel;public class SearchListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();ModifyPanel mp=(ModifyPanel) jb.getParent();String s=mp. xuehaoFd .getText().trim();if (s= null |s.equals( "" )mp. errorLb .setText( &q
40、uot;請輸入學號.");return ;JdbcIcpCURD curd= new JdbcIcpCURD();Student stu=curd.searchByXuehao(Integer.parseInt (s);mp. xuehaoTf .setText( new Integer(stu.getXuehao().toString();mp. nameTf .setText(stu.getName();mp. genderTf .setText(stu.getGender();mp. addressTf .setText(stu.getAddress();SearchRList
41、ener.java:搜索一個學生信息 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import javax.swing.JButton;import manager.dao.JdbcIcpCURD;import manager.domain.Student;import manager.ui.conponent.ModifyPanel;import manager.ui.conponent.SearchPanel;public class S
42、earchRListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();parseInt(s);SearchPanel sp=(SearchPanel) jb.getParent(); JdbcIcpCURD curd= new JdbcIcpCURD(); String s=sp. xuehaoTf .getText().trim(); Student stu=curd.searchByXuehao(Intege
43、r. if (stu= null ) return ;StringBuilder sb= new StringBuilder(); sb.append( "");sb.append(stu.getXuehao();sb.append( "t"); sb.append(stu.getName(); sb.append( "t"); sb.append(stu.getGender(); sb.append( "t"); sb.append(stu.getAddress(); sb.append( "t&quo
44、t;);sb.append(stu.getRegTime().toString(); sb.append( "n");sp. resultTa .setText(sb.toString();SubmitListener.java :提交信息監(jiān)聽 package manager.ui.listener;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.Date;import javax.swing.JButton;import javax.swing.
45、JLabel;import manager.dao.JdbcIcpCURD;import manager.domain.Student;import manager.ui.conponent.RegPanel;public class SubmitListener implements ActionListener Overridepublic void actionPerformed(ActionEvent e) JButton jb=(JButton) e.getSource();RegPanel jp=(RegPanel) jb.getParent();String xuehao=jp.
46、xuehaoFd .getText();String name=Fd .getText();String address=jp.String gender=boolean b1=jp.boolean b2=jp.if (b1)JLabel errorLabel=jp.addressFd .getText();maleRB .isSelected();femaleRB .isSelected();if(xuehao= nullerrorLabel ;|xuehao.trim().equals(errorLabel.setText( return ;" 沒有填寫學號&quo
47、t;" ) );if(name= null |name.trim().equals(ififerrorLabel.setText( return ;" 沒有填寫姓名);(address= null |address.trim().equals(errorLabel.setText( return ;" 沒有填寫地址"" ) );(!(b1|b2)errorLabel.setText(" 請選擇性別.");returnif(b1)gender="男 "if(b2)gender="女 "S
48、tudent Date(System.stu= new currentTimeMillisJdbcIcpCURD curd=Student(Integer.(),address);new JdbcIcpCURD();parseInt(xuehao),name,gender,newboolean b=curd.insert(stu);" 注冊成功!" );"" ););"" );if (b)errorLabel.setText(jp. xuehaoFd .setText(jp. nameFd .setText(jp. addressFd .setText(五、心得體會一周的時間很快就過去了, 在這短暫的Java 課程設(shè)計過程中,我們在一起學習,加深我們對 Java 學科認識的深度,平時沒怎么太在乎?,F(xiàn)在知道自己
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 個人與老板合同協(xié)議書
- 紙板房裝修合同協(xié)議書
- 木材代銷合同協(xié)議書范本
- 動漫周邊公司商業(yè)計劃清單的應用清單書
- 買水井合同協(xié)議書模板
- 公共自行車創(chuàng)業(yè)計劃書
- 租用電表合同協(xié)議書
- 人工智能技術(shù)驅(qū)動傳媒業(yè)發(fā)展的三個維度
- 加盟商合同解除協(xié)議書
- 污泥處置合同協(xié)議書模板
- 安徽宣城郎溪開創(chuàng)控股集團有限公司下屬子公司招聘筆試題庫2025
- 帝國的興衰:修昔底德戰(zhàn)爭史學習通超星期末考試答案章節(jié)答案2024年
- 16J914-1 公用建筑衛(wèi)生間
- 4008S血液透析機 簡易操作說明書
- 內(nèi)痔并出血+外痔病歷模板
- 學生社會勞動實踐表
- TSG11-2020 鍋爐安全技術(shù)規(guī)程
- 【45精品】新蘇教版四年級音樂下冊教案全冊
- 測井工考試(高級)測井工題庫(930題)
- 昆蟲化學生態(tài)學資料
- 計控 基于PID電加熱爐溫度控制系統(tǒng)設(shè)計
評論
0/150
提交評論