




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、大連海事大學(xué)課程設(shè)計實驗報告姓名:周慧敏班級:2011級電子商務(wù)1班學(xué)號:2220113494指導(dǎo)老師:張偲專業(yè)班級: 電子商務(wù) _學(xué)生姓名: 周慧敏 _ 指導(dǎo)教師(簽名): 一、課程設(shè)計題目會員信息管理系統(tǒng)二、本次課程設(shè)計應(yīng)達(dá)到的目的 1. 通過該題目的設(shè)計,使學(xué)生掌握軟件開發(fā)過程的問題分析、系統(tǒng)設(shè)計、程序編碼、測試等基本方法和技能; 三、本次課程設(shè)計任務(wù)的主要內(nèi)容和要求(包括原始數(shù)據(jù)、技術(shù)參數(shù)、設(shè)計要求等)使用窗體等控件構(gòu)建會員信息管理系統(tǒng)界面,實現(xiàn)簡單的會員信息管理功能,每次錄入完會員信息之后就能實現(xiàn)對其刪除,查詢,修改等操作。要求:11人完成 2功能實現(xiàn),界面友好四、進(jìn)度安排1. 第1
2、天:選題、查閱資料;2. 第2天:確定設(shè)計方案;3. 3 -8天:方案的實現(xiàn)、調(diào)試與驗證;4. 9-10天:撰寫課程設(shè)計報告初稿并修改;五、主要參考文獻(xiàn): 1. javas實用教程(第2版), 鄭阿奇,電子工業(yè)出版社2. msdn 一、應(yīng)用技術(shù)及開發(fā)環(huán)境1.java語言及jdkjdk(java development kit)是sun microsystems針對java開發(fā)員的產(chǎn)品。自從java推出以來,jdk已經(jīng)成為使用最廣泛的java sdk。jdk 是整個java的核心,包括了java運(yùn)行環(huán)境、java工具和java基礎(chǔ)類庫。jdk是學(xué)好java的第一步。而專門運(yùn)行在x86平臺的jro
3、cket在服務(wù)端運(yùn)行效率也要比sun jdk好很多。從sun的jdk5.0開始,提供了泛型等非常實用的功能,其版本也不斷更新,運(yùn)行效率得到了非常大的提高。2.eclipseeclipse 是一個開放源代碼的、基于java的可擴(kuò)展開發(fā)平臺。就其本身而言,它只是一個框架和一組服務(wù),用于通過插件組件構(gòu)建開發(fā)環(huán)境。幸運(yùn)的是,eclipse 附帶了一個標(biāo)準(zhǔn)的插件集,包括java開發(fā)工具(java development kit,jdk)。二、結(jié)構(gòu)設(shè)計與結(jié)構(gòu)功能圖1. 結(jié)構(gòu)設(shè)計根據(jù)對系統(tǒng)進(jìn)行需求分析,本系統(tǒng)將分為4個模塊: 會員基本信息管理管理會員基本信息,包括個人信息的添加、修改、刪除以及查詢。 會員消
4、費(fèi)信息管理管理會員的消費(fèi)信息,包括消費(fèi)記錄的添加、修改、刪除以及查詢。 會員積分信息管理管理會員積分信息,包括會員積分的添加、修改、刪除以及查詢。2. 功能結(jié)構(gòu)圖會員信息管理系統(tǒng)功能結(jié)構(gòu)如圖2.1所示。會員信息管理系統(tǒng)會員基本信息管理模塊會員消費(fèi)信息管理模塊會員積分信息管理模塊查詢修改刪除添加查詢修改刪除添加顯示查詢修改刪除添加圖2.1 會員信息管理系統(tǒng)功能結(jié)構(gòu)圖三、系統(tǒng)實現(xiàn)該系統(tǒng)由4個模塊構(gòu)成,包括會員信息管理系統(tǒng)主界面模塊、會員基本信息管理模塊、會員消費(fèi)信息管理模塊和會員積分信息管理模塊。下面分別加以敘述: 會員信息管理系統(tǒng)主界面模塊圖3.1 會員信息管理系統(tǒng)主界面 會員基本信息管理模塊圖
5、3.2 會員基本信息管理模塊的運(yùn)行界面 會員消費(fèi)信息管理模塊圖3.3 會員消費(fèi)信息管理模塊運(yùn)行界面 會員積分信息管理模塊圖3.4 會員積分信息管理模塊的運(yùn)行界面四、 系統(tǒng)調(diào)試與測試4.1測試的定義及目的軟件測試就是在軟件投入運(yùn)行之前,對軟件需求分析、設(shè)計規(guī)格說明和編碼的最終復(fù)審,是保證軟件質(zhì)量的關(guān)鍵步驟。如果要給軟件測試下定義,可以這樣講,軟件測試是為了發(fā)現(xiàn)錯誤而執(zhí)行程序的過程。測試的目的在于將軟件設(shè)計時設(shè)計者與程序開發(fā)者之間理解不一致的地方、功能與需求不一致的地方、不符合邏輯思維的情況都反映給質(zhì)量控制部門,由質(zhì)量控制部門調(diào)配需求部門統(tǒng)一做出一個明確解答,再由開發(fā)人員進(jìn)行修改和補(bǔ)充。4.2系統(tǒng)
6、功能測試功能測試主要是測試程序模塊是否實現(xiàn)了設(shè)計中所要求的功能。功能測試中需要注意的有:(1)查詢功能中,是按會員號進(jìn)行查詢的。每次查詢前需要先輸入會員號,如果沒有,程序運(yùn)行時會彈出提示信息窗口,告訴用戶輸入會員信息。(2)錄入功能中,需要注意的是前臺設(shè)置的數(shù)值長度是否大于后臺數(shù)值長度,以及前臺和后臺的數(shù)據(jù)結(jié)構(gòu)是否相符,很多時候錄入功能無法實現(xiàn)是由于這些原因。還有就是必須錄入的字段的設(shè)置時候有誤。(3)測試刪除功能中需要注意的是單擊"刪除"按鈕后,一般會出現(xiàn)提示信息,詢問是否確定刪除。通常情況下,我們單擊"確認(rèn)"按鈕查看信息是否被刪除掉了,而忽略了單擊&
7、quot;取消"按鈕后程序的反應(yīng):這時有可能的是沒有刪除,還有一種可能是即便單擊了"取消"按鈕,也一樣刪除了數(shù)據(jù)。 (4)關(guān)于修改功能的測試主要是看修改確認(rèn)后是否數(shù)據(jù)真正已被修改了。這是最基本的功能,需要注意的是看是否能把不應(yīng)該修改的數(shù)據(jù)也修改成功了。 4.3系統(tǒng)調(diào)試常見錯誤1.nullpointerexception異常一般是對一個為null值的變量進(jìn)行操作引起的。為避免這種異常,最好在對變量操作之前檢查,看它是否為null值。2.numberformatexception異常這是由于數(shù)字的格式錯誤而出現(xiàn)的例外。為了避免出現(xiàn)此類錯誤,一般必須保證數(shù)據(jù)格式輸入正確
8、。結(jié)束語經(jīng)過這次課題的設(shè)計并實現(xiàn),盡管會遇到很多難題,但是讓我更加受益的是在這次課題中得到的經(jīng)驗、心得和鍛煉。我發(fā)現(xiàn)開發(fā)項目的過程其實就是個不斷的解決問題的過程,從中也感覺到項目開發(fā)的快樂,一個人永遠(yuǎn)有學(xué)不完的知識,就算是項目開發(fā)中的知識點都學(xué)了,但在實際的開發(fā)過程中仍然會遇到不少問題,遇到問題時要做到兩點:一個是“查”,一個是“問”。不懂的地方就得要自己找答案,可以從書本、網(wǎng)絡(luò)中查找解決的答案;再一個就是問周邊的同學(xué)。比如,在本科課題的編寫代碼部分,本人就參考了java 核心技術(shù),從中得到了圖形編程的很多有用的方法。這次課程的設(shè)計給我以前所學(xué)的知識做了一個總結(jié),為我深入學(xué)習(xí)編程做了鋪墊。在本
9、課題中存在的不足之處是在所難免的,本人將在日后加于改進(jìn)。致 謝在本課題的設(shè)計和實現(xiàn)的過程中遇到的不少的難題,我要感謝那些給我?guī)韼椭臅蚷nternet,還有周邊的同學(xué)們。如果沒有他們的幫助,本課題的設(shè)計和實現(xiàn)就不會如期順利完成。還要感謝我們的指導(dǎo)老師給我們這么多學(xué)生的文檔認(rèn)真批改,讓我們知道在課程設(shè)計與實現(xiàn)的過程中存在的問題。附錄:程序源代碼(1)menu.java(主窗口)package crm;import java.awt.*;import java.awt.event.*;import java.io.*;import java.util.*;import javax.swing
10、.*;import javax.swing.border.*;import java.util.*;class menu extends jframe implements actionlistener jbutton customermanager = new jbutton("會員信息");jbutton consumptionmanager = new jbutton("消費(fèi)信息");jbutton score = new jbutton("會員積分信息");jmenubar mb = new jmenubar();/ 菜單欄j
11、panel jp = new jpanel();/ 用來填放子模塊container cp = getcontentpane();string username;menu() menu(string username) this.username = username;mb.add(customermanager);mb.add(consumptionmanager);mb.add(score);cp.add(mb, "north");/ 設(shè)置邊框jp.setborder(borderfactory.createtitledborder(borderfactory.crea
12、telineborder(color.blue, 2), null,titledborder.center, titledborder.top);jp.setlayout(new borderlayout();jlabel label1 = new jlabel(new imageicon("4.jpg");jp.add(label1);jlabel label2 = new jlabel(new imageicon("2.jpg");jp.add(label2, "south");jscrollpane scrollpane = n
13、ew jscrollpane(jp);cp.add(scrollpane);toolkit kit = toolkit.getdefaulttoolkit();dimension screen = kit.getscreensize();int x = screen.width; /* 取得顯示器窗口的寬度 */int y = screen.height; /* 取得顯示器窗口的高度 */setsize(600, 600);int xcenter = (x - 600) / 2;int ycenter = (y - 600) / 2;setlocation(xcenter, ycenter);
14、/* 顯示在窗口中央 */setvisible(true);setdefaultcloseoperation(jframe.exit_on_close);/ 注冊臨聽器customermanager.addactionlistener(this);consumptionmanager.addactionlistener(this);score.addactionlistener(this);public void actionperformed(actionevent e) string cmd = e.getactioncommand();if (cmd.equals("會員信息&
15、quot;) new customermanager();if (cmd.equals("消費(fèi)信息") new consumptionmanager();if (cmd.equals("會員積分信息") new score();public static void main(string args) new menu("");(2)score.java (會員積分管理界面)package crm;import java.awt.*;import java.awt.event.*;import javax.swing.*;import
16、java.io.*;import java.util.*;class customer1 implements java.io.serializable /* * */private static final long serialversionuid = 1l;string number, name, lastmonth, thismonth, sex, total;public customer1() ;public void setnumber(string number) this.number = number;public string getnumber() return num
17、ber;public void setname(string name) = name;public string getname() return name;public void setlastmonth(string lastmonth) this.lastmonth = lastmonth;public string getlastmonth() return lastmonth;public void setthismonth(string thismonth) this.thismonth = thismonth;public string getthismon
18、th() return thismonth;public void setsex(string sex) this.sex = sex;public string getsex() return sex;public void settotal(string total) this.total = total;public string gettotal() return total;public class score extends jframe /* * */private static final long serialversionuid = 1l;jlabel lb = new j
19、label("錄入請先輸入記錄,查詢、刪除請先輸入會員號,修改時對查詢" + "內(nèi)容改后的保存!");jtextfield 會員號, 姓名, 上月積分, 本月積分, 總積分;jradiobutton 男, 女;buttongroup group = null;jbutton 錄入, 查詢, 刪除, 修改, 顯示;jpanel p1, p2, p3, p4, p5, p6, pv, ph;customer1 會員 = null;hashtable<string, customer1> 會員散列表 = null;file file = null;
20、fileinputstream inone = null;objectinputstream intwo = null;fileoutputstream outone = null;objectoutputstream outtwo = null;public score() super("會員積分信息管理系統(tǒng)");會員號 = new jtextfield(10);姓名 = new jtextfield(10);上月積分 = new jtextfield(10);本月積分 = new jtextfield(10);總積分 = new jtextfield(10);group
21、 = new buttongroup();男 = new jradiobutton("男", true);女 = new jradiobutton("女", false);group.add(男);group.add(女);錄入 = new jbutton("錄入");查詢 = new jbutton("查詢");刪除 = new jbutton("刪除");修改 = new jbutton("修改");顯示 = new jbutton("顯示");錄入.
22、addactionlistener(new inputact();查詢.addactionlistener(new inquestact();修改.addactionlistener(new modifyact();刪除.addactionlistener(new deleteact();顯示.addactionlistener(new showact();修改.setenabled(false);p1 = new jpanel();p1.add(new jlabel(" 會員號:", jlabel.center);p1.add(會員號);p2 = new jpanel()
23、;p2.add(new jlabel(" 姓名:", jlabel.center);p2.add(姓名);p3 = new jpanel();p3.add(new jlabel(" 性別:", jlabel.center);p3.add(男);p3.add(女);p4 = new jpanel();p4.add(new jlabel(" 上月積分:", jlabel.center);p4.add(上月積分);p5 = new jpanel();p5.add(new jlabel(" 本月積分:", jlabel.c
24、enter);p5.add(本月積分);p6 = new jpanel();p6.add(new jlabel(" 總積分:", jlabel.center);p6.add(總積分);pv = new jpanel();pv.setlayout(new gridlayout(6, 1);pv.add(p1);pv.add(p2);pv.add(p3);pv.add(p4);pv.add(p5);pv.add(p6);ph = new jpanel();ph.add(錄入);ph.add(查詢);ph.add(修改);ph.add(刪除);ph.add(顯示);file =
25、new file("會員積分信息.txt");會員散列表 = new hashtable<string, customer1>();if (!file.exists() try fileoutputstream out = new fileoutputstream(file);objectoutputstream objectout = new objectoutputstream(out);objectout.writeobject(會員散列表);objectout.close();out.close(); catch (ioexception e) cont
26、ainer con = getcontentpane();con.setlayout(new borderlayout();con.add(lb, borderlayout.north);con.add(pv, borderlayout.center);con.add(ph, borderlayout.south);setdefaultcloseoperation(exit_on_close);setbounds(100, 50, 500, 380);setvisible(true);public static void main(string args) new score();class
27、inputact implements actionlistener public void actionperformed(actionevent e) 修改.setenabled(false);string number = ""number = 會員號.gettext();if (number.length() > 0) try inone = new fileinputstream(file);intwo = new objectinputstream(inone);會員散列表 = (hashtable) intwo.readobject();inone.cl
28、ose();intwo.close(); catch (exception ee) system.out.println("創(chuàng)建散列表出現(xiàn)問題!");if (會員散列表.containskey(number) string warning = "該會員信息已存在,請到修改頁面修改!"joptionpane.showmessagedialog(null, warning, "警告",joptionpane.warning_message);/ end if1else string m = "該會員信息將被錄入!"in
29、t ok = joptionpane.showconfirmdialog(null, m, "確認(rèn)",joptionpane.yes_no_option,joptionpane.question_message);if (ok = joptionpane.yes_option) string name = 姓名.gettext();string lastmonth = 上月積分.gettext();string thismonth = 本月積分.gettext();string total = 總積分.gettext();string sex = null;if (男.is
30、selected() sex = 男.gettext(); else sex = 女.gettext();會員 = new customer1();會員.setnumber(number);會員.setname(name);會員.setlastmonth(lastmonth);會員.setthismonth(thismonth);會員.settotal(total);會員.setsex(sex);try outone = new fileoutputstream(file);outtwo = new objectoutputstream(outone);會員散列表.put(number, 會員
31、);outtwo.writeobject(會員散列表);outtwo.close();outone.close(); catch (exception ee) system.out.println("輸出散列表出現(xiàn)問題!");會員號.settext(null);姓名.settext(null);上月積分.settext(null);本月積分.settext(null);總積分.settext(null);/ end else1/ end if0else string warning = "必須輸入會員號!"joptionpane.showmessaged
32、ialog(null, warning, "警告",joptionpane.warning_message);/ end else0/ end actionperformed/ end classclass inquestact implements actionlistener public void actionperformed(actionevent e) string number = ""number = 會員號.gettext();if (number.length() > 0) try inone = new fileinputst
33、ream(file);intwo = new objectinputstream(inone);會員散列表 = (hashtable) intwo.readobject();inone.close();intwo.close(); catch (exception ee) system.out.println("散列表有問題!");if (會員散列表.containskey(number) 修改.setenabled(true);customer1 stu = (customer1) 會員散列表.get(number);姓名.settext(stu.getname();上月
34、積分.settext(stu.getlastmonth();本月積分.settext(stu.getthismonth();總積分.settext(stu.gettotal();if (stu.getsex().equals("男") 男.setselected(true); else 女.setselected(true); else 修改.setenabled(false);string warning = "該會員號不存在!"joptionpane.showmessagedialog(null, warning, "警告",jo
35、ptionpane.warning_message); else 修改.setenabled(false);string warning = "必須輸入會員號!"joptionpane.showmessagedialog(null, warning, "警告",joptionpane.warning_message);class modifyact implements actionlistener public void actionperformed(actionevent e) string number = 會員號.gettext();strin
36、g name = 姓名.gettext();string lastmonth = 上月積分.gettext();string thismonth = 本月積分.gettext();string total = 總積分.gettext();string sex = null;if (男.isselected() sex = 男.gettext(); else sex = 女.gettext();customer1 會員 = new customer1();會員.setnumber(number);會員.setname(name);會員.setlastmonth(lastmonth);會員.set
37、thismonth(thismonth);會員.settotal(total);會員.setsex(sex);try outone = new fileoutputstream(file);outtwo = new objectoutputstream(outone);會員散列表.put(number, 會員);outtwo.close();outone.close();會員號.settext(null);姓名.settext(null);上月積分.settext(null);本月積分.settext(null);總積分.settext(null); catch (exception ee)
38、system.out.println("錄入修改出現(xiàn)問題!");修改.setenabled(false);class deleteact implements actionlistener public void actionperformed(actionevent e) 修改.setenabled(false);string number = 會員號.gettext();if (number.length() > 0) try inone = new fileinputstream(file);intwo = new objectinputstream(inone
39、);會員散列表 = (hashtable) intwo.readobject();intwo.close();inone.close(); catch (exception ee) if (會員散列表.containskey(number) customer1 stu = (customer1) 會員散列表.get(number);姓名.settext(stu.getname();上月積分.settext(stu.getlastmonth();本月積分.settext(stu.getthismonth();總積分.settext(stu.gettotal();if (stu.getsex().
40、equals("男") 男.setselected(true); else 女.setselected(true);string m = "確定要刪除該會員的記錄嗎?"int ok = joptionpane.showconfirmdialog(null, m, "確認(rèn)",joptionpane.yes_no_option,joptionpane.question_message);if (ok = joptionpane.yes_option) 會員散列表.remove(number);try outone = new fileou
41、tputstream(file);outtwo = new objectoutputstream(outone);outtwo.writeobject(會員散列表);outtwo.close();outone.close();會員號.settext(null);姓名.settext(null);上月積分.settext(null);本月積分.settext(null);總積分.settext(null); catch (exception ee) system.out.println(ee); else if (ok = joptionpane.no_option) 會員號.settext(n
42、ull);姓名.settext(null);上月積分.settext(null);本月積分.settext(null);總積分.settext(null); else string warning = "該會員不存在!"joptionpane.showmessagedialog(null, warning, "警告",joptionpane.warning_message); else string warning = "必須輸入會員號!"joptionpane.showmessagedialog(null, warning, &qu
43、ot;警告",joptionpane.warning_message);class showact implements actionlistener public void actionperformed(actionevent e) new customershow(file);class customershow extends jdialog /* * */private static final long serialversionuid = 1l;hashtable 會員散列表 = null;jtextarea 顯示 = null;fileinputstream inon
44、e = null;objectinputstream intwo = null;file file = null;public customershow(file file) super(new jframe(), "顯示對話框");this.file = file;顯示 = new jtextarea(16, 30);try inone = new fileinputstream(file);intwo = new objectinputstream(inone);會員散列表 = (hashtable) intwo.readobject();intwo.close();i
45、none.close(); catch (exception ee) if (會員散列表.isempty()顯示.append("目前還沒有會員的信息記錄!n");else 顯示.settext("會員號 姓名 性別 上月積分 本月積分 總積分 n");for (enumeration enm = 會員散列表.elements(); enm.hasmoreelements();) customer1 stu = (customer1) enm.nextelement();string sex = ""if (stu.getsex().
46、equals("男")sex = "男"elsesex = "女"string str = stu.getnumber() + " " + stu.getname()+ " " + sex + " " + stu.getlastmonth()+ " " + stu.getthismonth()+ " " + stu.gettotal() + "n"顯示.append(str);jscrollpane scroll =
47、 new jscrollpane(顯示);container con = getcontentpane();con.add("center", scroll);con.validate();setvisible(true);setbounds(200, 200, 400, 300);addwindowlistener(new windowadapter() public void windowclosing(windowevent e) setvisible(false););(3)customermanager.java (會員基本信息管理)package crm;imp
48、ort java.awt.*;import java.awt.event.*;import javax.swing.*;import java.io.*;import java.util.*;class customer implements java.io.serializable string number, name, address, telephone, borth, sex;public customer() ;public void setnumber(string number) this.number = number;public string getnumber() re
49、turn number;public void setname(string name) = name;public string getname() return name;public void setaddress(string address) this.address = address;public string getaddress() return address;public void settelephone(string telephone) this.telephone = telephone;public string gettelephone()
50、 return telephone;public void setborth(string borth) this.borth = borth;public string getborth() return borth;public void setsex(string sex) this.sex = sex;public string getsex() return sex;public class customermanager extends jframe jlabel lb = new jlabel("錄入請先輸入記錄,查詢、刪除請先輸入會員號,修改時對查詢" + "內(nèi)容改后的保存!");jtextfield 會員號, 姓名, 家庭地址, 電話號碼, 出生;jradiobutton 男, 女;buttongroup group = null;jbutton 錄入, 查詢, 刪除, 修改, 顯示;jpanel p1, p2, p3, p4, p5, p6, pv, ph;customer 會員 = null;hashtable 會員散列表 = null;file file = null;fileinputstream inone = null;objectinputstream in
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030制水機(jī)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030內(nèi)墻涂料行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030養(yǎng)殖行業(yè)發(fā)展分析及投資戰(zhàn)略研究報告
- 2025-2030全球青霉素市場投資建議及前景供求狀況分析研究報告
- 2025-2030全球及中國礦物絕緣熱電偶電纜行業(yè)市場現(xiàn)狀供需分析及市場深度研究發(fā)展前景及規(guī)劃可行性分析研究報告
- 2025-2030全球及中國智能高速公路行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國急診科軟件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國基于位置的服務(wù)(LBS)和實時定位系統(tǒng)(RTLS)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國云主數(shù)據(jù)管理行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球與中國重卡行業(yè)市場發(fā)展分析及前景趨勢與投資機(jī)會研究報告
- 三14《情緒對對碰》心理健康課件
- 雙硫侖(戒酒硫)藥片藥品說明書
- 《社會工作概論(第三版)》課件08 第八章 小組社會工作
- (讀書筆記)禮物的流動:一個中國村莊中的互惠原則和社會網(wǎng)絡(luò)
- 生理學(xué)(全套課件)
- 路基石方破碎開挖專項施工方案
- 二年級美術(shù)上冊課件 《3.我的手印畫》 贛美版 (共18張PPT)
- Q∕SY 126-2014 油田水處理用緩蝕阻垢劑技術(shù)規(guī)范
- 環(huán)保管理制度(適用于軟件企業(yè))
- 全國青少年機(jī)器人技術(shù)等價考試三級全套課件
- 適老化改造培訓(xùn)課件(PPT 31頁)
評論
0/150
提交評論