畢業(yè)設(shè)計(jì)方案用戶管理系統(tǒng)的設(shè)計(jì)方案與開發(fā)_第1頁(yè)
畢業(yè)設(shè)計(jì)方案用戶管理系統(tǒng)的設(shè)計(jì)方案與開發(fā)_第2頁(yè)
畢業(yè)設(shè)計(jì)方案用戶管理系統(tǒng)的設(shè)計(jì)方案與開發(fā)_第3頁(yè)
畢業(yè)設(shè)計(jì)方案用戶管理系統(tǒng)的設(shè)計(jì)方案與開發(fā)_第4頁(yè)
畢業(yè)設(shè)計(jì)方案用戶管理系統(tǒng)的設(shè)計(jì)方案與開發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩13頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途XXXX大學(xué)XX學(xué)院畢業(yè)設(shè)計(jì)報(bào)告書課程名稱:軟件開發(fā)畢業(yè)設(shè)計(jì)題目:用戶管理系統(tǒng)的設(shè)計(jì)與開發(fā)系名:XXXX系專業(yè)班級(jí):XXXX專業(yè)XXXX班姓名:學(xué)號(hào):指導(dǎo)教師:年月日課程設(shè)計(jì)任務(wù)書學(xué)生姓名:專業(yè)班級(jí):指導(dǎo)教師:工作單位:設(shè)計(jì)題目:用戶管理系統(tǒng)的設(shè)計(jì)與開發(fā)初始條件:了解軟件工程基本知識(shí),掌握J(rèn)AVA編程基礎(chǔ),了解基本的軟件開發(fā)工具。要求完成的主要任務(wù):個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途功能:用戶可以注冊(cè),然后登陸,有錯(cuò)誤提示等。登陸成功以后,會(huì)列出所有用戶的記錄信息。登陸用戶可對(duì)記錄進(jìn)行增加、修改、刪除、查詢等操作。技術(shù):jsp+servlet+tomcat6.0+mysql設(shè)計(jì)報(bào)告撰寫格式要求:一、課程設(shè)計(jì)說明書〈或報(bào)告書)正文內(nèi)容【設(shè)計(jì)題目】用戶管理系統(tǒng)的設(shè)計(jì)與開發(fā)【開發(fā)環(huán)境】windowsXP【開發(fā)工具】MyEclipse7.0,tomcat6.0,MySQL【完成時(shí)間】【設(shè)計(jì)思想】描述確定設(shè)計(jì)內(nèi)容后,自己如何思考的、確定設(shè)計(jì)的方案是什么?打算如何實(shí)現(xiàn)【設(shè)計(jì)過程及設(shè)計(jì)步驟】將設(shè)計(jì)的步驟及實(shí)施過程分步總結(jié)寫出來【測(cè)試運(yùn)行】描述對(duì)于自己給定的數(shù)據(jù),運(yùn)行后的結(jié)果如何?【評(píng)價(jià)與修訂】對(duì)自己設(shè)計(jì)內(nèi)容及結(jié)果進(jìn)行全面評(píng)價(jià)描述,包括:創(chuàng)造性、獨(dú)特性、滿意程度及不足處,并提出改進(jìn)意見;【設(shè)計(jì)體會(huì)】總結(jié)本次實(shí)訓(xùn)經(jīng)驗(yàn)、教訓(xùn)、收獲、體會(huì),為今后的實(shí)踐環(huán)節(jié)學(xué)習(xí)打好基礎(chǔ)【參考文獻(xiàn)】羅列在設(shè)計(jì)過程中查閱的文獻(xiàn)名稱時(shí)間安排:目錄第1章需求分析11.1設(shè)計(jì)題目12設(shè)計(jì)要求13設(shè)計(jì)任務(wù)11.4開發(fā)環(huán)境與工具2第2章概要設(shè)計(jì)21設(shè)計(jì)思想22系統(tǒng)功能設(shè)計(jì)2第3章詳細(xì)設(shè)計(jì)3第4章設(shè)計(jì)運(yùn)行結(jié)果與分析114.1運(yùn)行結(jié)果11個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途4.1.1用戶登錄界面114.1.2添加用戶124.1.3修改用戶信息124.1.4刪除用戶134.1.5查詢用戶134.2結(jié)果分析14第5章設(shè)計(jì)體會(huì)與小結(jié)15參考文獻(xiàn)15附錄 14第1章需求分析1.1設(shè)計(jì)題目用戶管理系統(tǒng)的設(shè)計(jì)與開發(fā)。1.2設(shè)計(jì)要求(1>T解軟件工程基本知識(shí)。(2>掌握J(rèn)AVA編程基礎(chǔ)。(3>T解基本的軟件開發(fā)工具。1.3設(shè)計(jì)任務(wù)(1>設(shè)計(jì)一個(gè)用戶管理系統(tǒng),用戶能夠注冊(cè)、登陸,登陸成功后,會(huì)列出所有用戶的記錄信息。<2)登錄用戶能夠?qū)τ涗涍M(jìn)行增加、刪除、修改,查詢操作。1.4開發(fā)環(huán)境工具WindowsXP系統(tǒng),MyEclipse7.0,tomcat6.0,MySQL等開發(fā)工具。第2章概要設(shè)計(jì)2.1設(shè)計(jì)思想本次課程設(shè)計(jì)通過使用MYSQL,Myeclisp7.0,Tomcat6.0等軟件,首先設(shè)計(jì)一個(gè)用戶管理系統(tǒng),以達(dá)到用戶能夠注冊(cè)、登陸,登陸成功后,會(huì)列出所有用戶的記錄信息的目的最后能實(shí)現(xiàn)登錄用戶能夠?qū)τ涗涍M(jìn)行增加、刪除、修改,查詢操作等工作。首先利用Mvsql軟件創(chuàng)建數(shù)據(jù)庫(kù),命名為db.user;然后,在db_user中創(chuàng)建表,命名為tb_user,在表中創(chuàng)建4個(gè)字段:用戶編號(hào)<userld),用戶姓名<userName),用戶密碼<userPass),用戶年齡

個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途<userAge),并且將用戶編號(hào)設(shè)置為主鍵。進(jìn)行數(shù)據(jù)庫(kù)連接,最后在Myeclisp7.0工具中去運(yùn)行編程結(jié)果以達(dá)到用戶登錄進(jìn)行增加、刪除、修改,查詢操作。2.2系統(tǒng)功能設(shè)計(jì)2.2系統(tǒng)功能圖第3章詳細(xì)設(shè)計(jì)3.1創(chuàng)建數(shù)據(jù)庫(kù),在數(shù)據(jù)庫(kù)中建立用戶信息表:Createdatabasedb_userUsedb_userkey,userNameCreatetabletb_user<userldintnotnullprimarykey,userNamevarchar(20>,userPassvarchar(50>,userAgeint)mysql>createtabletb_user-> userld intnotnullauto_increnent,一〉 userNane uarchar<S>,-> userPass uarchar<20>,-> userAge int-> ppinarykey(userid)->>;QueryOK,0rowsaffected<0.28sec>mysql>inser-tintotb_user<uset'Name,usei*Pass,userAge>values(^admin0,°123456'p,21>;QueryOK,1rowaffected<0.12sec>

個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途2創(chuàng)建數(shù)據(jù)庫(kù)連接:importimportimportpublicjava.sql.Connection。importimportimportpublicjava.sql.DriverManagerojava.sql.SQLException。classDBConnection{privateprivateprivateprivatestaticstaticstaticstaticStringdriverName二"com.mysq1?jdbc.Driver"。privateprivateprivateprivatestaticstaticstaticstaticStringuserNameoStringuserPassoStringurl二"jdbc:mvsql://localhost:3306/db_user/z。publicstaticConnectiongetConnection(String_url,String_userName,String_userPass>{userName二_user\ameouserPass二userPass。url二_urloConnectionconn二nullotry{Class?for'ame(dtiverMame〉。conn二DriverManager.getConnectiouserName,userPass>o}catch(ClassNotFoundExceptione>{//TODOAuto-generatedcatchblocke.printStackTrace(>。}catch(SQLExceptione>{//TODOAuto-generatedcatchblocke.printStackTrace(>。}returnconn。}publicstaticConnectiongetConnection(>{returngetConnection(url,〃root〃,"123456"〉。}publicstaticvoidcloseConnection(Connectionconn>{if(conn!=null>{try{conn.close(>。}catch(SQLExceptione>{//TODOAuto-generatedcatchblocke.printStackTrace(>o個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途}3用戶主要功能的實(shí)現(xiàn):importjava.sql.Connection。importjava?sql.PreparedStatement。importjava.sql.ResuItSet。importjava?sql.SQLException。importjava,sqLStatement。importjava.util.ArrayList。importcom.softeem.dto.UserDTOopublicclassUserDAO{privateConnectionconn。privateStatementst。privateResultSetrsoprivateStringsqlopublicvoidadd(UserDTOuser>{conn二DBConnection.getConnection(>otry{st二conn.createStatement(>。sql二"insettintotb_user(userName,userPass,userAge>values('"+user.getUserName(>+"、J"+user,getUserPass(>+ "+user,getUserAge(>+intm二st.executeUpdate(sql>oif(m!=0>{System,out.println(z/添加成功〃〉。}DBConnection.closeConnection(conn〉。}catch(SQLExceptione>{//TODOAuto^generatedcatchblocke.printStackTrace(>。}}publicvoidupdate(UserDTOuser>{conn二DBConnection.getConnection(〉。try{st二conn.createStatement(>。sql二/zupdatetb_usersetuserName二'"+user.getUserName(>+userPass二'〃+user.getUserPass(>+,userAge=個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途+user?getUserAge(>+whereuserid二'"+

user,getUserldO〃十 ointm二st.executeUpdate(sql>oif(m!二0>{System,out.println(z/修改成功〃〉。}}catch(SQLExceptione>{//TODOAuto^generatedcatchblocke.printStackTrace(>。}}publicvoiddelete(intn>{conn二DBConnection.getConnection(>otry{st二conn.createStatement(>。sql二"deletefromtb_userwhereuserid二'〃+n+ :intm二st.executeUpdate(sql>。if(m!二0>{System,out.println(/z刪除成功〃〉。}}catch(SQLExceptione>{//TODOAuto^generatedcatchblocke.printStackTrace(>。}}publicArrayList〈UserDT0>selectAll(>{ArrayList〈UserDT0>list二newArrayList〈UserDT0>(>oconn二DBConnection.getConnection(>otry{st二conn.createStatement(>。sql二"select*fromtb_user"。rs二st?executeQuery(sql>owhile(rs.next(>〉{UserDTOuser=newUserDT0(>ouser,setUserld(rs?getlnt("userid"〉〉。user.setUserName(rs?getSt:ring(〃userName〃>〉。user.setUserPass(rs.getSt:ring("userPass"〉〉。user.setUserAge(rs?getlnt("userAge〃>>。list.add(user>o}}catch(SQLExceptione>{個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途e.printStackTrace(>o}:returnlist。}publicUserDTOselectById(intn>{UserDTOuser=newUserDTO(>oconn二DBConnection.getConnection(〉。try{st二conn.createStatement(>。sql二"select*fromtb_userwhereuserid二'〃+n+〃ors二st.executeQuery(sql>owhile(rs.next(>〉{user.setUserld(rs.getlnt("userlcT〉〉。user?setUserName(rs.getString(,zuserName/z>>ouser.setUserPass(rs.getString(〃userPass">〉。user?setUserAge(rs?getlnt(“userAge〃>>。}}catch(SQLExceptione>{e.printStackTrace(>o}:returnuser。}publicArrayList〈UserDT0>selectByProperty(Stringproperty,Stringvalue>{ArrayList〈UserDT0>list二newArrayList〈UserDTO(>oconn二DBConnection.getConnection(〉。PreparedStatementpst二null。try{if(property.equals(〃">|property二二null|value.equals("">value==null>{sql二"select*fromtb_user"。pst二conn.preparestatement(sql〉。}else{sql二"select*fromtb_userwhere"+property+z,like?〃。pst二conn.preparestatement(sql〉。pst.setString(l, +value+"%">。}System.out.println(sql>。rs二pst?executeQueryO。個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途while(rs.next(>〉{UserDTOuser=newUserDTO(>ouser,setUserid(rs?getlnt("userid"〉〉。user.setUserName(rs?getString(z/userNamez,>>ouser.setUserPass(rs.getSt:ring("userPass"〉〉。user.setUserAge(rs?getlnt(〃userAge">>。list.add(user>o}}catch(SQLExceptione>{e.printStackTrace(>。}:returnlist。}publicbooleancheckLoginuser(UserDTOuser>{booleanflag二false。conn二DBConnection.getConnection(>otry{st二conn.createstatement(〉。//sql二"select*fromtb_userwhereuserName二'"+//user,getUserName(>//+anduserPass二'〃+user,getUserPassO+//查詢滿足userName和userPass條件的記錄sql二"selectcount(*>fromtb_userwhereuserName二'〃+user?getUserName(>+anduserPass二'"+user?getUserPass(>+//sql二"selectuserPassfromtb_userwhereuserName二'z,+user?getUserName(>+z/,//執(zhí)行sql語句rs二st?executeQuery(sql>o//對(duì)結(jié)果集進(jìn)行遍歷如果查詢的記錄條數(shù)大于o則說明數(shù)據(jù)庫(kù)存在該條記錄此時(shí)改變flag的值while(rs.next(>〉{if(rs.getlnt(1>>0>{flag二trueo}}}catch(SQLExceptione>{e.printStackTrace(>。}returnfIago個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途3.4測(cè)試過程:publicclassUserDAOTest{@TestpublicvoidtestAdd(>{UserDTOuser=newUserDT0(>ouser,setUsetName("admin"〉。user.setUsetPass("123456"〉。user.setUserAge(43>oUserDAOdao=newUserDAO(>odao.add(user>o}?TestpublicvoidtestUpdate(〉{UserDTOuser=newUserDTO(>ouser.setUserld(l>ouser,setUserName("test"〉。user.setUsetPass("1111111"〉。user.setUserAge(lll>oUserDAOdao=newUserDAO(>odao.update(user>。}@Testpublicvoiddelete(〉{UserDAOdao=newUserDAO(>odao.delete(1〉。}?TestpublicvoidtestSelectAll(〉{UserDAOdao=newUserDAO(>oArrayLisUserDT0>list二dao.selectAll(>。for(inti二0。i〈list.size(>。i++>{System.out.println(list.get(i>.getUserldO++list.get(i>.getUserName(>+"\t"+list.get(i>.getUserPass(>+"\t"+list,get(i>.getUserAge(>〉。}}@TestpublicvoidtestSelectById(>{UserDAOdao=newUserDAO(>o個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途UserDTOuser=dao.selectById(6>。System.out.printIn(user.toString(>>o}?TestpublicvoidtestCheckLoginuser(>{UserDTOuser=newUserDTO(>ouser,setUserName("Lucy"〉。user.setUserPass("123456"〉。UserDAOdao=newUserDA0(>obooleanflag=dao.checkLoginuser(user>oSystem.out.println(flag〉。}}第4章設(shè)計(jì)運(yùn)行結(jié)果與分析4.1運(yùn)行結(jié)果4.1.1用戶登錄界面運(yùn)行l(wèi)ogin,jsp得到的結(jié)果如下:個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途個(gè)人收集整理資料, 僅供交流學(xué)習(xí), 勿作商業(yè)用途用戶名:用戶密碼:I圖3.1.1用戶登陸界面4.1.2添加用戶點(diǎn)擊頁(yè)面的增加選項(xiàng),彈出如下窗口,添加新用戶,用戶名為admin,設(shè)置密碼,用戶年齡。設(shè)置完成后,點(diǎn)擊增加按鈕。添加用戶成功后,顯示頁(yè)面如下:用戶名:I用戶密碼:用戶年齡;I圖3.1.2增加用戶4.1.3修改用戶信息點(diǎn)擊頁(yè)面的“編輯“按鈕,修改用戶名為”admin“的用戶信息,將其用戶密碼修改為123456c修改頁(yè)面如下圖用戶名:|admin用戶密碼:|123466圖3.1.3修改用戶信息修改成功后,頁(yè)面顯示如下圖用戶admin查詢|I用戶ID二123456用戶ID用戶姓名用戶名:|admin用戶密碼:|123466圖3.1.3修改用戶信息修改成功后,頁(yè)面顯示如下圖用戶admin查詢|I用戶ID二123456用戶ID用戶姓名用戶密碼 用戶年齡 操作1 adtniii23 編輯刪除圖3.1.3修改后用戶信息4.1.4刪除用戶點(diǎn)擊“刪除”按鈕,刪除用戶姓名為,即刪除。4.1.5查詢用戶查詢某用戶信息,查詢結(jié)果如圖:圖3-7用戶信息

圖3.1.5查詢結(jié)果4.2結(jié)果分析本次課程設(shè)計(jì)基本達(dá)到了任務(wù)要求,用戶在登錄界面登錄后,經(jīng)過運(yùn)行和調(diào)試能夠成功的注冊(cè)、登陸,登陸成功后,會(huì)列出所有用戶的記錄信息。最后登陸對(duì)用戶信息進(jìn)行添加,刪除,修改以及最后進(jìn)行查詢,都達(dá)到了預(yù)期的結(jié)果,如3.1中設(shè)計(jì)結(jié)果的運(yùn)行和所得出的視圖。同時(shí)設(shè)計(jì)過程中依然存在許多不足,主要是對(duì)開發(fā)工具的不能熟練掌握和功能的運(yùn)用,從而導(dǎo)致用戶界面不夠好,編程和運(yùn)行時(shí)出現(xiàn)了些問題。用jsP開發(fā)和java語言來進(jìn)行編程以及對(duì)開發(fā)工具M(jìn)yec1ipse的使用得到了添加,刪除,修改以及查詢最終得到了用戶界面基本符合課程設(shè)計(jì)的要求。第5章設(shè)計(jì)體會(huì)與小結(jié)通過近兩個(gè)星期的軟件開發(fā)工具的課程設(shè)計(jì),讓我學(xué)到了很

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論