版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
研發(fā)項(xiàng)目總結(jié)報(bào)告模板項(xiàng)目總結(jié)報(bào)告項(xiàng)目編號(hào)項(xiàng)目名稱LPDT1項(xiàng)目情況綜述簡要介紹項(xiàng)目所開發(fā)的產(chǎn)品在產(chǎn)品線路標(biāo)規(guī)劃中的位置、主要的功能等情況;項(xiàng)目目標(biāo)從進(jìn)度、產(chǎn)品需求、質(zhì)量等方面說明。2管理總結(jié)1計(jì)劃制定與監(jiān)控計(jì)劃與實(shí)際工期對(duì)比圖;累計(jì)計(jì)劃偏移率;估計(jì)工作量與實(shí)際對(duì)比圖;各階段工作量比率;交付件完成率;交付件延期原因分布等風(fēng)險(xiǎn)管理風(fēng)險(xiǎn)管理表;風(fēng)險(xiǎn)規(guī)避措施實(shí)行情況需求管理需求跟蹤和實(shí)現(xiàn)情況;需求變更和影響情況物料管理成本達(dá)成情況和分析23453技術(shù)總結(jié)關(guān)鍵技術(shù)的實(shí)現(xiàn)或突破;重大技術(shù)問題4測試總結(jié)1缺陷分析及說明缺陷匯總分析圖系統(tǒng)測試總結(jié)Beta測試總結(jié)試生產(chǎn)總結(jié)2345各部門總結(jié)6其它(溝通、評(píng)審、供應(yīng)商管理等等)201*-4-22Companyconfidential1/項(xiàng)目總結(jié)報(bào)告7綜述總的做的比較好的地方、存在的問題和改進(jìn)建議201*-4-22Companyconfidential2/擴(kuò)展閱讀軟件項(xiàng)目開發(fā)總結(jié)報(bào)告模版武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告火車票系統(tǒng)的開發(fā)1引言隨著人們生活水平和經(jīng)濟(jì)水平的提高,網(wǎng)絡(luò)科技的全球化的發(fā)展,出游和出差的頻率越來越多。這大大的激發(fā)了交通水平的發(fā)展。其中,火車這種又方便有便宜的交通工具作為人們的首選,火車站的客運(yùn)列車增加,客運(yùn)量也隨之增加。原有的售票的方式已經(jīng)不再能滿足旅客的需求了。為了方便旅客售票系統(tǒng)不僅僅只能售票也能夠了解列車的各種信息。這樣才能成為現(xiàn)在網(wǎng)絡(luò)社會(huì)的真的適應(yīng)者。2需求分析該售票系統(tǒng)是融合了火車票銷售、退票、列車管理、車票管理、售票員管理、列車管理信息,以及售票信息查詢?yōu)橐惑w的綜合系統(tǒng)。該系統(tǒng)主要編寫的功能是列車和售票信息的查詢及售票功能。1用戶該系統(tǒng)主要有兩類用戶管理員和售票員。管理員主要工作有車次管理,車票管理和售票員管理。對(duì)于每項(xiàng)功能都有添加,刪除和修改的功能。售票的主要工作是售票和退票。2主要功能該系統(tǒng)從功能方面可以分為四個(gè)方面登錄。不管你是管理員還是售票員必須登錄以后才可以進(jìn)行系統(tǒng)允許的操作。當(dāng)然要登錄的管理員和售票員都必須是再數(shù)據(jù)庫中已經(jīng)發(fā)布的。基本設(shè)置該模塊主要是修改售票員的相關(guān)信息,修改列車的相關(guān)信息和修改車票的相關(guān)信息。這一塊的功能只有管理員才可以操作。其他的售票員是不可以對(duì)他進(jìn)行操作的。售票和退票這部分工作主要是售票員來操作的。售票員根據(jù)買票人員提出的要求進(jìn)行查詢。查詢的方式有兩種一是根據(jù)車次查詢;一是根據(jù)目的地來查詢。退票主要是將已經(jīng)出售的車票在列車開出之前再一次的返回到數(shù)據(jù)庫中,并繼續(xù)出售。列車和車票查詢;當(dāng)需要查詢列車信息或者是車票信息是所做的操作。3基本流程武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告3開發(fā)過程1內(nèi)容該程序包括三個(gè)部分?jǐn)?shù)據(jù)庫的設(shè)計(jì)、通用模塊的實(shí)現(xiàn)、各個(gè)模塊的實(shí)現(xiàn)。1數(shù)據(jù)庫的設(shè)計(jì)將本系統(tǒng)所需的所有的數(shù)據(jù)都存儲(chǔ)到數(shù)據(jù)庫中。需要在數(shù)據(jù)庫中管理員表、售票員表、列車信息表和車票信息表。如圖所示武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告管理員表售票員表列車信息表武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告車票信息表2通用模塊的實(shí)現(xiàn)通用模塊為了減少代碼的重復(fù)。在該系統(tǒng)中,對(duì)經(jīng)常使用的操作進(jìn)行封裝,如將多次需要調(diào)用的數(shù)據(jù)庫和操作數(shù)庫的增、刪、改和查等操作進(jìn)行封裝。使代碼有很好的重用性,即使出現(xiàn)錯(cuò)誤也很容易調(diào)試。如本程序中的Conn.javaimportjava.sql.*;publicclassConn{privatestaticConnectioncon;privatestaticfinalStringDRIVER="com.mysql.jdbc.Driver";privatestaticfinalStringURL="jdbc:";privatestaticfinalStringNAME="root";privatestaticfinalStringPASSWORD="021702190804";static{}publicstaticConnectiongetConnection(){}publicstaticvoidcloseCon(Connectioncon){try{if(con!=null)con.close();try{con=DriverManager.getConnection(URL,NAME,PASSWORD);}catch(SQLExceptione){}returncon;e.printStackTrace();try{}Class.forName(DRIVER);e.printStackTrace();}catch(ClassNotFoundExceptione){}catch(SQLExceptione){武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告}}publicstaticvoidclosePt(PreparedStatementpt){}publicstaticvoidcloseRs(ResultSetrs){}try{}if(rs!=null)rs.close();try{}if(pt!=null)pt.close();}e.printStackTrace();}catch(Exceptione){e.printStackTrace();}catch(Exceptione){e.printStackTrace();用戶登錄界面的設(shè)計(jì)、主界面的設(shè)計(jì)、基本設(shè)置模塊、銷售及退票模塊和列車及車票查詢模塊。用戶登錄模塊該部分是通過設(shè)計(jì)login.java來實(shí)現(xiàn)的。這部分代碼的作用是用戶首先選擇自己的登錄的是管理員還是售票員,然后輸入賬號(hào)和密碼。單擊登錄,用戶先判斷用戶登錄的類型,然后給sql變量賦SQL語句值,系統(tǒng)調(diào)用DAO.java類的login()傳入sql變量。.Login代碼是importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.*;importorg.eclipse.swt.graphics.Image;importorg.eclipse.swt.layout.*;importorg.eclipse.swt.widgets.*;importcom.huizhi.dao.DAO;publicclassLogin{privateTextnameText;privateTextpassText;privateCombocombo;privateStringtype;privateDisplaydisplay=newDisplay();privateShellshell=newShell(display);publicLogin(){FormLayoutlayout=newFormLayout();武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告layout.marginHeight=40;layout.marginWidth=40;shell.setLayout(layout);shell.setText("login");Imageimage=newImage(display,"jpg");shell.setBackgroundImage(image);setUIControl();shell.pack();shell.open();while(!shell.isDisposed()){if(!display.readAndDispatch())display.sleep();}display.dispose();}privatevoidsetUIControl(){Labelusername=newLabel(shell,SWT.NONE);username.setText("username");nameText=newText(shell,SWT.SINGLE|SWT.BORDER);Labelpassword=newLabel(shell,SWT.NONE);password.setText("password");passText=newText(shell,SWT.SINGLE|SWT.BORDER|SWT.PASSWORD);//passText.setEchoChar("*");Labelselect=newLabel(shell,SWT.NONE);select.setText("select");Buttonsubmit=newButton(shell,SWT.PUSH);submit.setText("login");submit.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){type=combo.getText();Stringname=nameText.getText();Stringpass=passText.getText();Stringsql=null;booleanflag=false;MessageBoxbox=newMessageBox(shell,SWT.OK);if("".equals(type)||"".equals(name)||"".equals(pass)){}box.setMessage("pleaseinputalltheinformation");box.open();return;武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告DAOdao=newDAO();if("users".equals(type)){sql="select*fromuserswhereusername=""+name+""andpassword=""+pass+""";}elseif("admin".equals(type)){sql="select*fromadminwhereusername=""+name+""andpassword=""+pass+""";}flag=dao.login(sql);if(flag){shell.dispose();newMain(type);}else{}box.setMessage("wrongnameorpassword");box.open();}});Buttonreset=newButton(shell,SWT.PUSH);reset.setText("cancel");Stringvalue[]=;combo=newCombo(shell,SWT.DROP_DOWN);combo.setItems(value);FormDatadata=newFormData();data.top=newFormAttachment(30,0);username.setLayoutData(data);data=newFormData();data.top=newFormAttachment(username,0,SWT.CENTER);data.left=newFormAttachment(username,10,SWT.RIGHT);nameText.setLayoutData(data);data=newFormData();data.top=newFormAttachment(select,0,SWT.CENTER);data.left=newFormAttachment(select,10,SWT.RIGHT);combo.setLayoutData(data);data=newFormData();data.top=newFormAttachment(username,10,SWT.BOTTOM);password.setLayoutData(data);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告data=newFormData();data.top=newFormAttachment(password,0,SWT.CENTER);data.left=newFormAttachment(nameText,0,SWT.LEFT);passText.setLayoutData(data);data=newFormData();data.top=newFormAttachment(password,10,SWT.BOTTOM);submit.setLayoutData(data);data=newFormData();data.top=newFormAttachment(submit,0,SWT.CENTER);data.left=newFormAttachment(submit,20,SWT.RIGHT);reset.setLayoutData(data);}publicstaticvoidmain(String[]args){newLogin();}}DAO.java的login()代碼publicbooleanlogin(Stringsql){booleanflag=false;con=Conn.getConnection();try{pt=con.prepareStatement(sql);rs=pt.executeQuery();if(rs.next()){flag=true;}}catch(SQLExceptione){e.printStackTrace();}finally{Conn.closeRs(rs);}Conn.closePt(pt);Conn.closeCon(con);returnflag;}圖示為;武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告實(shí)現(xiàn)主界面importorg.eclipse.swt.*;importorg.eclipse.swt.widgets.*;importorg.eclipse.swt.layout.*;importorg.eclipse.swt.events.*;publicclassMain{privateStringtype;Displaydisplay=Display.getCurrent();Shellshell=newShell(display);publicMain(Stringtype){this.type=type;shell.setText("Trainticketingsystem");shell.setLayout(newFillLayout());Menumenu=newMenu(shell,SWT.BAR);//第一個(gè)菜單MenuItembasic=newMenuItem(menu,SWT.CASCADE);basic.setText("BasicSettings");if("users".equals(type)){}basic.setEnabled(false);Menufilemenu=newMenu(shell,SWT.DROP_DOWN);MenuItemtrain=newMenuItem(filemenu,SWT.PUSH);train.setText("TrainsManagement");train.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){}newTrainManage();});MenuItemticket=newMenuItem(filemenu,SWT.PUSH);ticket.setText("TicketsManagement");武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告ticket.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newTicketManage();}});MenuItemusers=newMenuItem(filemenu,SWT.PUSH);users.setText("UsersManagement");users.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newUsersManage();}});MenuItemexit=newMenuItem(filemenu,SWT.PUSH);exit.setText("quit");basic.setMenu(filemenu);exit.addSelectionListener(newSelectionAdapter(){}publicvoidwidgetSelected(SelectionEvente){display.dispose();});//第二個(gè)菜單MenuItemmarket=newMenuItem(menu,SWT.CASCADE);market.setText("SalesandRefunds");MenueditMenu=newMenu(shell,SWT.DROP_DOWN);MenuItemmarketItem=newMenuItem(editMenu,SWT.PUSH);marketItem.setText("SalesTickets");marketItem.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newXiaosTicket();}});MenuItemrefundItem=newMenuItem(editMenu,SWT.PUSH);refundItem.setText("RefundsTickets");market.setMenu(editMenu);refundItem.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newTuiTicket();}});//第三個(gè)菜單MenuItemfind=newMenuItem(menu,SWT.CASCADE);find.setText("TrainsandTicketsquery");MenutaiMenu=newMenu(shell,SWT.DROP_DOWN);MenuItemtrainFind=newMenuItem(taiMenu,SWT.PUSH);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告trainFind.setText("Trainsquery");trainFind.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newFindTrain();}});MenuItemticketFind=newMenuItem(taiMenu,SWT.PUSH);ticketFind.setText("Ticketquery");find.setMenu(taiMenu);ticketFind.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newFindTicket();}});shell.setMenuBar(menu);shell.setSize(500,400);shell.open();while(!shell.isDisposed()){if(!display.readAndDispatch())display.sleep();}display.dispose();}}圖示為基本設(shè)置模塊包括車次管理,車票管理和售票員管理。車次管理主要是是對(duì)于列車的增加,刪除和修改等操作。其中包括它的相關(guān)的信息等。它是由TrainManagement.java.代碼如下importjava.util.List;武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.*;importorg.eclipse.swt.layout.*;importorg.eclipse.swt.widgets.*;importcom.huizhi.dao.DAO;importcom.huizhi.vo.Train;publicclassTrainManage{Displaydisplay=Display.getCurrent();Shelltmshell=newShell(display);finalTabletable=newTable(tmshell,SWT.SINGLE|SWT.H_SCROLL|SWT.V_SCROLL|SWT.H_SCROLL|SWT.BORDER|SWT.FULL_SELECTION);TrainManagetm=this;publicTrainManage(){RowLayoutrowLayout=newRowLayout();rowLayout.pack=true;rowLayout.wrap=true;rowLayout.justify=false;rowLayout.marginTop=20;tmshell.setLayout(rowLayout);finalTableColumncolumn1=newTableColumn(table,SWT.LEFT);columnsetText("TrainID");columnsetWidth(80);finalTableColumncolumn2=newTableColumn(table,SWT.LEFT);columnsetText("TrainNum");columnsetWidth(80);finalTableColumncolumn3=newTableColumn(table,SWT.LEFT);columnsetText("TrainType");columnsetWidth(80);finalTableColumncolumn4=newTableColumn(table,SWT.LEFT);columnsetText("Starting");columnsetWidth(80);finalTableColumncolumn5=newTableColumn(table,SWT.LEFT);columnsetText("startingTime");columnsetWidth(80);finalTableColumncolumn6=newTableColumn(table,SWT.LEFT);columnsetText("terminal");columnsetWidth(80);finalTableColumncolumn7=newTableColumn(table,SWT.LEFT);columnsetText("terminalTime");columnsetWidth(80);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告finalTableColumncolumn8=newTableColumn(table,SWT.LEFT);columnsetText("iskongtiao");columnsetWidth(80);finalTableColumncolumn9=newTableColumn(table,SWT.LEFT);columnsetText("price");columnsetWidth(80);finalTableColumncolumn10=newTableColumn(table,SWT.LEFT);column10.setText("middleStation");column10.setWidth(80);finalTableColumncolumn11=newTableColumn(table,SWT.LEFT);column1setText("yzNum");column1setWidth(80);finalTableColumncolumn12=newTableColumn(table,SWT.LEFT);column1setText("rzNum");column1setWidth(80);finalTableColumncolumn13=newTableColumn(table,SWT.LEFT);column1setText("ywNum");column1setWidth(80);finalTableColumncolumn14=newTableColumn(table,SWT.LEFT);column1setText("rwNum");column1setWidth(80);table.setHeaderVisible(true);table.setLinesVisible(true);freshData();table.setSize(800,200);Buttonadd=newButton(tmshell,SWT.PUSH);add.setText("addtrains");add.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){newAddTrain(tm);}});Buttonupdate=newButton(tmshell,SWT.PUSH);update.setText("modify");update.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){TableItem[]selection=table.getSelection();TableItemselectedRow=selection[0];Traintrain=newTrain();train.setId(Integer.parseInt(selectedRow.getText(0)));train.setTrainNum(selectedRow.getText(1));train.setTrainType(selectedRow.getText(2));train.setStarting(selectedRow.getText(3));武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告train.setStartingTime(selectedRow.getText(4));train.setTerminal(selectedRow.getText(5));train.setTerminalTime(selectedRow.getText(6));train.setIskongTiao(selectedRow.getText(7));train.setPrice(Float.parseFloat(selectedRow.getText(8)));train.setMiddleStation(selectedRow.getText(9));train.setYzNum(Integer.parseInt(selectedRow.getText(10)));train.setRzNum(Integer.parseInt(selectedRow.getText(11)));train.setYwNum(Integer.parseInt(selectedRow.getText(12)));train.setRwNum(Integer.parseInt(selectedRow.getText(13)));newUpdateTrain(train,tm);}});Buttondelete=newButton(tmshell,SWT.PUSH);delete.setText("cancel");delete.addSelectionListener(newSelectionAdapter(){box=newpublicvoidwidgetSelected(SelectionEvente){MessageBoxMessageBox(tmshell,SWT.YES|SWT.NO);box.setMessage("Areyousuretocancel");intnum=box.open();if(num==128)return;TableItem[]selection=table.getSelection();TableItemselectedRow=selection[0];DAOdao=newDAO();Stringsql="deletefromtrainwhereid="+selectedRow.getText(0)+"";inti=dao.update(sql);if(i>0){box.setMessage("succeed");box.open();table.remove(table.getSelectionIndex());}else{}}});box.setMessage("failure");box.open();武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告tmshell.setSize(1200,400);tmshell.setText("trainManagement");tmshell.open();while(!tmshell.isDisposed()){if(!display.readAndDispatch())display.sleep();}tmshell.dispose();}publicvoidfreshData(){table.removeAll();try{DAOdao=newDAO();Listlist=dao.getAllTrain();intnumber=list.size();for(inti=0;i武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告e.printStackTrace();}finally{Conn.closePt(pt);Conn.closeCon(con);}returni;}publicListgetAllTrain(){Listlist=newArrayList();con=Conn.getConnection();try{pt=con.prepareStatement("select*fromtrain");rs=pt.executeQuery();while(rs.next()){Traintrain=newTrain();train.setId(rs.getInt(1));train.setTrainNum(rs.getString(2));train.setTrainType(rs.getString(3));train.setStarting(rs.getString(4));train.setStartingTime(rs.getString(5));train.setTerminal(rs.getString(6));train.setTerminalTime(rs.getString(7));train.setIskongTiao(rs.getString(8));train.setPrice(rs.getFloat(9));train.setMiddleStation(rs.getString(10));train.setYzNum(rs.getInt(11));train.setRzNum(rs.getInt(12));train.setYwNum(rs.getInt(13));train.setRwNum(rs.getInt(14));list.add(train);}}catch(SQLExceptione){e.printStackTrace();}finally{Conn.closeRs(rs);Conn.closePt(pt);Conn.closeCon(con);}returnlist;}其中的update的功能是,首先連接數(shù)據(jù)庫,然后用傳遞過來的SQl語句在列表中刪除某輛列車的信息。getAllTrain()方法是顯示所有的列車的信息。圖示如下武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告在車次管理中的對(duì)于列車信息添加的功能是通過AddTrain.java來實(shí)現(xiàn)的。代碼如下importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.*;importorg.eclipse.swt.layout.*;importorg.eclipse.swt.widgets.*;importcom.huizhi.dao.DAO;publicclassAddTrain{Displaydisplay=Display.getCurrent();Shelltmshell=newShell(display);TrainManagetrainmanage=null;publicAddTrain(TrainManagetm){trainmanage=tm;GridLayoutgridlayout=newGridLayout();tmshell.setText("addtrainsinformation");gridlayout.numColumns=2;gridlayout.makeColumnsEqualWidth=true;tmshell.setLayout(gridlayout);GridDatagd=newGridData(GridData.FILL_BOTH);Labell=newLabel(tmshell,SWT.LEFT);l.setText("trainNum");l.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTexttrainNum=newText(tmshell,SWT.NONE);trainNum.setSize(50,60);trainNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell1=newLabel(tmshell,SWT.LEFT);lsetText("trainType");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTexttrainType=newText(tmshell,SWT.LEFT);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告trainType.setSize(30,40);trainType.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell2=newLabel(tmshell,SWT.LEFT);lsetText("starting");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextstarting=newText(tmshell,SWT.LEFT);starting.setSize(30,40);starting.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell3=newLabel(tmshell,SWT.LEFT);lsetText("startingtime");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextstartingTime=newText(tmshell,SWT.LEFT);startingTime.setSize(30,40);startingTime.setLayoutData(gd);Labell4=newLabel(tmshell,SWT.LEFT);lsetText("terminal");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextterminal=newText(tmshell,SWT.LEFT);terminal.setSize(30,40);terminal.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell5=newLabel(tmshell,SWT.LEFT);lsetText("terminaltime");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextterminalTime=newText(tmshell,SWT.LEFT);terminalTime.setSize(30,40);terminalTime.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell6=newLabel(tmshell,SWT.LEFT);lsetText("iskongtiao");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextiskongTiao=newText(tmshell,SWT.LEFT);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告iskongTiao.setSize(30,40);iskongTiao.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell7=newLabel(tmshell,SWT.LEFT);lsetText("price");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextprice=newText(tmshell,SWT.LEFT);price.setSize(30,40);price.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell8=newLabel(tmshell,SWT.LEFT);lsetText("middleStation");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextmiddleStation=newText(tmshell,SWT.LEFT);middleStation.setSize(30,40);middleStation.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell9=newLabel(tmshell,SWT.LEFT);lsetText("yzNum");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextyzNum=newText(tmshell,SWT.LEFT);yzNum.setSize(30,40);yzNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell10=newLabel(tmshell,SWT.LEFT);l10.setText("rzNum");l10.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextrzNum=newText(tmshell,SWT.LEFT);rzNum.setSize(30,40);rzNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell11=newLabel(tmshell,SWT.LEFT);l1setText("ywNum");l1setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告finalTextywNum=newText(tmshell,SWT.LEFT);ywNum.setSize(30,40);ywNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell12=newLabel(tmshell,SWT.LEFT);l1setText("rwNum");l1setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextrwNum=newText(tmshell,SWT.LEFT);rwNum.setSize(30,40);rwNum.setLayoutData(gd);Buttonb=newButton(tmshell,SWT.LEFT);b.setText("add");b.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){MessageBoxbox=newMessageBox(tmshell,SWT.OK);if("".equals(trainNum.getText())||"".equals(trainType.getText())||"".equals(starting.getText())||"".equals(startingTime.getText())||"".equals(terminal.getText())||"".equals(terminalTime.getText())||"".equals(iskongTiao.getText())||"".equals(price.getParent())||"".equals(middleStation.getText())||"".equals(yzNum.getText())||"".equals(rzNum.getText())||"".equals(ywNum.getText())||"".equals(rwNum.getText())){box.setMessage("pleaseinputtherightinformation");box.open();return;}DAOdao=newDAO();Stringsql="otrain(trainNum,trainType,starting1,startingTime,terminal,terminalTime,iskongTiao,price,"+"middleStation,yzNum,rzNum,ywNum,rwNum)values(""+trainNum.getText()+"",""+trainType.getText()+"",""+starting.getText()+"","+"""+startingTime.getText()+"",""+terminal.getText()+"",""+terminalTime.getText()+"",""+iskongTiao.getText()+"","+武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告"""+price.getText()+"",""+middleStation.getText()+"",""+yzNum.getText()+"",""+rzNum.getText()+"",""+ywNum.getText()+"",""+rwNum.getText()+"")";inti=dao.update(sql);}if(i>0){box.setMessage("add");}box.open();fresh();});Buttonb1=newButton(tmshell,SWT.LEFT);bsetText("quit");baddSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){tmshell.setVisible(false);}});tmshell.layout();tmshell.setSize(500,450);tmshell.open();while(!tmshell.isDisposed()){if(!display.readAndDispatch())display.sleep();}tmshell.dispose();}publicvoidfresh(){trainmanage.freshData();}}圖示為武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告修改列車功能是在UpdateTrain.java.類中實(shí)現(xiàn)的。代碼如下importorg.eclipse.swt.SWT;importorg.eclipse.swt.events.*;importorg.eclipse.swt.layout.*;importorg.eclipse.swt.widgets.*;importcom.huizhi.dao.DAO;importcom.huizhi.vo.Train;publicclassUpdateTrain{privateTraintrain;Displaydisplay=Display.getCurrent();Shellutrainshell=newShell(display);TrainManagetrainmanage=null;publicUpdateTrain(Traintrain,TrainManagetm){this.trainmanage=tm;this.train=train;GridLayoutgridlayout=newGridLayout();utrainshell.setText("modifytraininformation");gridlayout.numColumns=2;gridlayout.makeColumnsEqualWidth=true;utrainshell.setLayout(gridlayout);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告GridDatagd=newGridData(GridData.FILL_BOTH);Labelll=newLabel(utrainshell,SWT.LEFT);ll.setText("trainID");ll.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextnum=newText(utrainshell,SWT.NONE);num.setText(Integer.toString(train.getId()));num.setEnabled(false);num.setSize(50,60);num.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell=newLabel(utrainshell,SWT.LEFT);l.setText("TrainNum");l.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTexttrainNum=newText(utrainshell,SWT.NONE);trainNum.setText(train.getTrainNum());trainNum.setSize(50,60);trainNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell1=newLabel(utrainshell,SWT.LEFT);lsetText("TrainType");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTexttrainType=newText(utrainshell,SWT.LEFT);trainType.setText(train.getTrainType());trainType.setSize(30,40);trainType.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell2=newLabel(utrainshell,SWT.LEFT);lsetText("starting");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextstarting=newText(utrainshell,SWT.LEFT);starting.setText(train.getStarting());starting.setSize(30,40);starting.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell3=newLabel(utrainshell,SWT.LEFT);lsetText("startingTime");武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextstartingTime=newText(utrainshell,SWT.LEFT);startingTime.setText(train.getStartingTime());startingTime.setSize(30,40);startingTime.setLayoutData(gd);Labell4=newLabel(utrainshell,SWT.LEFT);lsetText("terminal");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextterminal=newText(utrainshell,SWT.LEFT);terminal.setText(train.getTerminal());terminal.setSize(30,40);terminal.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell5=newLabel(utrainshell,SWT.LEFT);lsetText("terminalTime");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextterminalTime=newText(utrainshell,SWT.LEFT);terminalTime.setText(train.getTerminalTime());terminalTime.setSize(30,40);terminalTime.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell6=newLabel(utrainshell,SWT.LEFT);lsetText("iskongtiao");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextiskongTiao=newText(utrainshell,SWT.LEFT);iskongTiao.setText(train.getIskongTiao());iskongTiao.setSize(30,40);iskongTiao.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell7=newLabel(utrainshell,SWT.LEFT);lsetText("price");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextprice=newText(utrainshell,SWT.LEFT);price.setText(Float.toString(train.getPrice()));price.setSize(30,40);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告price.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell8=newLabel(utrainshell,SWT.LEFT);lsetText("middleStation");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextmiddleStation=newText(utrainshell,SWT.LEFT);middleStation.setText(train.getMiddleStation());middleStation.setSize(30,40);middleStation.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell9=newLabel(utrainshell,SWT.LEFT);lsetText("yzNum");lsetLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextyzNum=newText(utrainshell,SWT.LEFT);yzNum.setText(Integer.toString(train.getYzNum()));yzNum.setSize(30,40);yzNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell10=newLabel(utrainshell,SWT.LEFT);l10.setText("rzNum");l10.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextrzNum=newText(utrainshell,SWT.LEFT);rzNum.setText(Integer.toString(train.getRzNum()));rzNum.setSize(30,40);rzNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell11=newLabel(utrainshell,SWT.LEFT);l1setText("ywNum");l1setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextywNum=newText(utrainshell,SWT.LEFT);ywNum.setText(Integer.toString(train.getYwNum()));ywNum.setSize(30,40);ywNum.setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);Labell12=newLabel(utrainshell,SWT.LEFT);武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告l1setText("rwNum");l1setLayoutData(gd);gd=newGridData(GridData.FILL_BOTH);finalTextrwNum=newText(utrainshell,SWT.LEFT);rwNum.setText(Integer.toString(train.getRwNum()));rwNum.setSize(30,40);rwNum.setLayoutData(gd);Buttonb=newButton(utrainshell,SWT.LEFT);b.setText("modify");b.addSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){MessageBoxbox=newMessageBox(utrainshell,SWT.OK);if("".equals(trainNum.getText())||"".equals(trainType.getText())||"".equals(starting.getText())||"".equals(startingTime.getText())||"".equals(terminal.getText())||"".equals(terminalTime.getText())||"".equals(iskongTiao.getText())||"".equals(price.getText())||"".equals(middleStation.getText())||"".equals(yzNum.getText())||"".equals(rzNum.getText())||"".equals(ywNum.getText())||"".equals(rwNum.getText())){box.setMessage("pleaseinputrightinformationthenmodify");box.open();return;}DAOdao=newDAO();Stringsql="updatetrainsettrainNum=""+trainNum.getText()+"",trainType=""+trainType.getText()+"",starting1=""+starting.getText()+"","+"startingTime=""+startingTime.getText()+"",terminal=""+terminal.getText()+"",terminalTime=""+terminalTime.getText()+"",iskongTiao=""+iskongTiao.getText()+"","+"price=""+price.getText()+"",middleStation=""+middleStation.getText()+"",yzNum=""+yzNum.getText()+"",rzNum=""+rzNum.getText()+"",ywNum=""+ywNum.getText()+"",rwNum=""+rwNum.getText()+""whereid=""+num.getText()+""";inti=dao.update(sql);if(i>0){武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告box.setMessage("succeed");box.open();fresh();}else{box.setMessage("failure");box.open();}}});Buttonb1=newButton(utrainshell,SWT.LEFT);bsetText("quit");baddSelectionListener(newSelectionAdapter(){publicvoidwidgetSelected(SelectionEvente){utrainshell.setVisible(false);}});utrainshell.layout();utrainshell.setSize(500,450);utrainshell.open();while(!utrainshell.isDisposed()){if(!display.readAndDispatch())display.sleep();}utrainshell.dispose();}publicvoidfresh(){trainmanage.freshData();}}車票管理主要包括對(duì)車票的增加,刪除和修改的操作。由TicketManagement.java實(shí)現(xiàn)。代碼類似上面的(具體看壓縮包)。其中的查詢列車表和售票表調(diào)用的DAO.java類中selectTicket()方法。圖示為武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告售票員管理是對(duì)售票員進(jìn)行增加、刪除和修改進(jìn)行操作。由UserMannage.java類來實(shí)現(xiàn)。代碼類似以上。在該類中調(diào)用了DAO.java類中g(shù)etAllUser()方法。圖示為武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告售票及退票模塊包括兩部分火車售票和退票。售票系統(tǒng)是xiaosTickect.java實(shí)現(xiàn)的。圖示如下退票是售票員根據(jù)用戶提供的車票信息在系統(tǒng)中進(jìn)行售票。主要是由TuiTicket.java來實(shí)現(xiàn)的。在該類中涉及到DAO.java類中的selectTrain()方法.圖示如下:列車及車票查詢系統(tǒng)主要功能包括兩部分查詢列車信息和查詢車票信息.有FindTrain.Java和FindTicket.java實(shí)現(xiàn).圖示如下武漢理工大學(xué)《軟件開發(fā)工具》論文報(bào)告4學(xué)習(xí)心得我是再?zèng)]有接觸eclipse之前就接觸了java,我自己都先用記事本編寫java程序,然后在doc下進(jìn)行編譯和運(yùn)行。后來安裝了ecplise這個(gè)集成環(huán)境,但是只把它當(dāng)成一個(gè)運(yùn)行java的集成環(huán)境。后來經(jīng)過開發(fā)工具的學(xué)習(xí)和相關(guān)書籍的查看,開始深入的理解了什么是ecplise。其實(shí)整個(gè)ecplise體系結(jié)構(gòu)就像一個(gè)大的拼圖,可以不斷地向
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣州衛(wèi)生職業(yè)技術(shù)學(xué)院《Web應(yīng)用開發(fā)》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣州鐵路職業(yè)技術(shù)學(xué)院《車輛電器與電子技術(shù)實(shí)驗(yàn)》2023-2024學(xué)年第一學(xué)期期末試卷
- 2025年陜西省安全員C證考試(專職安全員)題庫及答案
- 2025甘肅省安全員《A證》考試題庫
- 2025安徽省安全員《A證》考試題庫及答案
- 揚(yáng)州慢公開課課件2
- 《菱形的判定方法》課件
- 安全風(fēng)險(xiǎn)管控課件
- 《管理學(xué)院簡介》課件
- 棉鞋里的陽光課件
- 水利工程全生命周期管理-洞察分析
- 工程制圖復(fù)習(xí)題(帶答案)
- 風(fēng)管采購安裝合同范例
- GB/T 21099.2-2024企業(yè)系統(tǒng)中的設(shè)備和集成過程控制用功能塊(FB)和電子設(shè)備描述語言(EDDL)第2部分:FB概念規(guī)范
- JJF(陜) 049-2021 變壓器交流阻抗參數(shù)測試儀校準(zhǔn)規(guī)范
- 詞語理解-2025年中考語文專項(xiàng)復(fù)習(xí)(遼寧專用)(原卷版)
- 娛樂場所突發(fā)事件應(yīng)急措施及疏散預(yù)案(三篇)
- 八大危險(xiǎn)作業(yè)安全培訓(xùn)考核試卷
- 2024年黑龍江農(nóng)業(yè)工程職業(yè)學(xué)院單招職業(yè)適應(yīng)性測試題庫
- 老年焦慮癥的護(hù)理
- 企業(yè)法律顧問詳細(xì)流程
評(píng)論
0/150
提交評(píng)論