版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
圖4-3數(shù)據(jù)庫E-R邏輯模型第五章系統(tǒng)實(shí)現(xiàn)通過對系統(tǒng)的需求分析與設(shè)計,我們確定了本系統(tǒng)的功能與邏輯結(jié)構(gòu)。系統(tǒng)實(shí)現(xiàn)就是把我們前面的設(shè)計翻譯成機(jī)器能夠運(yùn)行的程序代碼。5.1登錄界面實(shí)現(xiàn)當(dāng)管理員或者普通用戶輸入信息單擊登錄按鈕后,系統(tǒng)將檢查用戶的輸入是否合法,以避免用戶的非法輸入帶來的安全隱患。通過驗(yàn)證后系統(tǒng)請求服務(wù)器查詢數(shù)據(jù)庫中的用戶信息,若數(shù)據(jù)庫中存在匹配的用戶信息則表示驗(yàn)證通過,進(jìn)入主界面,否則提示用戶輸入信息不正確。等待用戶的進(jìn)一步操作。初始化登錄jsp頁面的部分代碼如下:publicvoid_jspInit(){_el_expressionfactory=_jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();_jsp_annotationprocessor=(org.apache.AnnotationProcessor)getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());}系統(tǒng)登錄界面如圖5-1所示:圖5-1系統(tǒng)登錄界面5.2系統(tǒng)主界面實(shí)現(xiàn)本系統(tǒng)中,主界面用戶可以清楚看到當(dāng)前系統(tǒng)的一些基本信息,同時用戶點(diǎn)擊右邊選項后系統(tǒng)將切換到相應(yīng)的界面。圖5-2系統(tǒng)主界面5.3任務(wù)管理模塊實(shí)現(xiàn)任務(wù)是用戶進(jìn)行工作安排的重要途徑,任務(wù)管理功能也非常重要。任務(wù)可以分為所有任務(wù),未完成任務(wù)、已完成任務(wù)。未完成任務(wù)完成后將歸檔到已完成任務(wù)項,用戶還可以根據(jù)任務(wù)的性質(zhì)來對任務(wù)進(jìn)行分類,在調(diào)度任務(wù)時,可以按狀態(tài)分組、按時間分組、按日期分組來查詢。圖5-3任務(wù)管理模塊界面5.4筆記管理模塊實(shí)現(xiàn)筆記管理模塊主要可用來操作添加、修改、刪除用戶的筆記,可以將筆記進(jìn)行分類保存。筆記模塊界面如圖5-4所示:圖5-4筆記管理模塊界面5.5相冊管理模塊實(shí)現(xiàn)相冊管理模塊分為本地上傳、網(wǎng)絡(luò)圖片上傳,可以相冊圖片進(jìn)行保存、刪除、移動、查看等操作。相冊管理模塊的界面如圖5-5所示:圖5-5相冊管理模塊界面5.6訂閱管理模塊實(shí)現(xiàn)訂閱管理模塊完成兩個大的功能:一是添加訂閱信息,管理員或用戶錄入所要添加的鏈接URL。二是刪除失效的訂閱信息,管理員或用戶根據(jù)提供的信息可以在數(shù)據(jù)庫中刪除已經(jīng)失效的鏈接信息。訂閱管理模塊的界面如圖5-6所示:圖5-6相冊管理模塊界面5.7文檔管理模塊實(shí)現(xiàn)文檔管理模塊的主要功能是上傳文檔和下載文檔??梢詫ξ臋n位置進(jìn)行移動,刪除文檔和重命名文檔操作。文檔管理界面如圖5-7所示:圖5-7文檔管理模塊界面5.8賬目管理模塊實(shí)現(xiàn)賬目管理模塊的主要功能是完成查詢、添加、修改、刪除等操作,并對所有賬目進(jìn)行收支統(tǒng)計、收入統(tǒng)計、支出統(tǒng)計結(jié)算。賬目管理界面如圖5-8所示:圖5-8賬目管理模塊界面5.9系統(tǒng)管理模塊實(shí)現(xiàn) 系統(tǒng)管理模塊的主要功能是用戶查詢和系統(tǒng)設(shè)置,用戶可以添加用戶、啟用、停用、刪除用戶賬號,系統(tǒng)設(shè)置可以用來配置郵箱服務(wù)器、郵箱密碼、郵箱賬號、成員資格、相冊縮略圖高度參數(shù)。圖5-9系統(tǒng)管理模塊界面第六章系統(tǒng)測試測試是軟件開發(fā)流程中必不可少的一個環(huán)節(jié)。系統(tǒng)測試是保證系統(tǒng)質(zhì)量和可靠性的關(guān)鍵步驟,是對系統(tǒng)開發(fā)過程中的系統(tǒng)分析、系統(tǒng)設(shè)計和實(shí)施的最后復(fù)查。系統(tǒng)測試是驗(yàn)證系統(tǒng)是否滿足了需求規(guī)格的定義,找出與需求規(guī)格不相符合或與之矛盾的地方。6.1測試目的測試的目的就是希望能以最少的人力和時間發(fā)現(xiàn)潛在的各種錯誤和缺陷。系統(tǒng)測試中,應(yīng)根據(jù)開發(fā)各階段的需求、設(shè)計文檔或程序的內(nèi)部結(jié)構(gòu)精心設(shè)計測試用例,并利用這些實(shí)例來運(yùn)行程序,以便發(fā)現(xiàn)錯誤。本系統(tǒng)就是通過設(shè)計不同的測試用例(包括異常、不合理、意想不到的情況)來確定系統(tǒng)的穩(wěn)定性以及潛在隱患,從而提高系統(tǒng)的質(zhì)量。6.2測試內(nèi)容登錄界面測試包括合法輸入和非法輸入。合法輸入又包括用戶和密碼正確及用戶和密碼不正確的情況。系統(tǒng)錄入功能測試針對各個模塊的錄入功能進(jìn)行測試,包括合法輸入和非法輸入,及空輸入。系統(tǒng)信息刪除功能測試選中待刪除的信息,選擇刪除命令。系統(tǒng)修改信息功能測試選中待修改的記錄,輸入新的值。包括輸入合法值和非法值。系統(tǒng)查詢功能測試輸入查詢關(guān)鍵字,得到查詢結(jié)果。系統(tǒng)的測試用例如表6-1所示:
表6-1測試用例表測試過程測試模塊輸入預(yù)期輸出測試步驟測試結(jié)果驗(yàn)證方式測試結(jié)果驗(yàn)證登錄界面正確的管理員用戶名與密碼進(jìn)入系統(tǒng)主界面輸入正確的用戶名與密碼進(jìn)入系統(tǒng)主窗體通過錯誤的用戶名與密碼提示“只有管理員才可以登錄”用戶名以及密碼重置輸入錯誤的用戶名與密碼提示“用戶名或者密碼錯誤”用戶名以及密碼重置通過非法輸入提示請重新輸入信息用戶名和密碼中含有非數(shù)字和字母字符提示“用戶名或者密碼錯誤”通過信息查詢功能查詢界面根據(jù)條件輸入正確的查詢關(guān)鍵字根據(jù)對應(yīng)的信息查詢出對應(yīng)的結(jié)果正確的輸入所要查詢的信息根據(jù)對應(yīng)的信息查詢出對應(yīng)的結(jié)果通過信息錄入功能在對應(yīng)的文本框中輸入對應(yīng)的正確信息提示“添加成功”添加合法信息提示“添加成功”通過在對應(yīng)文本框中輸入對應(yīng)的錯誤信息根據(jù)不同的情況給出提示添加非法信息提示“輸入錯誤”通過信息刪除功能待刪除記錄提示”刪除成功”選中待刪除的記錄,刪除記錄刪除成功通過信息修改功能待修改的記錄提示”修改成功”選中待修改的記錄,輸入新的值,修改記錄修改成功通過6.3測試結(jié)果6.4測試分析經(jīng)過系統(tǒng)測試,系統(tǒng)在穩(wěn)定性和健壯性等方面表現(xiàn)得還是相當(dāng)不錯。通過比較測試的實(shí)際結(jié)果和預(yù)期結(jié)果,發(fā)現(xiàn)系統(tǒng)還存在一些小缺陷。依據(jù)缺陷的表現(xiàn)癥狀,找到導(dǎo)致缺陷產(chǎn)生的根源所在,對系統(tǒng)進(jìn)行進(jìn)一步的完善,使系統(tǒng)運(yùn)行起來更加穩(wěn)定。從而達(dá)到了系統(tǒng)測試的目的。
結(jié)束語本系統(tǒng)采用JAVA作為程序開發(fā)語言,MySQL5.1.30作為后數(shù)據(jù)庫,結(jié)合apache、phpmyadmin等多種當(dāng)今流行的工具完成系統(tǒng)開發(fā)。本人首先進(jìn)行了問題定義,明確系統(tǒng)是否值得開發(fā);在做了詳盡的需求調(diào)查以后,確定了系統(tǒng)的需求;緊接著完成了系統(tǒng)的設(shè)計;在代碼實(shí)現(xiàn)階段,依據(jù)設(shè)計階段的結(jié)果,對系統(tǒng)的功能模塊一一實(shí)現(xiàn);最后對系統(tǒng)進(jìn)行了測試。整個課程設(shè)計,使我將在課堂上學(xué)到的知識,運(yùn)用到了社會實(shí)際生產(chǎn)中。這段時間中,我看著自己在一點(diǎn)一滴的進(jìn)步。每當(dāng)遇到問題時,我會積極查閱資料、和同學(xué)探討并向老師尋求幫助,總之是會想法設(shè)法的去解決問題。我覺得這種精神在我以后的學(xué)習(xí)工作中會起到更大的作用。附工程代碼index_jsp.javapackageorg.apache.jsp;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;publicfinalclassindex_jspextendsorg.apache.jasper.runtime.HttpJspBaseimplementsorg.apache.jasper.runtime.JspSourceDependent{privatestaticfinalJspFactory_jspxFactory=JspFactory.getDefaultFactory();privatestaticjava.util.List_jspx_dependants;privatejavax.el.ExpressionFactory_el_expressionfactory;privateorg.apache.AnnotationProcessor_jsp_annotationprocessor;publicObjectgetDependants(){return_jspx_dependants;}publicvoid_jspInit(){_el_expressionfactory=_jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();_jsp_annotationprocessor=(org.apache.AnnotationProcessor)getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());}publicvoid_jspDestroy(){}publicvoid_jspService(HttpServletRequestrequest,HttpServletResponseresponse)throwsjava.io.IOException,ServletException{PageContextpageContext=null;HttpSessionsession=null;ServletContextapplication=null;ServletConfigconfig=null;JspWriterout=null;Objectpage=this;JspWriter_jspx_out=null;PageContext_jspx_page_context=null;try{response.setContentType("text/html;charset=UTF-8");pageContext=_jspxFactory.getPageContext(this,request,response, null,true,8192,true);_jspx_page_context=pageContext;application=pageContext.getServletContext();config=pageContext.getServletConfig();session=pageContext.getSession();out=pageContext.getOut();_jspx_out=out;out.write('\r');out.write('\n');if(true){_jspx_page_context.forward("/websrc/page/login.jsp");return;}}catch(Throwablet){if(!(tinstanceofSkipPageException)){out=_jspx_out;if(out!=null&&out.getBufferSize()!=0)try{out.clearBuffer();}catch(java.io.IOExceptione){}if(_jspx_page_context!=null)_jspx_page_context.handlePageException(t);}}finally{_jspxFactory.releasePageContext(_jspx_page_context);}}}login_jsp.javapackageorg.apache.jsp;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;publicfinalclassindex_jspextendsorg.apache.jasper.runtime.HttpJspBaseimplementsorg.apache.jasper.runtime.JspSourceDependent{privatestaticfinalJspFactory_jspxFactory=JspFactory.getDefaultFactory();privatestaticjava.util.List_jspx_dependants;privatejavax.el.ExpressionFactory_el_expressionfactory;privateorg.apache.AnnotationProcessor_jsp_annotationprocessor;publicObjectgetDependants(){return_jspx_dependants;}publicvoid_jspInit(){_el_expressionfactory=_jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();_jsp_annotationprocessor=(org.apache.AnnotationProcessor)getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());}publicvoid_jspDestroy(){}publicvoid_jspService(HttpServletRequestrequest,HttpServletResponseresponse)throwsjava.io.IOException,ServletException{PageContextpageContext=null;HttpSessionsession=null;ServletContextapplication=null;ServletConfigconfig=null;JspWriterout=null;Objectpage=this;JspWriter_jspx_out=null;PageContext_jspx_page_context=null;try{response.setContentType("text/html;charset=UTF-8");pageContext=_jspxFactory.getPageContext(this,request,response, null,true,8192,true);_jspx_page_context=pageContext;application=pageContext.getServletContext();config=pageContext.getServletConfig();session=pageContext.getSession();out=pageContext.getOut();_jspx_out=out;out.write('\r');out.write('\n');if(true){_jspx_page_context.forward("/websrc/page/login.jsp");return;}}catch(Throwablet){if(!(tinstanceofSkipPageException)){out=_jspx_out;if(out!=null&&out.getBufferSize()!=0)try{out.clearBuffer();}catch(java.io.IOExceptione){}if(_jspx_page_context!=null)_jspx_page_context.handlePageException(t);}}finally{_jspxFactory.releasePageContext(_jspx_page_context);}}}header_jsp.javapackagemon;importjavax.servlet.*;importjavax.servlet.http.*;importjavax.servlet.jsp.*;importglobal.security.SessionUtils;importglobal.Constants;publicfinalclassheader_jspextendsorg.apache.jasper.runtime.HttpJspBaseimplementsorg.apache.jasper.runtime.JspSourceDependent{privatestaticfinalJspFactory_jspxFactory=JspFactory.getDefaultFactory();privatestaticjava.util.List_jspx_dependants;privatejavax.el.ExpressionFactory_el_expressionfactory;privateorg.apache.AnnotationProcessor_jsp_annotationprocessor;publicObjectgetDependants(){return_jspx_dependants;}publicvoid_jspInit(){_el_expressionfactory=_jspxFactory.getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();_jsp_annotationprocessor=(org.apache.AnnotationProcessor)getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());}publicvoid_jspDestroy(){}publicvoid_jspService(HttpServletRequestrequest,HttpServletResponseresponse)throwsjava.io.IOException,ServletException{PageContextpageContext=null;HttpSessionsession=null;ServletContextapplication=null;ServletConfigconfig=null;JspWriterout=null;Objectpage=this;JspWriter_jspx_out=null;PageContext_jspx_page_context=null;try{response.setContentType("text/html;charset=UTF-8");pageContext=_jspxFactory.getPageContext(this,request,response, null,true,8192,true);_jspx_page_context=pageContext;application=pageContext.getServletContext();config=pageContext.getServletConfig();session=pageContext.getSession();out=pageContext.getOut();_jspx_out=out;out.write("\r\n");out.write("\r\n");out.write("\r\n");out.write("<html>\r\n");out.write("<head>\r\n");out.write("\t"); StringbaseUrl=request.getContextPath();out.write("\r\n");out.write("\t<metahttp-equiv=\"Content-Type\"content=\"text/html;charset=utf-8\"/>\r\n");out.write("\t<scripttype=\"text/javascript\">\r\n");out.write("\t\t$(document).ready(function(){\r\n");out.write("\t\t\tExt.state.Manager.setProvider(newExt.state.CookieProvider());\r\n");out.write("\t\t\t//主題\r\n");out.write("\t\t//varthemeFormPanel=newAnynote.themeComboBox({\r\n");out.write("\t\t//\trenderTo:'themeChangeDiv'\r\n");out.write("\t\t//});\r\n");out.write("\t\t$(\"#sayHelloSpan\").text(Anynote.sayHello());\r\n");out.write("\t\t$(\"#todayDate\").html(\"<ahref='javascript:openCalendar()'>\"+Anynote.getToday()+\"</a>\");\r\n");out.write("\t\t});\r\n");out.write("\r\n");out.write("\t\t//賬戶信息\r\n");out.write("\t\tfunctioneditUser(){\r\n");out.write("\t\t\teditUserWindow=newExt.Window({\r\n");out.write("\t\t\t\ttitle:'賬戶信息',\r\n");out.write("\t\t\t\twidth:350,\r\n");out.write("\t\t\t\theight:400,\r\n");out.write("\t\t\t\tmodal:true,\r\n");out.write("\t\t\t\tmaximizable:false,\r\n");out.write("\t\t\t\tresizable:false,\r\n");out.write("\t\t\t\tlayout:'fit',\r\n");out.write("\t\t\t\tplain:true,\r\n");out.write("\t\t\t\tautoLoad:{url:'");out.print(baseUrl);out.write("/websrc/page/user/editUser.jsp',scripts:true,nocache:true},\r\n");out.write("\t\t\t\tlisteners:{\r\n");out.write("\t\t\t\t\tclose:function(){\r\n");out.write("\t\t\t\t\t\tvarbuttonType=Ext.getCmp(\"buttonType\").getValue();\r\n");out.write("\t\t\t\t\t\tif(buttonType==\"save\"){\r\n");out.write("\t\t\t\t\t\t\tAnynote.changeTheme(Ext.getCmp(\"themeCombo\").getValue());\r\n");out.write("\t\t\t\t\t\t}else{\r\n");out.write("\t\t\t\t\t\t\tAnynote.changeTheme(\"");out.print(SessionUtils.getUserMeta().get("theme"));out.write("\");\r\n");out.write("\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t}\r\n");out.write("\t\t\t\t}\r\n");out.write("\t\t\t});\r\n");out.write("\t\t\teditUserWindow.show();\r\n");out.write("\t\t}\r\n");out.write("\r\n");out.write("\t\t//修改密碼\r\n");out.write("\t\tfunctioneditPassword(){\r\n");out.write("\t\t\tchangePwdWindow=newExt.Window({\r\n");out.write("\t\t\t\ttitle:'修改密碼',\r\n");out.write("\t\t\t\twidth:300,\r\n");out.write("\t\t\t\theight:150,\r\n");out.write("\t\t\t\tmodal:true,\r\n");out.write("\t\t\t\tmaximizable:false,\r\n");out.write("\t\t\t\tresizable:false,\r\n");out.write("\t\t\t\tlayout:'fit',\r\n");out.write("\t\t\t\tplain:true,\r\n");out.write("\t\t\t\tautoLoad:{url:'");out.print(baseUrl);out.write("/websrc/page/user/changePwd.jsp',scripts:true,nocache:true}\r\n");out.write("\t\t\t});\r\n");out.write("\t\t\tchangePwdWindow.show();\r\n");out.write("\t\t}\r\n");out.write("\t\t\r\n");out.write("\t\t//用戶退出\r\n");out.write("\t\tfunctionlogout(){\r\n");out.write("\t\t\tExt.Msg.confirm(\"警告\",\"確定要退出嗎?\",function(btn){\r\n");out.write("\t\t\t\tif(btn==\"yes\"){\r\n");out.write("\t\t\t\t\t//發(fā)送請求\r\n");out.write("\t\t\t\t\tAnynote.ajaxRequest({\r\n");out.write("\t\t\t\t\t\tbaseUrl:'");out.print(baseUrl);out.write("',\r\n");out.write("\t\t\t\t\t\taction:'/loginAction.do?method=logout',\r\n");out.write("\t\t\t\t\t\tcallback:function(jsonResult){\r\n");out.write("\t\t\t\t\t\t\tExt.state.Manager.set('Anynote_autoLogin',false);\r\n");out.write("\t\t\t\t\t\t\tlocation.href=\"");out.print(baseUrl);out.write("\";\r\n");out.write("\t\t\t\t\t\t},\r\n");out.write("\t\t\t\t\t\tshowWaiting:true\r\n");out.write("\t\t\t\t\t});\r\n");out.write("\t\t\t\t}\r\n");out.write("\t\t\t});\r\n");out.write("\t\t}\r\n");out.write("\r\n");out.write("\t\t//鎖定\r\n");out.write("\t\tfunctionlock(){\r\n");out.write("\t\t\tExt.Msg.confirm(\"警告\",\"確定要鎖定嗎?\",function(btn){\r\n");out.write("\t\t\t\tif(btn==\"yes\"){\r\n");out.write("\t\t\t\t\t//用戶登錄Form\r\n");out.write("\t\t\t\t\tvarlockFormPanel=newExt.FormPanel({\r\n");out.write("\t\t\t\tborder:false,\r\n");out.write("\t\t\t\tlabelWidth:40,\r\n");out.write("\t\t\t\tbodyStyle:'padding:10px5px0px5px;background-color:transparent;',\r\n");out.write("\t\t\t\turl:'");out.print(baseUrl);out.write("/loginAction.do?method=login',\r\n");out.write("\t\t\t\titems:[{//筆記標(biāo)題\r\n");out.write("\t\t\t\t\txtype:'label',\r\n");out.write("\t\t\t\t\t\thtml:'系統(tǒng)正在使用,并被鎖定,請輸入密碼解除鎖定',\r\n");out.write("\t\t\t\t\t\tstyle:'font-size:12px;',\r\n");out.write("\t\t\t\t\t\tcls:'x-form-item-label'\r\n");out.write("\t\t\t\t\t\t},{\r\n");out.write("\t\t\t\tlayout:'column',\r\n");out.write("\t\t\t\tborder:false,\r\n");out.write("\t\t\t\tbodyStyle:'background-color:transparent;margin-top:10px;',\r\n");out.write("\t\t\t\titems:[{//分類ID\r\n");out.write("\t\t\t\t\t\tcolumnWidth:.8,\r\n");out.write("\t\t\t\t\t\t\t\tlayout:'form',\r\n");out.write("\t\t\t\t\t\t\t\tborder:false,\r\n");out.write("\t\t\t\t\t\t\t\tbodyStyle:'background-color:transparent;',\r\n");out.write("\t\t\t\t\t\titems:[newExt.form.TextField({//密碼\r\n");out.write("\t\t\t\t\t\t\tinputType:'password',\r\n");out.write("\t\t\t\t\tname:'password',\r\n");out.write("\t\t\t\t\tfieldLabel:'密碼',\r\n");out.write("\t\t\t\t\tanchor:'98%',\r\n");out.write("\t\t\t\t\tmaxLength:20,\r\n");out.write("\t\t\t\t\tlisteners:{\r\n");out.write("\t\t\t\t\t\t\t\t\t\tspecialKey:function(field,e){\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\tif(e.getKey()==Ext.EventObject.ENTER){\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp(\"lock-tick-button\").handler();\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t})]\r\n");out.write("\t\t\t\t\t},{//分類ID\r\n");out.write("\t\t\t\t\t\tcolumnWidth:.2,\r\n");out.write("\t\t\t\t\t\t\t\tlayout:'form',\r\n");out.write("\t\t\t\t\t\t\t\tborder:false,\r\n");out.write("\t\t\t\t\t\t\t\tbodyStyle:'background-color:transparent;',\r\n");out.write("\t\t\t\t\t\titems:[newExt.Button({\r\n");out.write("\t\t\t\t\t\t\tid:'lock-tick-button',\r\n");out.write("\t\t\t\t\t\t\t\ttext:'確定',\r\n");out.write("\t\t\t\t\t\t\t\t\ticonCls:'tick',\r\n");out.write("\t\t\t\t\t\t\t\t\thandler:function(){\r\n");out.write("\t\t\t\t\t\t\t\t\t\tvaruserId='");out.print(SessionUtils.getCurrentUserId());out.write("';\r\n");out.write("\t\t\t\t\t\t\t\tvarpassword=lockFormPanel.getForm().findField('password').getValue();\r\n");out.write("\t\t\t\t\t\t\t\tif(password!=''){\r\n");out.write("\t\t\t\t\t\t\t\t\t//發(fā)送請求\r\n");out.write("\t\t\t\t\t\t\t\t\tExt.getCmp('lockWindowStatusPanel').body.update(\" <imgsrc='");out.print(baseUrl);out.write("/websrc/js/ext-3.3.0/resources/images/default/shared/loading-balls.gif'/>\");\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\tExt.Ajax.request({\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\turl:'");out.print(baseUrl);out.write("/loginAction.do?method=loginCheck',\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\tparams:{userId:userId,password:password},\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\tcallback:function(options,success,response){\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\tvarjsonResult=Ext.decode(response.responseText);\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\tif(jsonResult.success==true){\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('lockWindow').close();\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\t$('#lockDiv').hide();\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tExt.state.Manager.set('Anynote_hasLocked',false);\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\twindow.onbeforeunload=null;\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t}else{\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tvarmessage='發(fā)生異常.';\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tif(jsonResult.message&&jsonResult.message!=''){//后臺設(shè)定的業(yè)務(wù)消息\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tmessage=jsonResult.message;\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tExt.getCmp('lockWindowStatusPanel').body.update('<fontcolor=\"red\">'+message+'</font>');\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t\tsetTimeout(function(){Ext.getCmp('lockWindowStatusPanel').body.update('當(dāng)前用戶:");out.print(SessionUtils.getCurrentUserName());out.write("');},3000);\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t\t\t\t});\r\n");out.write("\t\t\t\t\t\t\t\t}else{\r\n");out.write("\t\t\t\t\t\t\t\t\tExt.getCmp('lockWindowStatusPanel').body.update('<fontcolor=\"red\">請輸入密碼.</font>');\r\n");out.write("\t\t\t\t\t\t\t\t\tsetTimeout(function(){Ext.getCmp('lockWindowStatusPanel').body.update('當(dāng)前用戶:");out.print(SessionUtils.getCurrentUserName());out.write("');},3000);\r\n");out.write("\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t\t}\r\n");out.write("\t\t\t\t\t\t\t\t})]\r\n");out.write("\t\t\t\t\t}]\r\n");out.write("\t\t\t\t}]\r\n");out.write("\t\t\t\t});\r\n");out.write("\t\t\t\t\t$('#lockDiv').show();\r\n");out.write("\t\t\t\t\t//用戶登錄窗口\r\n");out.write("\t\t\t\t\tvarlockWindow=newExt.Window({\r\n");out.write("\t\t\t\t\t\tid:'lockWindow',\r\n");out.write("\t\t\t\t\t\trenderTo:'lockWindowDiv',\r\n");out.write("\t\t\t\t\t\ttitle:'系統(tǒng)已鎖定',\r\n");out.write("\t\t\t\t\t\twidth:300,\r\n");out.write("\t\t\t\t\t\theight:120,\r\n");out.write("\t\t\t\t\t\tmaximizable:false,\r\n");out.write("\t\t\t\t\t\tresizable:false,\r\n");out.write("\t\t\t\t\t\tclosable:false,\r\n");out.write("\t\t\t\t\t\tdraggable:false,\r\n");out.write("\t\t\t\t\t\tlayout:'fit',\r\n");out.write("\t\t\t\t\t\tplain:true,\r\n");out.write("\t\t\t\t\t\titems:[lockFormPanel],\r\n");out.write("\t\t\t\t\t\tbbar:newExt.Panel({\r\n");out.write("\t\t\t\t\t\t\tid:'lockWindowStatusPanel',\r\n");out.write("\t\t\t\t\t\t\thtml:'當(dāng)前用戶:");out.print(SessionUtils.getCurrentUserName());out.write("',\r\n");out.write("\t\t\t\t\t\t\tborder:false,\r\n");out.write("\t\t\t\t\t\t\tbodyStyle:'background-color:transparent;padding:3px5px;'\r\n");out.write("\t\t\t\t\t\t})\r\n");out.write("\t\t\t\t\t}).show();\r\n");out.write("\t\t\t\t\tExt.state.Manager.set('Anynote_hasLocked',true);\r\n");out.write("\t\t\t\t\twindow.onbeforeunload=function(){\r\n");out.write("\t\t\t\t\t\treturn\"系統(tǒng)已鎖定,離開頁面將退出登錄,確定嗎?\";\r\n");out.write("\t\t\t\t\t}\r\n");out.write("\t\t\t\t}\r\n");out.write("\t\t\t});\r\n");out.write("\t\t}\r\n");out.write("\r\n");out.write("\t\tfunctionopenCalendar(){\r\n");out.write("\t\t\tvarcalendarWindow=newExt.Window({\r\n");out.write("\t\t\t\ttitle:'萬年歷',\r\n");out.write("\t\t\t\twidth:437,\r\n");out.write("\t\t\t\theight:550,\r\n");out.write("\t\t\t\tmodal:true,\r\n");out.write("\t\t\t\tmaximizable:false,\r\n");out.write("\t\t\t\tresizable:false,\r\n");out.write("\t\t\t\tlayout:'fit',\r\n");out.write("\t\t\t\tbodyStyle:'background-color:#ffffff;',\r\n");out.write("\t\t\t\thtml:'<iframesrc=\"");out.print(baseUrl);out.write("/websrc/page/common/calendar.jsp\"width=\"450px\"height=\"520px;\"style=\"margin-left:10px;\"frameborder=\"0\"></iframe>'\r\n");out.write("\t\t\t}).show();\r\n");out.write("\t\t}\r\n");out.write("\t</script>\r\n");out.write("</head>\r\n");out.write("<body>\r\n");out.write("\t<divid=\"headerDiv\">\r\n");out.write("\t\t<tablestyle=\"width:100%;height:100%;table-layout:fixed;\">\r\n");out.write("\t\t\t<tr>\r\n");out.write("\t\t\t\t<tdwidth=\"180px\"><ahref=\"");out.print(baseUrl);out.write("\"><imgsrc=\"");out.print(baseUrl);out.write("/websrc/image/Anynote-s.png\"></img></a></td>\r\n");out.write("\t\t\t\t<tdalign=\"center\"class=\"loginInfo\">\r\n");out.write("\t\t\t\t\t<spanstyle=\"padding:3px10px3px18px;\"class=\"user\"style=\"height:20px;\">\r\n");out.write("\t\t\t\t\t\t");out.print(SessionUtils.getCurrentUserName()+"("+Constants.ROLE_MAP.get(SessionUtils.getUserRole())+")");out.write(",<spanid=\"sayHelloSpan\"></span>\r\n");out.write("\t\t\t\t\t</span>\r\n");out.write("\t\t\t\t\t<spanstyle=\"padding:3px10px3px18px;\"class=\"user_edit\"style=\"height:20px;\"><ahref=\"javascript:editUser();\">賬戶信息</a></span>\r\n");out.write("\t\t\t\t\t<spanstyle=\"padding:3px10px3px18px;\"class=\"key\"style=\"height:20px;\"><ahref=\"javascript:editPassword();\">修改密碼</a></span>\r\n");out.write("\t\t\t\t\t<spanstyle=\"padding:3px10px3px18px;\"class=\"lock\"style=\"height:20px;\"><ahref=\"javascript:lock();\">鎖定</a></span>\r\n");out.write("\t\t\t\t\t<spanstyle=\"padding:3px10px3px18px;\"class=\"user_go\"style=\"height:20px;\"><ahref=\"javascript:logout();\">退出</a></span>\r\n");out.write("\t\t\t\t</td>\r\n");out.write("\t\t\t\t<tdwidth=\"180px\"align=\"right\"style=\"padding-right:5px;\"class=\"loginInfo\">\r\n");out.write("\t\t\t\t\t<divid=\"todayDate\"></div>\r\n");out.write("\t\t\t\t</td>\r\n");out.write("\t\t\t</tr>\r\n");out.write("\t\t</table>\r\n");out.write("</div>\r\n");out.write("</body>\r\n");out.write("</html>");}catch(Throwablet){if(!(tinstanceofSkipPageException)){out=_jspx_out;if(out!=null&&out.getBufferSize()!=0)try{out.clearBuffer();}catch(java.io.IOExceptione){}if(_jspx_page_context!=null)_jspx_page_context.handlePageException(t);}}finally{_jspxFactory.releasePageContext(_jspx_page_context);}}}indes.jsp頁面<%@pagelanguage="java"pageEncoding="UTF-8"isELIgnored="false"%><%@includefile="/websrc/page/common/jsloader.jsp"%><%@pageimport="global.security.SessionUtils"%><%@pageimport="global.Constants"%><html><head> <%StringbaseUrl=request.getContextPath();%> <title>Anynote</title> <metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/> <scripttype="text/javascript"> $(document).ready(function(){ Ext.state.Manager.setProvider(newExt.state.CookieProvider()); Ext.QuickTips.init(); //如果處于鎖定狀態(tài),直接退出頁面 varhasLocked=Ext.state.Manager.get('Anynote_hasLocked'); if(hasLocked){ //發(fā)送請求 Anynote.ajaxRequest({ baseUrl:'<%=baseUrl%>', action:'/loginAction.do?method=logout', callback:function(jsonResult){ Ext.state.Manager.set('Anynote_autoLogin',false); location.href="<%=baseUrl%>"; } }); }else{ //實(shí)際改變風(fēng)格樣式的處理 Ext.util.CSS.swapStyleSheet('theme','/Anynote/websrc/js/ext-3.3.0/resources/css/<%=SessionUtils.getUserMeta().get("theme")%>'); Ext.state.Manager.set('Anynote_theme','<%=SessionUtils.getUserMeta().get("theme")%>'); //頭部 Anynote.headerPanel=newExt.Panel({ region:'north', height:40, border:false, margins:'0005', bodyStyle:'background-color:transparent;',autoLoad:{url:'<%=baseUrl%>/websrc/page/common/header.jsp',scripts:true,nocache:true} }); //菜單面板 Anynote.menuPanel=newExt.Panel({ region:'west', title:'主菜單', split:true, width:240, minSize:175, maxSize:400, collapsible:true, margins:'0', layout:'accordion', layoutConfig:{ animate:true }, listeners:{collapse:function(){Anynote.resizeActiveTab();}} }); //添加主頁菜單 varhomeAccordion=Menu.getHomeAccordion({ baseUrl:'<%=baseUrl%>', tabUrl:'<%=baseUrl+SessionUtils.getUserMeta().get("homePage")%>' }); Anynote.menuPanel.add(homeAccordion); //任務(wù)菜單 if("<%=SessionUtils.getUserMeta().get("showTodo")%>"=="<%=Constants.CHECK_TRUE%>"){ //參數(shù) varparam={}; param.baseUrl='<%=baseUrl%>'; //任務(wù)菜單 vartodoAccordion=Menu.getTodoAccordion(param); Anynote.menuPanel.add(todoAccordion); } //筆記菜單 if("<%=SessionUtils.getUserMeta().get("showNote")%>"=="<%=Constants.CHECK_TRUE%>"){ //參數(shù) varparam={}; param.baseUrl='<%=baseUrl%>'; //任務(wù)菜單 varnoteAccordion=Menu.getNoteAccordion(param); Anynote.menuPanel.add(noteAccordion); } //相冊菜單 if("<%=SessionUtils.getUserMeta().get("showPic
溫馨提示
- 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版某三期護(hù)坡樁工程施工過程監(jiān)測與評估合同4篇
- 2025年度生態(tài)地板安裝與環(huán)保認(rèn)證服務(wù)合同4篇
- 二零二五年度品牌推廣電子商務(wù)B2B購銷數(shù)字資產(chǎn)交易合同4篇
- 2025年度文化創(chuàng)意產(chǎn)業(yè)聘用員工勞動合同標(biāo)準(zhǔn)文本4篇
- 二零二五年度健康食品品牌形象設(shè)計與市場推廣合同3篇
- 二零二五年度生態(tài)農(nóng)場果品出口貿(mào)易合同4篇
- 二零二五年度家政服務(wù)合同中退款條款
- 二零二五年度商業(yè)空間面積調(diào)整補(bǔ)充合同4篇
- 2025年美發(fā)店大數(shù)據(jù)分析與營銷策略合作合同協(xié)議書
- 課題申報參考:媒介化加速視域下社交媒體新個體文化的建構(gòu)與引導(dǎo)研究
- 2025年慢性阻塞性肺疾病全球創(chuàng)議GOLD指南修訂解讀課件
- 飯店管理基礎(chǔ)知識(第三版)中職PPT完整全套教學(xué)課件
- 2023年重慶市中考物理A卷試卷【含答案】
- 【打印版】意大利斜體英文字帖(2022年-2023年)
- 2023年浙江省嘉興市中考數(shù)學(xué)試題及答案
- 【考試版】蘇教版2022-2023學(xué)年四年級數(shù)學(xué)下冊開學(xué)摸底考試卷(五)含答案與解析
- 《分?jǐn)?shù)的基本性質(zhì)》數(shù)學(xué)評課稿10篇
- 第八章 客戶關(guān)系管理
- 新版人教版高中英語選修一、選修二詞匯表
- 2022年河北邯鄲世紀(jì)建設(shè)投資集團(tuán)有限公司招聘筆試試題及答案解析
- 住院患者跌倒墜床質(zhì)量控制管理考核標(biāo)準(zhǔn)
評論
0/150
提交評論