版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
23目錄TOC\o"1-3"\u第1章課題概述 第1章課題概述制作的JAVA課程設(shè)計(jì)是設(shè)計(jì)班級(jí)同學(xué)通訊錄,實(shí)現(xiàn)一些信息存儲(chǔ)和提取。1.1課題的目的收集采取學(xué)生信息是每個(gè)班級(jí)很重要的事情。在現(xiàn)在信息化社會(huì)的時(shí)代,紙質(zhì)存儲(chǔ)已經(jīng)跟不上時(shí)代,電子版通訊錄才能很好的查找需要的信息,方便快捷,還能實(shí)現(xiàn)更多更好的功能,同時(shí)還能簡(jiǎn)單快捷的實(shí)現(xiàn)信息的轉(zhuǎn)換和更改。1.2課題的要求(1)點(diǎn)擊程序運(yùn)行后首先跳出一個(gè)主菜單,并將所有的添加、刪除、修改等功能羅列在主菜單上供用戶進(jìn)行選擇,以便進(jìn)行相應(yīng)的操作。(2)能保存以下數(shù)據(jù)項(xiàng):姓名、性別、關(guān)系、電話、手機(jī)、地址、郵編、E-mail。(3)各項(xiàng)信息能夠從鍵盤(pán)輸入,并且整理過(guò)程中可以不斷更新信息。用戶每次更新輸入信息并選擇功能菜單后,應(yīng)能立即實(shí)現(xiàn)相應(yīng)的功能。(4)可以從文student.dat中讀入數(shù)據(jù)到通訊錄。并且修改后的各項(xiàng)信息也能保存到文件中,以便程序下次啟動(dòng)時(shí)能夠從指定文件讀入相應(yīng)的信息。第2章概要設(shè)計(jì)2.1整個(gè)程序的模塊結(jié)構(gòu)及流程根據(jù)課題要求,整個(gè)程序按功能可分為添加、刪除、修改、查找四個(gè)主要模塊。除上述主要功能模塊之外,程序還應(yīng)提供退出程序、顯示全部等輔助模塊。程序各功能模塊的劃分。2.2信息存儲(chǔ)方式的選擇信息的存儲(chǔ)需要信息就是將對(duì)象序列化到文件中,同時(shí)每一步的操作都會(huì)更新到文件中,實(shí)現(xiàn)對(duì)信息的實(shí)時(shí)同步,退出時(shí)也會(huì)自動(dòng)添加到此文件中,當(dāng)再一次打開(kāi)程序時(shí),也會(huì)再次讀入此文件,顯示出上次退出時(shí)保存到的信息,實(shí)現(xiàn)對(duì)信息的保存。用戶輸入信息本質(zhì)上是一個(gè)字符串,信息就是通過(guò)字符串轉(zhuǎn)換出我們需要的存儲(chǔ)信息。用集合把每個(gè)人的信息以字符串的形式作為一項(xiàng),在集合中提取一項(xiàng)即可完成對(duì)整體的操作。2.3對(duì)信息匹配的處理由信息以字符串的形式存儲(chǔ)在集合中,所以只需要調(diào)用學(xué)生的姓名即可調(diào)出所有信息,在每次操作前,點(diǎn)擊運(yùn)行出現(xiàn)對(duì)畫(huà)框,點(diǎn)擊分欄要求輸入學(xué)生姓名,然后會(huì)調(diào)用判斷字符串相等的equals()方法,當(dāng)調(diào)用的文件信息中存在與此字符串相等的內(nèi)容時(shí),即可完成匹配,調(diào)出此學(xué)生信息,否則不會(huì)出現(xiàn)任何信息。2.4各個(gè)功能實(shí)現(xiàn)的描述2.4.1顯示全部 點(diǎn)擊運(yùn)行,然后界面會(huì)出現(xiàn)一個(gè)整體框架,上面會(huì)有各種所需要的信息的選擇項(xiàng)目2.4.2添加功能添加是在集合中實(shí)現(xiàn)的,也即添加到集合中,調(diào)用添加方法時(shí),添加的內(nèi)容是以條狀框架出來(lái),輸入的內(nèi)容賦值到集合中,即可保存到文件,實(shí)現(xiàn)添加功能。通過(guò)建立一個(gè)框架,實(shí)現(xiàn)各模塊功能,然后用get()方法把輸入的每一項(xiàng)添加到字符串里,各項(xiàng)輸出,即可完成添加,保存到文件里。2.4.3刪除功能點(diǎn)擊刪除選項(xiàng),首先會(huì)出現(xiàn)一片信息,輸入的姓名字符串會(huì)對(duì)集合里的每一項(xiàng)進(jìn)行比較,如果沒(méi)有得到相等的,即會(huì)跳出提示框顯示學(xué)生信息不存在;如果得到相等的,即會(huì)以姓名為代表調(diào)用remove()方法刪除集合里面這一項(xiàng)的各個(gè)信息,完成刪除,保存到文件里。2.4.4修改功能修改也會(huì)首先以相同的方法對(duì)姓名進(jìn)行匹配,如果沒(méi)找到相等的,即會(huì)跳出提示框顯示學(xué)生信息不存在;如果匹配成功,就會(huì)通過(guò)調(diào)用跳出和添加時(shí)相同的布局框,輸出以這個(gè)姓名字符串為代表的各項(xiàng)信息,然后直接在文本框里面對(duì)學(xué)生的各項(xiàng)信息進(jìn)行修改,點(diǎn)擊確認(rèn)修改即會(huì)保存修改后的內(nèi)容就可以,自動(dòng)實(shí)現(xiàn)信息的存儲(chǔ)。2.4.5查找功能點(diǎn)擊查找按鈕,會(huì)跳出一個(gè)要求輸入姓名的窗口,同樣會(huì)對(duì)學(xué)生進(jìn)行匹配,當(dāng)匹配成功時(shí),即會(huì)在下方的文本框中出現(xiàn)學(xué)生的各項(xiàng)信息。第3章程序功能的實(shí)現(xiàn)3.1主方法的實(shí)現(xiàn)首先做出顯示全部按鈕的主界面,對(duì)主界面設(shè)置窗口位置和大小進(jìn)行修改美化,然后進(jìn)行布局,主界面下方以按鈕的形式一行一行列出菜單項(xiàng),點(diǎn)擊按鈕就會(huì)調(diào)用相應(yīng)的類,實(shí)現(xiàn)應(yīng)有的功能。同時(shí)學(xué)生的信息以IO流保存在特定的文件中,每次打開(kāi)程序就會(huì)讀取文件,退出也會(huì)保存信息到文件,同時(shí)實(shí)現(xiàn)功能過(guò)程中的每一步都會(huì)更新文件,實(shí)現(xiàn)對(duì)信息的同步保存。publicclasstongxun{ JFramejf; JButtonb1,b2,b3,b4,b5,b6; Filef=newFile("C:/stodents.dat"); Stringst; Stringstc1,stc2,stc3; HashMap<String,String>name1,name2; ArrayList<String>al; //構(gòu)造初始界面 publictongxun(){ jf=newJFrame("學(xué)生通訊錄"); b1=newJButton("顯示全部"); b2=newJButton("修改"); b3=newJButton("添加"); b4=newJButton("刪除"); b5=newJButton("查找"); b6=newJButton("排序"); Containerc=jf.getContentPane(); jf.setLayout(newGridLayout(7,1)); jf.setBounds(70,70,400,600); c.add(b1); c.add(b4); c.add(b2); c.add(b5); c.add(b3); c.add(b6); //顯示全部按鈕 MyMonitorb1mm1=newMyMonitorb1(); b1.addActionListener(mm1); //修改 MyMonitorb2mm2=newMyMonitorb2(); b2.addActionListener(mm2); //添加 MyMonitorb3mm3=newMyMonitorb3(); b3.addActionListener(mm3); //刪除 MyMonitorb4mm4=newMyMonitorb4(); b4.addActionListener(mm4); //查找 MyMonitorb5mm5=newMyMonitorb5(); b5.addActionListener(mm5); //排序 MyMonitorb6mm6=newMyMonitorb6(); b6.addActionListener(mm6); jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE); jf.setVisible(true); }publicstaticvoidmain(String[]args){ newtongxun();}//顯示全部按鈕動(dòng)作的構(gòu)造按下后初識(shí)界面消失classMyMonitorb1implementsActionListener{ JDialogmy1; publicvoidactionPerformed(ActionEvente){ my1=newJDialog(jf); my1.setTitle("全部信息"); JPaneljp=newJPanel(); jp.setLayout(newGridLayout(2,1)); BorderLayoutbl=newBorderLayout(); my1.setLayout(bl); Containerc=my1.getContentPane(); my1.setBounds(30,30,800,500); JTextAreaja=newJTextArea(); //將文件內(nèi)容讀在文本域中 try{ FileInputStreamfi=newFileInputStream(f); ObjectInputStreamoi=newObjectInputStream(fi); name1=newHashMap<String,String>(); name1=(HashMap<String,String>)oi.readObject(); al=newArrayList<String>(); al=(ArrayList<String>)oi.readObject(); Strings=(String)oi.readObject(); fi.close(); oi.close(); Fontz=newFont("黑體",0,20); ja.setFont(z); ja.setText(s); System.out.println(name1); ja.setEditable(false); }catch(ClassNotFoundException|IOExceptione1){ e1.printStackTrace(); } jp.setBounds(70,70,200,200); JScrollPanejs=newJScrollPane(ja); js.setVerticalScrollBarPolicy(js.VERTICAL_SCROLLBAR_AS_NEEDED); js.setHorizontalScrollBarPolicy(js.HORIZONTAL_SCROLLBAR_AS_NEEDED); jp.add(js); JButtonb=newJButton("返回"); b.setBounds(10,10,50,50); c.add(jp,BorderLayout.CENTER); c.add(b,BorderLayout.SOUTH); //返回按鈕動(dòng)作 MyMonitorb11mm=newMyMonitorb11(); b.addActionListener(mm); jf.setVisible(false); my1.setVisible(true); } //返回按鈕動(dòng)作初始界面出現(xiàn)3.2各個(gè)功能模塊的實(shí)現(xiàn)3.2.1顯示全部方法的實(shí)現(xiàn)顯示全部調(diào)用了新的類,在表格里面輸出學(xué)生信息。classMyMonitor22implementsActionListener{ JDialogjd2; publicvoidactionPerformed(ActionEvente){ Stringsnname=null; inti=ja.getText().indexOf(jt.getText()); intj=ja.getText().indexOf("姓名:"); if(i==-1){ snname=ja.getText().substring(j+3,8).trim(); }else{ snname=jt.getText(); } Stringc1=name1.get("同學(xué)"); Stringc2=name1.get("同學(xué)、室友"); Stringc3=name1.get("同學(xué)、老鄉(xiāng)"); Stringc4=name1.get("同學(xué)、室友、老鄉(xiāng)"); Stringc5=name1.get("室友"); Stringc6=name1.get("室友、老鄉(xiāng)"); Stringc7=name1.get("老鄉(xiāng)"); intt1=name1.get(jt.getText()).indexOf("同學(xué)"); ints1=name1.get(jt.getText()).indexOf("室友"); intl1=name1.get(jt.getText()).indexOf("老鄉(xiāng)"); intt2=ja.getText().indexOf("同學(xué)"); ints2=ja.getText().indexOf("室友"); intl2=ja.getText().indexOf("老鄉(xiāng)"); //去除舊有 Stringstr11=name1.get(jt.getText());3.2.2添加功能的實(shí)現(xiàn)添加是調(diào)用新的布局框,在框的文本域里面輸入學(xué)生的各項(xiàng)信息,完成即可添加到集合里保存到文件。添加功能的代碼實(shí)現(xiàn)如下:classMyMonitorb3implementsActionListener{ JDialogmy3; JTextFieldjt1; JRadioButtonjr1; JRadioButtonjr2; JCheckBoxjc1; JCheckBoxjc2; JCheckBoxjc3; JTextFieldjt4; JTextFieldjt5; JTextFieldjt6; JTextFieldjt7; JTextFieldjt8; JComboBox<?>jcb; publicvoidactionPerformed(ActionEvente){ my3=newJDialog(jf); my3.setTitle("添加"); my3.setBounds(30,30,400,500); //設(shè)置為1列9行的網(wǎng)狀布局 GridLayoutgl=newGridLayout(9,1,0,5); my3.setLayout(gl); Containerc=my3.getContentPane(); //姓名 JPaneljp1=newJPanel(); FlowLayoutfl1=newFlowLayout(); jp1.setLayout(fl1); Fontz1=newFont("黑體",5,18); JLabeljl1=newJLabel("姓名:"); jl1.setFont(z1); jt1=newJTextField(); jt1.setColumns(10); //性別 JPaneljp2=newJPanel(); FlowLayoutfl2=newFlowLayout(); jp2.setLayout(fl2); Fontz2=newFont("黑體",5,18); JLabeljl2=newJLabel("性別:"); jl2.setFont(z2); jr1=newJRadioButton("女"); MyMonitorb31mm1=newMyMonitorb31(); jr1.addActionListener(mm1); jr2=newJRadioButton("男"); MyMonitorb32mm2=newMyMonitorb32(); jr2.addActionListener(mm2); ButtonGroupbg1=newButtonGroup(); bg1.add(jr1); bg1.add(jr2); //關(guān)系 JPaneljp3=newJPanel(); FlowLayoutfl3=newFlowLayout(); jp3.setLayout(fl3); Fontz3=newFont("黑體",6,18); JLabeljl3=newJLabel("關(guān)系:"); jl3.setFont(z3); jc1=newJCheckBox("同學(xué)"); jc2=newJCheckBox("室友"); jc3=newJCheckBox("老鄉(xiāng)"); //電話 JPaneljp4=newJPanel(); FlowLayoutfl4=newFlowLayout(); jp4.setLayout(fl4); Fontz4=newFont("黑體",6,18); JLabeljl4=newJLabel("電話:"); jl4.setFont(z4); jt4=newJTextField(); jt4.setColumns(16); //手機(jī) JPaneljp5=newJPanel(); FlowLayoutfl5=newFlowLayout(); jp5.setLayout(fl5); Fontz5=newFont("黑體",6,18); JLabeljl5=newJLabel("手機(jī):"); jl5.setFont(z5); jt5=newJTextField(); jt5.setColumns(16); //地址 JPaneljp6=newJPanel(); FlowLayoutfl6=newFlowLayout(); jp6.setLayout(fl6); Fontz6=newFont("黑體",6,18); JLabeljl6=newJLabel("地址:"); jl6.setFont(z6); jt6=newJTextField(); jt6.setColumns(8); //郵編 JPaneljp7=newJPanel(); FlowLayoutfl7=newFlowLayout(); jp7.setLayout(fl7); Fontz7=newFont("黑體",6,18); JLabeljl7=newJLabel("郵編:"); jl7.setFont(z7); jt7=newJTextField(); jt7.setColumns(10); //E-mail JPaneljp8=newJPanel(); FlowLayoutfl8=newFlowLayout(); jp8.setLayout(fl8); Fontz8=newFont("黑體",6,18); JLabeljl8=newJLabel("E-mail:"); jl8.setFont(z8); jt8=newJTextField(); jt8.setColumns(12); String[]str={"","@","@163.com","@126.com","@"}; jcb=newJComboBox<Object>(str); //保存、取消鍵 JPaneljp9=newJPanel(); FlowLayoutfl9=newFlowLayout(1,50,0); jp9.setLayout(fl9); JButtonjb1=newJButton("保存"); MyMonitorb36mm6=newMyMonitorb36(); jb1.addActionListener(mm6); JButtonjb2=newJButton("取消"); MyMonitorb37mm7=newMyMonitorb37(); jb2.addActionListener(mm7); jp1.add(jl1); jp1.add(jt1); jp2.add(jl2); jp2.add(jr1); jp2.add(jr2); jp3.add(jl3); jp3.add(jc1); jp3.add(jc2); jp3.add(jc3); jp4.add(jl4); jp4.add(jt4); jp5.add(jl5); jp5.add(jt5); jp6.add(jl6); jp6.add(jt6); jp7.add(jl7); jp7.add(jt7); jp8.add(jl8); jp8.add(jt8); jp8.add(jcb); jp9.add(jb1); jp9.add(jb2); c.add(jp1); c.add(jp2); c.add(jp3); c.add(jp4); c.add(jp5); c.add(jp6); c.add(jp7); c.add(jp8); c.add(jp9); jf.setVisible(false); my3.setVisible(true); }3.2.3刪除功能的實(shí)現(xiàn)刪除是首先對(duì)學(xué)生姓名進(jìn)行匹配。刪除功能的代碼實(shí)現(xiàn)如下:JButtonb1,b2; JTextFieldjtf; publicDeleteDialog(JFrameframe){ super(frame,"刪除信息",true); Containerc=this.getContentPane(); setLayout(newBorderLayout()); setBounds(720,320,280,180); JPaneljp1=newJPanel(); JLabeljl1=newJLabel("姓名:"); jtf=newJTextField(10); jp1.add(jl1); jp1.add(jtf); JPaneljp2=newJPanel(); jp2.setLayout(newFlowLayout(FlowLayout.RIGHT,20,10)); b1=newJButton("確定"); b2=newJButton("返回"); jp2.add(b1); jp2.add(b2); c.add(jp1,BorderLayout.CENTER); c.add(newJPanel(),BorderLayout.NORTH); c.add(jp2,BorderLayout.SOUTH); b1.addActionListener(this); b2.addActionListener(this); this.setVisible(true); } @Override publicvoidactionPerformed(ActionEvente){ if(e.getSource()==b1){ Stringstr=jtf.getText().trim(); for(inti=0;i<MainFrame.list.size();i++){ Students=MainFrame.list.get(i); if(str.equals(s.getName())){ intk=JOptionPane.showConfirmDialog(this,"確認(rèn)刪除?"); if(k==0){ MainFrame.list.remove(i); MainFrame.save(); dispose(); JOptionPane.showMessageDialog(this,"刪除成功!"); return; }else{ return; } } } JOptionPane.showMessageDialog(this,"信息不存在!"); }elseif(e.getSource()==b2){ dispose(); } }}3.2.4修改功能的實(shí)現(xiàn)修改功能先調(diào)用匹配學(xué)生的判斷類,匹配成功即跳出與添加功能相同的窗口,輸出學(xué)生的各項(xiàng)信息,在文本框里面即可完成修改。(1)修改功能判斷學(xué)生類的代碼實(shí)現(xiàn)如下:JButtonb1,b2; staticJTextFieldjtf; publicstaticbooleanflag=false; publicComfirmNameDialog(JFrameframe){ super(frame,"修改信息",true); Containerc=this.getContentPane(); setLayout(newBorderLayout()); setBounds(720,320,280,180); JPaneljp1=newJPanel(); JLabeljl1=newJLabel("姓名:"); jtf=newJTextField(10); jp1.add(jl1); jp1.add(jtf); JPaneljp2=newJPanel(); jp2.setLayout(newFlowLayout(FlowLayout.RIGHT,20,10)); b1=newJButton("確定"); b2=newJButton("返回"); jp2.add(b1); jp2.add(b2); c.add(jp1,BorderLayout.CENTER); c.add(newJPanel(),BorderLayout.NORTH); c.add(jp2,BorderLayout.SOUTH); b1.addActionListener(this); b2.addActionListener(this); this.setVisible(true); } @Override publicvoidactionPerformed(ActionEvente){ if(e.getSource()==b1){ flag=false; dispose(); }elseif(e.getSource()==b2){ flag=true; dispose(); } } publicstaticStringgetMessage(){ returnjtf.getText(); }}(2)修改功能主體類的代碼實(shí)現(xiàn)如下:JButtonb1,b2; JTextFieldjtf1,jtf2,jtf3,jtf4,jtf5,jtf6,jtf7; Stringname; booleanisFind=false; publicModifyDialog(JFrameframe,Stringstr){ super(frame,"修改信息",true); =str; Containerc=this.getContentPane(); setLayout(newBorderLayout()); setBounds(700,250,400,300); JPaneljp=newJPanel(); jp.setLayout(newGridLayout(4,1)); JPaneljp1=newJPanel(); jp1.setLayout(newFlowLayout(FlowLayout.LEFT,20,5)); JLabeljl1=newJLabel("姓名:"); jtf1=newJTextField(10); jtf1.setEditable(false); jp1.add(jl1); jp1.add(jtf1); JLabeljl5=newJLabel("地址:"); jtf5=newJTextField(10); jp1.add(jl5); jp1.add(jtf5); JPaneljp2=newJPanel(); jp2.setLayout(newFlowLayout(FlowLayout.LEFT,20,5)); JLabeljl2=newJLabel("性別:"); jtf2=newJTextField(10); jp2.add(jl2); jp2.add(jtf2); JLabeljl6=newJLabel("郵編:"); jtf6=newJTextField(10); jp2.add(jl6); jp2.add(jtf6); JPaneljp3=newJPanel(); jp3.setLayout(newFlowLayout(FlowLayout.LEFT,20,5)); JLabeljl3=newJLabel("關(guān)系:"); jtf3=newJTextField(10); jp3.add(jl3); jp3.add(jtf3); JLabeljl7=newJLabel("E-mail:"); jtf7=newJTextField(10); jp3.add(jl7); jp3.add(jtf7); JPaneljp4=newJPanel(); jp4.setLayout(newFlowLayout(FlowLayout.LEFT,20,5)); JLabeljl4=newJLabel("電話:"); jtf4=newJTextField(10); jp4.add(jl4); jp4.add(jtf4); JPanelj=newJPanel(); j.setLayout(newFlowLayout(FlowLayout.RIGHT,20,10)); b1=newJButton("修改"); b2=newJButton("返回"); j.add(b1); j.add(b2); jp.add(jp1); jp.add(jp2); jp.add(jp3); jp.add(jp4); c.add(jp,BorderLayout.CENTER); c.add(j,BorderLayout.SOUTH); b1.addActionListener(this); b2.addActionListener(this); Studenttmp; for(inti=0;i<MainFrame.list.size();i++){ tmp=MainFrame.list.get(i); if(tmp.getName().equals(name)){ jtf1.setText(tmp.getName()); jtf2.setText(tmp.getSex()); jtf3.setText(tmp.getRelation()); jtf4.setText(tmp.getTel()); jtf5.setText(tmp.getAddress()); jtf6.setText(tmp.getPost()); jtf7.setText(tmp.getEmail()); isFind=true; break; } } if(!isFind){ JOptionPane.showMessageDialog(this,"學(xué)生信息沒(méi)有找到......"); return; } this.setVisible(true); } @Override publicvoidactionPerformed(ActionEvente){ if(e.getSource()==b1){ Studenttmp; for(inti=0;i<MainFrame.list.size();i++){ tmp=MainFrame.list.get(i); if(tmp.getName().equals(name)){ Strings1=jtf1.getText().trim(); Strings2=jtf2.getText().trim(); Strings3=jtf3.getText().trim(); Strings4=jtf4.getText().trim(); Strings5=jtf5.getText().trim(); Strings6=jtf6.getText().trim(); Strings7=jtf7.getText().trim(); MainFrame.list.remove(i); Students=newStudent(s1,s2,s3,s4,s5,s6,s7); MainFrame.list.add(s); MainFrame.save(); dispose(); JOptionPane.showMessageDialog(this,"學(xué)生信息修改成功!"); break; } } }elseif(e.getSource()==b2){ dispose(); } }}3.2.5查找功能的實(shí)現(xiàn)查找首先匹配學(xué)生,匹配成功即在下方文本框位置顯示找到的學(xué)生信息。查找功能的代碼實(shí)現(xiàn)如下: publicvoidactionPerformed(ActionEvente){ if(e.getSource()==b1){ Strings1; for(inti=0;i<MainFrame.list.size();i++){
溫馨提示
- 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ù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 項(xiàng)目外包合同
- 2024年茶葉購(gòu)銷簡(jiǎn)單合同樣本3篇
- 數(shù)據(jù)中心節(jié)能技術(shù)應(yīng)用
- 村級(jí)鄉(xiāng)村旅游導(dǎo)游聘用協(xié)議模板
- 馬術(shù)用品租賃合同
- 商業(yè)樓宇外墻施工合同
- 2024廣告車租賃合同正規(guī)范本
- 2024年環(huán)保垃圾收集服務(wù)合同
- 2024年度醫(yī)療設(shè)備代采購(gòu)合同模板3篇
- 懸崖探險(xiǎn)防水服務(wù)協(xié)議
- 2022年秋新教材高中語(yǔ)文第七單元第16課16.1赤壁賦16.2登泰山記課后集訓(xùn)部編版必修上冊(cè)
- 微波技術(shù)與天線劉學(xué)觀課后習(xí)題答案
- 水稻害蟲(chóng)精選課件
- 危險(xiǎn)化學(xué)品購(gòu)買(mǎi)管理臺(tái)賬
- 最新VTE指南解讀(靜脈血栓栓塞癥的臨床護(hù)理指南解讀)
- 中學(xué)校本課程教材《生活中的化學(xué)》
- 污水處理站運(yùn)行維護(hù)管理方案
- 農(nóng)村公路養(yǎng)護(hù)工程施工組織設(shè)計(jì)
- 個(gè)人如何開(kāi)辦婚介公司,婚介公司經(jīng)營(yíng)和管理
- 天津市歷年社會(huì)保險(xiǎn)繳費(fèi)基數(shù)、比例
- 2024國(guó)家開(kāi)放大學(xué)電大??啤秾W(xué)前兒童發(fā)展心理學(xué)》期末試題及答案
評(píng)論
0/150
提交評(píng)論