2022年JAVAEE大作業(yè)報告整理版_第1頁
2022年JAVAEE大作業(yè)報告整理版_第2頁
2022年JAVAEE大作業(yè)報告整理版_第3頁
2022年JAVAEE大作業(yè)報告整理版_第4頁
2022年JAVAEE大作業(yè)報告整理版_第5頁
已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

課程報告題目:人物管理系統(tǒng)專業(yè)計算機科學(xué)與技術(shù)班級計科1505學(xué)號姓名葛棟柱指引教師母莉莉6月9日1設(shè)計目的1.1基本功能:運用JavaWebMVC多層架構(gòu)技術(shù)設(shè)計和開發(fā)一種人物管理系統(tǒng),實現(xiàn)注冊、登錄以及人物信息的瀏覽、查詢、添加、更新、刪除等基本功能。1.2設(shè)計意義:1.通過開發(fā)具體系統(tǒng),理解并熟悉Java

2.掌握網(wǎng)絡(luò)編程的一般模式,使用Java+javabean+servlet編寫具體可用的系統(tǒng)

3.通過開發(fā)學(xué)生信息管理系統(tǒng),充足體會MVC模式的長處及在網(wǎng)絡(luò)開發(fā)的流行性,培養(yǎng)運用此模式解決實際問題的能力

4.通過設(shè)計系統(tǒng),在開發(fā)過程中遇到問題解決問題的過程中,逐漸提高自己的開發(fā)能力2開發(fā)環(huán)境和開發(fā)技術(shù)2.1開發(fā)環(huán)境:安裝eclipse和SQL數(shù)據(jù)庫以的計算機。2.2開發(fā)技術(shù):學(xué)生信息管理系統(tǒng)以java、html的語言作為前臺的開發(fā)環(huán)境,服務(wù)器選用tomcat7(jdk8),后臺數(shù)據(jù)庫選用MicrosoftSQLServer,實現(xiàn)了注冊,登錄,學(xué)生管理等。采用了Java的有關(guān)知識,例如:動態(tài)網(wǎng)頁基本知識、JSP基本、JSP指令和腳本元素、JDBC、JSP解決客戶端祈求、會話和訪問控制等。3需求分析人物信息管理系統(tǒng)是一種地球不可缺少的部分,它的內(nèi)容對于個人的決策者和管理者來說都至關(guān)重要,因此人物信息管理系統(tǒng)應(yīng)當可覺得顧客提供充足的信息和快捷的查詢手段。隨著科學(xué)技術(shù)的不斷提高,計算機科學(xué)日漸成熟,其強大的功能已為人們深刻結(jié)識,它已進入人類社會的各個領(lǐng)域并發(fā)揮著越來越重要的作用。作為計算機應(yīng)用的一部分,使用計算機對選課信息進行管理,有著手工管理所無法比擬的長處。這些長處可以極大地提高人事勞資管理的效率,也是公司的科學(xué)化、正規(guī)化管理,與世界接軌的重要條件。因此,開發(fā)這樣一套軟件成為很有必要的事情,在下面的各章中我們將以開發(fā)一套學(xué)生選課系統(tǒng)為例,談?wù)勂溟_發(fā)過程和所波及到的問題及解決措施。本實驗實現(xiàn)的學(xué)生信息管理管理系統(tǒng)重要涉及如下功能:1.完畢數(shù)據(jù)的錄入和修改,并提交數(shù)據(jù)庫保存。其中的數(shù)據(jù)涉及:人物姓名、性別、能力以及基本信息等;2.設(shè)計實現(xiàn)學(xué)生信息查詢,更新、刪除、添加,以及新顧客注冊等功能。4總體設(shè)計4.1功能設(shè)計學(xué)生成績管理系統(tǒng)重要提供以便高效的管理功能以及網(wǎng)上的信息查閱平臺,學(xué)生可以通過該系統(tǒng)查閱有關(guān)信息,管理員可以管理所有信息。該系統(tǒng)?褂?Java編程語言,MicrosoftSQL數(shù)據(jù)庫以及ApacheTomcat7(jdk8)作為開發(fā)平臺,運用軟件工程思想措施,對系統(tǒng)進行迅速有效開發(fā),對于本系統(tǒng),我們需要實現(xiàn)如下某些基本功能:(1)學(xué)生查詢功能:為了以便學(xué)生查找成績等信息,將所有信息按照需要進行分類。這樣學(xué)生就能很以便的找到自己需要的信息。(2)添加功能:管理員可以通過填寫表格的形式輸入學(xué)生成績等有關(guān)信息。系統(tǒng)可以自動避免反復(fù)信息。(3)修改功能:管理員可以對數(shù)據(jù)庫中的信息進行修改。系統(tǒng)可以通過管理員給出的條件查找出所要修改的信息,對修改后的信息進行保存,并自動?檎沂欠袷侵馗蔥畔ⅰ?(4)刪除功能:管理員可以對數(shù)據(jù)進行刪除操作。系統(tǒng)可以通過管理員給出的條件查找出要刪除的信息,并提示與否擬定刪除,如果擬定刪除,則把?喙匭畔⒋郵菘庵猩境簟?4.2系統(tǒng)總體構(gòu)造按照系統(tǒng)的需求規(guī)定,可以把系統(tǒng)功能進行分解,以便按照每個功能模塊的規(guī)定分別實現(xiàn)相應(yīng)的功能。系統(tǒng)總體構(gòu)造如下圖1-1所示:圖1-1系統(tǒng)構(gòu)造圖顧客可以修改部分人物信息,像學(xué)號、班級、專業(yè)這樣的信息人物都能作修改;顧客還可以刪除、添加人物信息。4.3數(shù)據(jù)庫設(shè)計數(shù)據(jù)庫采用了Microsoft推出的SQLSERVER數(shù)據(jù)庫,這是微軟集成到Office中的一種桌面數(shù)據(jù)庫,可以迅速以便的和Office的其她套件綜合使用。由于SQL具有明顯的簡易性和有效性,大量的桌面數(shù)據(jù)庫系統(tǒng)都采用SQL作為后臺數(shù)據(jù)庫。Microsoft的數(shù)據(jù)庫服務(wù)器軟件SQLServer,此時,程序只需要簡樸的修改一下鏈接(ADO的數(shù)據(jù)源)就可以,這樣,為程序的平滑擴展提供了非常有力的條件。本系統(tǒng)中所波及到的重要實體共有2個數(shù)據(jù)表user_table表和Student_table表,各表的物理構(gòu)造如下:具體設(shè)計與實現(xiàn)5.1主頁面:里面有所有功能,增信改查個人管理<bodystyle="background:url(beijing.jpg);background-repeat:repeat-x"><jsp:useBeanid="bao"class="lianxi.PingBaoFrame"/><center><pstyle="font-size:100px;padding:0px;border:0px;margin:0px;"><b>Logo</b></p></center><h4style="text-align:right"><ahref="HomePage.jsp">主頁</a> <ahref="Denglu.html"class="top">登陸</a> <ahref="Register.jsp"class="top">注冊</a> <ahref="#"class="top">理解更多</a> </h4><tablewidth=100%><!--添加刪除屬性--><tralign="center"style="border-radius:50px;padding:0px;border:0px;marin:0px;box-shadow:0px8px16px0pxrgba(0,0,0,2.2);background-color:green"><td><ahref="TianJiaS.jsp">添加屬性</a></td><td><ahref="Delete.jsp">刪除屬性</a></td><td><ahref="ShangC.html">文獻上傳</a></td><td><ahref="Xugai3.jsp">修改信息</a></td></tr></table><tablewidth=100%><tr><tdcolspan="2"><center><jsp:includepage="Search.jsp"/></center></td></tr><tr><!--個人主頁和表五個--><tdwidth="30%"align="right"><jsp:includepage="personage.jsp"/></td><tdwidth=100%align="center"><h4style="border-radius:10px;width:30%;padding:0px;border:0px;margin:0px;box-shadow:0px8px16px0pxrgba(0,0,0,2.2);color:red;background-color:green">前五個最新的</h4><jsp:includepage="UpDate.jsp"/></td></tr><tr><!--表中前十個,滾動顯示--><tdcolspan="2"align="center"><marqueebehavior=alternate><jsp:includepage="UpDate2.jsp"/></td></marquee></tr><tr><tdcolspan="2"align="center"><marqueewidth=200px>版權(quán)所有,版權(quán)所有,版權(quán)所有</marquee>5.2.1登錄,封裝顧客信息,在數(shù)據(jù)庫中查詢//顧客名檢測,封裝publicclassDengluBean{ privateStringname=null; privateStringpass=null; publicDengluBean(){ } publicbooleanchack(Stringuser,Stringpass){ booleank=false; Connectionconn=null; Statementstmt=null; ResultSetrs=null; StringDriverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; StringdbUrl="jdbc:sqlserver://688H79BVT1N73DV\\\\SQLEXPRESS:1433;name=DaDa"; StringdbUser="nihao"; StringdbPass="654321"; try{ Class.forName(DriverName); conn=DriverManager.getConnection(dbUrl,dbUser,dbPass); }catch(Exceptione){ //TODO:handleexception } try{ stmt=conn.createStatement(); rs=stmt.executeQuery("SELECTa_name,a_passFROMshopS.dbo.Adminorderbya_namedesc"); while(rs.next()){ Stringuser1=rs.getString("a_name"); Stringpass1=rs.getString("a_pass"); if(user.equals(user1)&&pass.equals(pass1)){ k=true; } } }catch(Exceptione){ //TODO:handleexception } try{ rs.close(); stmt.close(); conn.close(); }catch(Exceptione){ //TODO:handleexception } returnk; }5.2.1登錄頁面html:樣式都是同樣的,陰影,居中,顏色,背景<bodystyle="background:url(beijing.jpg);background-repeat:repeat-x"><formaction="DengluBean.jsp"method="post"><tableborder="3"><tr><td>顧客名:<inputtype="text"name="user"value="zhangsan"></td></tr><tr><td>密碼:<inputtype="text"name="pass"value="lisi"></td></tr><tr><td><inputtype="submit"value="擬定"></td><td><inputtype="reset"value="不擬定"></td></tr></table></form> <ahref="Register.jsp">點擊注冊</a></body>5.2.2登錄,一種寫頁面注冊,轉(zhuǎn)到另一種jsp頁面進行判斷</head> <jsp:useBeanid="DL"scope="page"class="jsp.dzu.logo.DengluBean"/><% Stringuser=request.getParameter("user"); Stringpass=request.getParameter("pass"); if(DL.chack(user,pass)){ out.println("<h2>3秒后轉(zhuǎn)到主頁面</h2>"); response.setHeader("Refresh","3;URL=HomePage.jsp"); }else{%> <h2>密碼或者顧客有問題</h2><br/> <ahref="Denglu.html">點擊返回</a> <%}%></body>5.3.1注冊頁面:讀入數(shù)據(jù),加入數(shù)據(jù)庫<title>注冊</title><formaction="RegisterZ.jsp"method="post">名字:<inputtype="text"name="user"><br>密碼:<inputtype="text"name="pass"><br><inputtype="submit"value="OK"><inputtype="reset"value="NO">5.3.2注冊jsp;<title>注冊,加入數(shù)據(jù)表</title> 正在注冊,請稍后。。。。。。 <!--要編碼轉(zhuǎn)化一下,先連接,在轉(zhuǎn)換-->《連接數(shù)據(jù)庫》。 Stringa_name=Bytes(request.getParameter("user")); Stringa_pass=Bytes(request.getParameter("pass")); stmt=conn.createStatement(); if(stmt.executeUpdate("INSERTINTOshopS.dbo.AdminVALUES('"+a_name+"','"+a_pass+"')")!=0){ out.print("?]冊成功,五秒后轉(zhuǎn)到登錄頁面"); response.setHeader("Refresh","3;URL=HomePage.jsp"); }else{ out.print("?]冊失敗"); %><br> <ahref="Registe.jsp">點擊繼續(xù)注冊</a>5.4.1搜索頁面,jsp執(zhí)行sql語句,執(zhí)行搜索語句即可,在rs.next()查看<title>這是搜索數(shù)據(jù)庫頁面1</title></head><formname="form1"action="Search2.jsp"method="post"><tablewidth=80%><tr><tdclass="search">查詢項目</td><tdclass="search"><selectname="item"><optionvalue="">請選擇</option><optionvalue="p_name">姓名</option><optionvalue="p_gender">性別</option><optionvalue="p_family">家族</option></select></td><tdclass="search">查詢內(nèi)容</td><tdclass="search"><inputname="content"></td><tdclass="search"><inputtype="submit"value="查詢"></td><scripttype="text/javascript">functioncheck(){ if(form1.content.value==""){ alert("請輸入查詢內(nèi)容!"); returnfalse;}}</script>5.4.2搜索頁面的顯示頁面,分頁,上下頁和跳轉(zhuǎn)<center> <jsp:includepage="Search.jsp"/></center><ahref="HomePage.jsp"><pstyle="text-align:center;box-shadow:0px8px16px0pxrgba(0,0,0,2.2);color:red;background-color:green">請點擊我回到主頁面</p></a> <%@includefile="Coding.jsp"%>stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); StringstrItem=request.getParameter("item"); StringstrContent=request.getParameter("content"); StringstrSql=""; if(strItem==null||strItem==""){ strSql="SELECTp_name,p_gerder,p_shuxing,p_skill,p_familyFROMshopS.dbo.Peoplelist"; }else{ strSql="SELECTp_name,p_gerder,p_shuxing,p_skill,p_familyFROMshopS.dbo.Peoplelist"; } rs=stmt.executeQuery(strSql); } catch(Exceptione){ }%> <tablewidth=100%> <tralign="center"> <tdclass="Search2">姓名</td> <tdclass="Search2">性別</td> <tdclass="Search2">屬性</td> <tdclass="Search2">能力</td> <tdclass="Search2">家族</td> </tr> <% Stringstr=(String)request.getParameter("page"); if(str==null){ str="0"; } intpagesize=2; rs.last();//在上邊,空指針異常,是rs自身獲取的那段代碼有問題 intpageAll=rs.getRow();//錯誤為二 intpagemax=0; pagemax=(pageAll%pagesize==0)?(pageAll/pagesize):(pageAll/pagesize+1); intpageNow=Integer.parseInt(str); if(pageNow<1){ pageNow=1; }else{ if(pageNow>pagemax){ pageNow=pagemax; } } rs.absolute((pageNow-1)*pagesize+1);//錯誤三 for(inti=0;i<pagesize;i++){ %> <tralign="center"> <tdclass="Search2"><%=rs.getString("p_name")%></td> <tdclass="Search2"><%=rs.getString("p_gerder")%></td> <tdclass="Search2"><%=rs.getString("p_shuxing")%></td> <tdclass="Search2"><%=rs.getString("p_skill")%></td> <tdclass="Search2"><%=rs.getString("p_family")%></td> </tr> <% try{ if(!rs.next()){ break; } }catch(Exceptione){ } } %> </table> <pstyle=""> <font>目前頁數(shù):[<%=pageNow%>/<%=pagemax%>] 跳轉(zhuǎn)到:<input type="text"name="page"><inputtype="submit"value="跳轉(zhuǎn)"> <!--這個page很重要,它的提取在本頁面的前邊,也就是說request的提取方式是掃描真?zhèn)€page的,同頁面不分先后--> <% if(pageNow>1){ %> <ahref="Search2.jsp?page=1">第一頁</a><ahref="Search2.jsp?page=<%=pageNow-1%>">上一頁</a><% } if(pageNow<pagemax){%><ahref="Search2.jsp?page=<%=pageNow+1%>">下一頁</a><% } %>5.5.1添加,也是sql語句,和刪除同樣,,,<title>添加</title><formaction="TianJiaS2.jsp"method="post"><center>請?zhí)砑?lt;br><table>姓名:<inputtype="text"name="p_name"><br/>性別:<inputtype="text"name="p_gerder"><br>屬性:<inputtype="text"name="p_shuxing"><br>能力:<inputtype="text"name="p_skill"><br>家族:<inputtype="text"name="p_family"><br><inputtype="submit"value="OK"><inputtype="reset"value="NO">5.5.2添加,22<title>添加,加入數(shù)據(jù)表</title> 正在添加,請稍后。。。。。。 <!--要編碼轉(zhuǎn)化一下,先連接,在轉(zhuǎn)換--> try{ Class.forName(DriverName); conn=DriverManager.getConnection(dbUrl,dbUser,dbPass); Stringp_name=Bytes(request.getParameter("p_name")); Stringp_gerder=Bytes(request.getParameter("p_gerder")); Stringp_shuxing=Bytes(request.getParameter("p_shuxing")); Stringp_skill=Bytes(request.getParameter("p_skill")); Stringp_family=Bytes(request.getParameter("p_family")); stmt=conn.createStatement(); if(stmt.executeUpdate("INSERTINTOshopS.dbo.peoplelistVALUES('"+p_name+"','"+p_gerder+"','"+p_shuxing+"','"+p_skill+"','"+p_family+"')")!=0){ out.print("添加成功,2秒后轉(zhuǎn)到登錄頁面"); response.setHeader("Refresh","2;URL=HomePage.jsp"); }else{ out.print("添加失敗"); %><br> <ahref="Registe.jsp">點擊繼續(xù)注冊</a>5.6.1更新,更新UPDATE,也是一種語句的事,<title>更新</title> StringstrSql="SELECTTOP5p_name,p_gerder,p_shuxing,p_skill,p_familyFROMshopS.dbo.Peoplelistorderbyp_namedesc"; stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=stmt.executeQuery(strSql); %> <tr><%while(rs.next()){%>姓名:<%=rs.getString("p_name")%><br><br>性別:<buttononclick="this.innerHTML='你好'"type="botton"><%=rs.getString("p_gerder")%></button><br><br>屬性:<%=rs.getString("p_shuxing")%><br><br>能力:<%=rs.getString("p_skill")%><br><br>家族:<%=rs.getString("p_family")%><br><br>5.6.2更新,更新刪除重要的是sql語句的不同運用<title>更新</title>try{ Class.forName(driverName); conn=(Connection)DriverManager.getConnection(dbUrl,dbUser,dbPass); StringstrSql="SELECTTOP15p_name,p_gerder,p_shuxing,p_skill,p_familyFROMshopS.dbo.Peoplelistorderbyp_namedesc"; stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=stmt.executeQuery(strSql);%>姓名:<br><buttononclick="this.innerHTML='買不了'"type="botton"><%=rs.getString("p_name")%></button><br><br>性別:<br><%=rs.getString("p_gerder")%><br><br>屬性:<br><%=rs.getString("p_shuxing")%><br><br>能力:<br><%=rs.getString("p_skill")%><br><br>家族:<br><%=rs.getString("p_family")%><br><br>functionbuyCar(){ document.getElementById("demo").innerHTML="";}</script>5.7.1修改。添加和更新的合體版,<title>修改</title>受不了了,太難改了,刪了基本差不都了,就找些很核心的吧 Stringstr1="UPDATEshopS.dbo.PeoplelistSETp_gerder='"+gerder2+"',p_shuxing='"+shuxing2+"',p_skill='"+skill2+"', p_family='"+family2+"' WHEREp_name='"+pname+"';"; out.println("修改成功,請返回主頁查看、"); out.print("添加成功,2秒后轉(zhuǎn)到登錄頁面"); response.setHeader("Refresh","2;URL=HomePage.jsp"); 5.7.2修改,,,請輸入修改名字:<inputtype="text"name="p_name1"><table><trstyle="border-radius:50px;padding:0px;border:0px;margin:0px;box-shadow:0px8px16px0pxrgba(0,0,0,2.2);background-color:green"><td>姓名:<inputtype="text"name="p_name"><br/>性別:<inputtype="text"name="p_gerder"><br>屬性:<inputtype="text"name="p_shuxing"><br>能力:<inputtype="text"name="p_skill"><br>家族:<inputtype="text"name="p_family"><br><inputtype="submit"name="sub"value="OK"><inputtype="reset"value="NO">5.8.1文獻上傳,核心是組件的下載,代碼很簡樸<title>文獻上傳</title><palign="center">上傳產(chǎn)品信息</p><formmethod="post"action="ShangC2.jsp"enctype="multipart/form-data"><tablewidth="90%"border="1"align="center"><tr><td><divalign="center">沒得:<inputtype="file"name="file1"size="30"><td><divalign="center">傳:<inputtype="file"name="file2"size="30">5.8.2文獻下載,,<title>文獻上傳解決頁面</title><% SmartUploadsu=newSmartUpload(); su.initialize(pageContext); su.upload(); intcount=su.save("/XiaZai",su.SAVE_VIRTUAL); out.println(count+"個文獻上傳成功!<br>"); for(inti=0;i<su.getFiles().getCount();i++) { com.jspsmart.upload.Filefile=su.getFiles().getFile(i); if(file.isMissing())continue; out.println("<br>文獻名:"+file.getFileName()+"長度:"+file.getSize()+"<br>兩秒后返回"); response.setHeader("Refresh","2;URL=HomePage.jsp"); }5.9.1在線人數(shù),添加接口監(jiān)控,變量自

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論