版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
培訓體系的培訓資料Flex開發(fā)入門Helloworld案例的開發(fā)案例描述通過經典的“HelloWorld”案例來了解Flex的運行方式。精品文檔放心下載開發(fā)步驟啟動FlexBuilder3通過“開始程序AdobeFlexBuilder3”啟動Flex開發(fā)環(huán)境。精品文檔放心下載創(chuàng)建項目打開FlexBuilder3之后,選擇“FileNewFlexProject”創(chuàng)建一個新項目;感謝閱讀1)在彈出的“FlexProjectFlexTest,如精品文檔放心下載圖2.1-2所示。點擊Next,選擇Flex編譯后的輸出目錄,默認的就可以了精品文檔放心下載點擊Next,可以指定原碼路徑,默認為src,可以選擇SDK的版本等感謝閱讀點擊Finish。創(chuàng)建好的項目目錄結構如下:(swc的1、原碼路徑編譯部署、運行選中FlexTest.mxml,打開此文件,輸入如下代碼謝謝閱讀選中FlexTest,點擊運行效果如下,點擊“Helloworld”按鈕,彈出一個對話框,顯示“HelloWorld!”精品文檔放心下載Flex常用組件1、Label2、TextInput3、TextArea4、ComboBox5、DateField6、Button7、DataGridLabel主要用于字段說明,就像下圖的“用戶名:”和“用戶說明,一般Label字段感謝閱讀TextInput用作文本值輸入,不支持換行,如果想要輸入的值可謝謝閱讀以換行可以使用TextAreaTextInput和TextArea跟html中text和textarea完成的任務精品文檔放心下載是一樣的,用于數(shù)據的提交和顯示。ComboBox下拉框,提供數(shù)據選擇,比如說性別、類型等謝謝閱讀DateField日期框,對于需要用到日期的地方很有用謝謝閱讀可以通過設置formatString謝謝閱讀顯示的值為“2011-03-08”Button按鈕,Button使用非常普遍,在進行前后臺交互的時候往往使用按鈕來提交數(shù)據,感謝閱讀DataGrid,用于數(shù)據列表的顯示,比如說要顯示一個查詢后的列表集合,DataGrid就非常精品文檔放心下載有用了Flex常用數(shù)據校驗控件<mx:StringValidator/>10感謝閱讀項為畢輸項”,如果輸入的字符串小于3為則提示“不能小于3位”,如下圖所示:感謝閱讀<mx:NumberValidator/>和<mx:DateValidator/>的使用方式和<mx:StringValidator/>基精品文檔放心下載本相同,只是這些控件對應的屬性不同,不在贅述。這是幾種常用的,當然還有其他數(shù)據校驗控件,比如說對電話號碼、信用卡等的校驗。精品文檔放心下載Flex深入開發(fā)在深入開發(fā)過程中將使用FlashBuilder4和SDK3.3版本,用我們在實際開發(fā)中使用的精品文檔放心下載UITemplate+jump這兩套框架。UITemplate中常用的控件介紹1、<jwolib:TextInput/>文本控件,如下圖所示:精品文檔放心下載效果如下,如果單擊則可以清空文本框里面的內容:2、<expand:DoubleClickCheckDataGrid/>顯示列表控件(帶復選框),如下圖所示:感謝閱讀效果如下,可以通過選擇左邊的復選框來進行相應的操作;謝謝閱讀如果要進行多選,可以設置allowMultipleSelection=”true”,上圖導入精品文檔放心下載xmlns:bankcomm=”com.bankcomm.*”是為了支持數(shù)據字典的使用,如下代碼所示精品文檔放心下載<bankcomm:MyDataGridColumndict="ACT_RESULT"headerText="處理結果"感謝閱讀dataField="actResult"dataTipField="actResult"textAlign="center"謝謝閱讀sortable="false"/>3、<expand:DoubleClickDataGrid/>顯示列表控件(不帶復選框),如下圖所示:精品文檔放心下載效果如下,可以通過設置allowMultipleSelection=”true”來進行多選,和上面描述的列精品文檔放心下載感謝閱讀的列表是一樣的4、<bankcomm:GridPage/>分頁控件,如下圖所示:謝謝閱讀,,可以在里謝謝閱讀面輸入不小于10的數(shù)字(小于10的會默認用10來處理),代表一次顯示多少條謝謝閱讀5、<combotree:TreeComboBox/>下拉樹控件,如下圖所示:謝謝閱讀效果如下,可以看到點擊下拉框會彈出一連串的樹,6、<jwolib:FieldSet/>,類似于一個容器,可以在左上角顯示說明信息,如下圖所示:感謝閱讀效果如下,可以看到左上角的“失聯(lián)補錄信息”說明信息7、<bankcomm:MyComboBox/>普通下拉框,如下圖所示:謝謝閱讀效果如下,可以看到它不像下拉樹一樣,如圖所示可以通過點擊來清空當前選項謝謝閱讀8、<mx:ControlBar/>flex自帶的控制條,如下圖所示:謝謝閱讀效果如下,可以看到它里面可以包含其他的控件,保持美觀的效果精品文檔放心下載9、<bankcomm:NumberField/>數(shù)字控件,如下圖所示:精品文檔放心下載效果如下,這個控件只能輸入數(shù)字類型的數(shù)據,可以控制只能輸入整數(shù)或者可以輸入小數(shù),精品文檔放心下載也可以通過點擊來清空已輸入的數(shù)據10、<bankcomm:MyDateField/>日期控件,如下圖所示:感謝閱讀formatString=”YYYY-MM-DD”感謝閱讀擊右邊的來選擇日期,會按照已定義好的格式來顯示日期,也可以通過點擊來清空已選擇謝謝閱讀的日期11<check:CheckBoxList/>復選框列表,需導入xmlns:check="com.flextoolbox.controls.*",感謝閱讀如下圖所示:效果如下,可以點擊復選框選中一條記錄,如果要支持多選,可以設置感謝閱讀allowMultipleSelection="true"(默認就是多選)謝謝閱讀開發(fā)案例描述案例的基本需求Flex+jump精品文檔放心下載修改、刪除。感謝閱讀查詢,性別為完全匹配查詢且通過下拉列表選取查詢條件,查詢結果要求分頁處理。感謝閱讀學生信息表STU的表結構STUIDVARCHAR(10)10YES學生編號謝謝閱讀STUNAMEVARCHAR(40)40NO學生姓名謝謝閱讀SEXCHAR1NO1-男,2-女,3-未知感謝閱讀AGEINTNO年齡ADDRESSVARCHAR(100)200NO家庭住址謝謝閱讀PHONEVARCHAR(20)20NO聯(lián)系電話謝謝閱讀BIRTHDateNO出生日期開發(fā)步驟創(chuàng)建數(shù)據庫表(省略,已經設置好)建表SQL腳本(DB2)droptableSTU;CREATETABLESTU(STUIDVARCHAR(10)notnull,謝謝閱讀STUNAMEVARCHAR(40),SEXCHAR2(1),AGEINTEGER,ADDRESSVARCHAR(200),PHONEVARCHAR(20),BIRTHDATE,CONSTRAINTPK11PRIMARYKEY(STUID)精品文檔放心下載);初始數(shù)據SQL腳本insertintoSTUvalues('1000000','張三豐','1',25,'北京海淀區(qū)中關村大街01號精品文檔放心下載',,DATE('1985-11-23'));謝謝閱讀insertintoSTUvalues('1000001','張無忌','1',26,'上海張江高科技園區(qū)碧波路456號感謝閱讀',,DATE('1984-11-30'));謝謝閱讀insertintoSTUvalues('1000002','張小寶','0',23,'北京市海淀區(qū)彩和坊路8號天創(chuàng)科技大廈東門精品文檔放心下載1301室',,DATE('1987-05-19'));感謝閱讀insertintoSTUvalues('1000003','趙大海','2',24,'廣州市天河區(qū)體育東路122號羊城國際商貿中心感謝閱讀大廈西塔2102-2104室',,DATE('1986-03-31'));感謝閱讀insertintoSTUvalues('1000004','趙小新','0',25,'北京海淀區(qū)中關村22號精品文檔放心下載',,DATE('1985-05-08'));謝謝閱讀insertintoSTUvalues('1000005','','2',23,'成都高新區(qū)創(chuàng)新中心起步區(qū)府河基地高朋大道12精品文檔放心下載號B座209-210室',,DATE('1987-04-19'));精品文檔放心下載insertintoSTUvalues('1000006','李亞南','0',24,'長沙市國家高新技術開發(fā)區(qū)火炬村M2組團金榮科感謝閱讀技園7樓',,DATE('1986-12-24'));精品文檔放心下載搭好flex+jump的開發(fā)環(huán)境將下載下來的UITemplate改名為student,并導入到FlashBuilder4的包資源管理器精品文檔放心下載中(UITemplate由項目組提供),如下圖所示:精品文檔放心下載在包資源管理器中右擊導入選擇FlashBuilder項目下一步選擇項目文件夾瀏謝謝閱讀覽(選擇你已改名為student的這個項目)完成感謝閱讀導入好項目之后需要查看一下SDK版本是不是正確的,通過右擊student(項目)屬性感謝閱讀Flex編譯器注意看版本是不是Flex3.3SDK,如果不是,則需要更換版本謝謝閱讀Flex搭建好之后,將src目錄下的loginurl.json修改為以下代碼:感謝閱讀{"RSP_HEAD":{"TRAN_SUCCESS":1},精品文檔放心下載"menuList":[{"name":"學生信息管理精品文檔放心下載","leaf":false,"shortCount":0,"nodeaction":":9081/eos-default精品文檔放心下載/m3_uidemo/testPage.html","nodetype":3,感謝閱讀"id":"CMIS","children":[{"appid":"CMIS","name":"學生信息維護精品文檔放心下載","module":"stu/StudentIndex.vxml","leaf":true,"shortCount":0,"nodeaction":謝謝閱讀":9081/eos-default/m3_uidemo/testPage.html","nodetype":3,"id":"謝謝閱讀100"}]}]}這是一段JSON報文,在flex+jump框架中前后臺的數(shù)據傳遞用的就是JSON報文格式。感謝閱讀這樣設置好以后,就可以運行這個Flex框架了,通過點擊,運行后的結果如下圖所示:謝謝閱讀可以輸入任何用戶名和密碼(因為這只是一個模板),點擊登錄,顯示頁面如下:感謝閱讀注意左邊顯示的功能菜單項,是我們剛剛在loginurl.json中配好的信息,不過現(xiàn)在還不能精品文檔放心下載用,只是一個模型而已。如果在點擊時出現(xiàn)了如下錯誤,“Web瀏覽器窗口首先參數(shù)常規(guī)web瀏覽器internetExplorer確謝謝閱讀定,如下圖所示:配置好jumpjump-demo(withEclipse).rardemo謝謝閱讀Eclipseeclipse/eclipse.exe感謝閱讀打開后如下圖所示:導入項目組提供的一個名叫plrm的后臺應用,在這個應用的基礎上進行練習。謝謝閱讀首先需要開發(fā)人員配置一下jdk,用jdk1.5就可以了;感謝閱讀配置config目錄下的jump-db.xmlurl精品文檔放心下載即可,如下代碼所示:(省略,已經設置好)<propertyname="url"value="jdbc:db2://:50000/student"/>謝謝閱讀<propertyname="username"value=""/>感謝閱讀<propertyname="password"value=""/>謝謝閱讀然后點擊start運行一遍,如果不報錯就代表成功了,接下來就是進行代碼的開發(fā)了。精品文檔放心下載前后臺代碼的開發(fā)Flex頁面代碼的編寫1、新建一個stu的包名,如下圖所示:2、創(chuàng)建好stu包以后,在這個包下面創(chuàng)建一個模塊名為StudentIndex,步驟如下圖所示:感謝閱讀點擊完成,生成StudentIndex.mxml,代碼如下:謝謝閱讀<?xmlversion="1.0"encoding="utf-8"?>感謝閱讀<mx:Modulexmlns:mx="http:///2006/mxml"layout="absolute"width="100%"謝謝閱讀height="100%"></mx:Module>index就加載所有的精品文檔放心下載謝謝閱讀構清晰明了。謝謝閱讀生列表信息,編寫好的代碼如下:一、Flex端1、在StudentIndex.mxml中編寫如下代碼感謝閱讀<?xmlversion="1.0"encoding="utf-8"?>感謝閱讀<mx:Modulexmlns:mx="http:///2006/mxml"layout="absolute"width="100%"精品文檔放心下載height="100%"creationComplete="queryList();"xmlns:expand="com.doubleClick.*"謝謝閱讀xmlns:jwolib="http:///2006/mxml"xmlns:bankcomm="com.bankcomm.*">精品文檔放心下載<mx:VBoxwidth="100%"verticalGap="0"height="100%">謝謝閱讀<mx:Panelwidth="100%"title="學生信息管理"paddingTop="10"精品文檔放心下載paddingBottom="10"horizontalAlign="center"layout="vertical">精品文檔放心下載<mx:HBoxwidth="100%"horizontalGap="0">謝謝閱讀<mx:HBoxwidth="15%"horizontalAlign="right"謝謝閱讀verticalAlign="middle"><mx:Labeltext="學生姓名:"width="148"textAlign="right"/>感謝閱讀</mx:HBox><mx:HBoxwidth="35%"horizontalGap="0"verticalAlign="middle">謝謝閱讀<jwolib:TextInputappearAsLabel="false"感謝閱讀change="stuName.showClearButton=(stuName.text!='')"謝謝閱讀clear="stuName.showClearButton=false;"showClearButton="false"謝謝閱讀id="stuName"width="200"maxChars="40"/>謝謝閱讀</mx:HBox><mx:HBoxwidth="15%"horizontalAlign="right"謝謝閱讀verticalAlign="middle"><mx:Labeltext="性別:"width="148"textAlign="right"/>精品文檔放心下載</mx:HBox><mx:HBoxwidth="35%"horizontalGap="0"verticalAlign="middle">謝謝閱讀<bankcomm:MyComboBoxid="sex"width="200"prompt="--請選擇--"精品文檔放心下載showClearButton="true"valueField="data"labelField="label">謝謝閱讀<bankcomm:dataProvider><mx:Array><mx:Objectdata="3"label="男"></mx:Object>謝謝閱讀<mx:Objectdata="1"label="女"></mx:Object>精品文檔放心下載<mx:Objectdata="2"label="未知"></mx:Object>感謝閱讀</mx:Array></bankcomm:dataProvider></bankcomm:MyComboBox></mx:HBox></mx:HBox><mx:HBoxwidth="100%"horizontalGap="0">感謝閱讀<mx:HBoxwidth="15%"horizontalAlign="right"精品文檔放心下載verticalAlign="middle"><mx:Labeltext="出生日期:"width="148"textAlign="right"/>精品文檔放心下載</mx:HBox><mx:HBoxwidth="85%"horizontalGap="0"verticalAlign="middle">精品文檔放心下載<bankcomm:MyDateFieldid="birthStart"width="200"感謝閱讀showClearButton="true"showToday="true"yearNavigationEnabled="true"謝謝閱讀formatString="YYYY-MM-DD"/>謝謝閱讀<mx:Labeltext="-"/><bankcomm:MyDateFieldid="birthEnd"width="200"感謝閱讀showClearButton="true"showToday="true"yearNavigationEnabled="true"謝謝閱讀formatString="YYYY-MM-DD"/>精品文檔放心下載</mx:HBox></mx:HBox><mx:ControlBarheight="32"id="queryBtns"paddingBottom="0"謝謝閱讀paddingTop="0"horizontalAlign="center"color="0x000000">感謝閱讀<mx:Buttonid="selBtn"click="queryList();"感謝閱讀icon="@Embed('assets/page_find.png')"label="查詢"toolTip="查詢"width="70"/>謝謝閱讀<mx:Buttonid="resetBtn"click="initSelect();"精品文檔放心下載icon="@Embed('assets/cross-circle.png')"label="重置"toolTip="重置"width="70"/>精品文檔放心下載</mx:ControlBar></mx:Panel><mx:VBoxwidth="100%"verticalGap="0"height="100%">精品文檔放心下載<mx:HBoxwidth="100%"horizontalAlign="right"horizontalGap="0">感謝閱讀<mx:Buttonid="add"click="add_stu()"精品文檔放心下載icon="@Embed('assets/add.png')"label="新增"toolTip="新增"width="70"/>感謝閱讀<mx:Buttonid="edit"click="edit_stu()"感謝閱讀icon="@Embed('assets/cart_edit.png')"label="修改"toolTip="修改"width="70"/>謝謝閱讀<mx:Buttonid="look"click="stu_detail()"謝謝閱讀icon="@Embed('assets/cart_edit.png')"label="查看"toolTip="查看"width="70"/>精品文檔放心下載<mx:Buttonid="del"click="del_stu()"感謝閱讀icon="@Embed('assets/cart_delete.png')"label="刪除"toolTip="刪除"width="70"/>精品文檔放心下載</mx:HBox><expand:DoubleClickCheckDataGridid="stuGrid"width="100%"謝謝閱讀height="100%"allowMultipleSelection="true"dataProvider="{gridPage.dataProvider}">感謝閱讀<expand:columns><mx:DataGridColumndataField="stuId"headerText="學生編號"精品文檔放心下載dataTipField="stuId"/><mx:DataGridColumndataField="stuName"headerText="學生姓名"感謝閱讀dataTipField="stuName"/><mx:DataGridColumndataField="sexLabel"headerText="性別"感謝閱讀dataTipField="sexLabel"/>精品文檔放心下載<mx:DataGridColumndataField="age"headerText="學生年齡"謝謝閱讀dataTipField="age"/><mx:DataGridColumndataField="birth"headerText="出生日期"感謝閱讀dataTipField="birth"/><mx:DataGridColumndataField="phone"headerText="家庭電話"感謝閱讀dataTipField="phone"/><mx:DataGridColumndataField="address"headerText="家庭住址"謝謝閱讀dataTipField="address"/></expand:columns></expand:DoubleClickCheckDataGrid>感謝閱讀<bankcomm:GridPageid="gridPage"width="100%"dataRoot="ROOT"謝謝閱讀dataUrl="{Global.IP}queryStudentWithPage.ajax">謝謝閱讀</bankcomm:GridPage></mx:VBox></mx:VBox><mx:Script><![CDATA[importcom.bankcomm.Connect;謝謝閱讀importcom.bankcomm.URLParameter;謝謝閱讀importmx.controls.Alert;importmx.core.Application;謝謝閱讀importmx.events.CloseEvent;謝謝閱讀importmx.managers.PopUpManager;感謝閱讀importxxx_Util.Global;//新增學生信息后臺訪問路徑privatevaraddStuUrl:String=Global.IP+"addStu.ajax";精品文檔放心下載//修改學生信息后臺訪問路徑privatevareditStuUrl:String=Global.IP+"editStuByStuId.ajax";精品文檔放心下載//刪除學生信息后臺訪問路徑privatevardelStuUrl:String=Global.IP+"delStuByStuId.ajax";謝謝閱讀//設置查詢學生信息的條件privatefunctionsetObj():Object{謝謝閱讀varobj:Object=newObject();謝謝閱讀obj.stuName=stuName.text;obj.sex=sex.selectedItem==null?"":sex.selectedItem.data;精品文檔放心下載obj.birthStart=birthStart.text;精品文檔放心下載obj.birthEnd=birthEnd.text;感謝閱讀returnobj;}//查詢學生信息privatefunctionqueryList():void{謝謝閱讀gridPage.param=setObj;gridPage.loadData();}//點擊重置按鈕時調度,用來清空條件元素privatefunctioninitSelect():void{感謝閱讀stuName.text="";stuName.htmlText="";sex.selectedValue="";sex.selectedIndex=-1;birthStart.text="";birthEnd.text="";}//學生信息新增privatefunctionadd_stu():void{感謝閱讀//創(chuàng)建一個彈出式的TitleWindow,用來進行學生信息的新增感謝閱讀varstudentOper:StudentOper=StudentOper(PopUpManager.createPopUp(Application.applicatio精品文檔放心下載n.parent,StudentOper,true));感謝閱讀//設置TitleWindow的標題信息studentOper.title="學生信息新增";謝謝閱讀//定義頁面元素為可編輯的studentOper.writable=true;謝謝閱讀//給TitleWindow的sure按鈕增加一個監(jiān)聽精品文檔放心下載studentOper.sure.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):謝謝閱讀void{if(studentOper.checkStu())感謝閱讀{//設置新增學生信息所需的參數(shù)varparam:URLParameter=newURLParameter();精品文檔放心下載param.trainID="";param.trainProcess="";param.reqBody={PARAMS:studentOper.getValues()};精品文檔放心下載//訪問后臺進行學生信息的新增Connect.request({url:addStuUrl,params:param.toParameter(),callback:function(r:Objec謝謝閱讀t,e:Event):void{//titileWindow精品文檔放心下載息if(r.RSP_HEAD.TRAN_SUCCESS=="1")精品文檔放心下載{//通過派發(fā)出一個CloseEvent.Close事件來關閉精品文檔放心下載TitleWindowstudentOper.dispatchEvent(new精品文檔放心下載CloseEvent(CloseEvent.CLOSE));感謝閱讀gridPage.loadData();}}});}});PopUpManager.centerPopUp(studentOper);謝謝閱讀}//學生信息修改privatefunctionedit_stu():void{感謝閱讀//判斷主頁面的列表是否選擇了記錄if(stuGrid.selectedItems==null||stuGrid.selectedItems.length==0)精品文檔放心下載{Alert.show("請選擇需要修改的學生記錄","提示");感謝閱讀return;}elseif(stuGrid.selectedItems.length!=1){精品文檔放心下載Alert.show("只能選擇一條學生記錄進行修改","提示");謝謝閱讀return;}//創(chuàng)建一個彈出式的TitleWindow,用來進行學生信息的修改感謝閱讀varstudentOper:StudentOper=StudentOper(PopUpManager.createPopUp(Application.applicatio感謝閱讀n.parent,StudentOper,true));謝謝閱讀//設置TitleWindow的標題信息studentOper.title="學生信息修改";精品文檔放心下載//定義頁面元素為可編輯的studentOper.writable=true;謝謝閱讀//給TitleWindow的頁面元素設置值studentOper.setValues(stuGrid.selectedItem);謝謝閱讀//給TitleWindow的sure按鈕增加一個監(jiān)聽感謝閱讀studentOper.sure.addEventListener(MouseEvent.CLICK,function(event:MouseEvent):精品文檔放心下載void{if(studentOper.checkStu())謝謝閱讀{//設置修改學生信息所需的參數(shù)varparam:URLParameter=newURLParameter();謝謝閱讀param.trainID="";param.trainProcess="";param.reqBody={PARAMS:studentOper.getValues()};感謝閱讀//訪問后臺進行學生信息的修改Connect.request({url:editStuUrl,params:param.toParameter(),callback:function(r:O謝謝閱讀bject,e:Event):void{//titileWindow感謝閱讀信息if(r.RSP_HEAD.TRAN_SUCCESS=="1")謝謝閱讀{//通過派發(fā)出一個CloseEvent.Close事件來關閉謝謝閱讀TitleWindowstudentOper.dispatchEvent(new感謝閱讀CloseEvent(CloseEvent.CLOSE));精品文檔放心下載gridPage.loadData();}}});}});PopUpManager.centerPopUp(studentOper);謝謝閱讀}//學生信息刪除privatefunctiondel_stu():void{精品文檔放心下載//判斷主頁面的列表是否選擇了記錄if(stuGrid.selectedItems==null||stuGrid.selectedItems.length==0)謝謝閱讀{Alert.show("請選擇需要刪除的學生記錄","提示");謝謝閱讀return;}//保存選擇的學生編號varstuIds:String="";//通過循環(huán)來取得學生編號信息,并組合成一個字符串用來作為刪除操作的感謝閱讀參數(shù)for(vari:int=0;i<stuGrid.selectedItems.length;i++)感謝閱讀{stuIds+="'"+stuGrid.selectedItems[i].stuId+"',";謝謝閱讀}stuIds=stuIds.substring(0,stuIds.length-1);精品文檔放心下載//設置刪除學生信息所需的參數(shù)varparam:URLParameter=newURLParameter();謝謝閱讀param.trainID="";param.trainProcess="";param.reqBody={PARAMS:{stuIds:stuIds}};感謝閱讀//訪問后臺進行學生信息的修改Connect.request({url:delStuUrl,params:param.toParameter(),callback:function(r:謝謝閱讀Object,e:Event):void{//如果刪除成功,則給出提示信息,并刷新主頁面的列表信息精品文檔放心下載if(r.RSP_HEAD.TRAN_SUCCESS=="1")感謝閱讀{Alert.show("成功刪除","提示");gridPage.loadData();}}});}//學生信息查看privatefunctionstu_detail():void{感謝閱讀//判斷主頁面的列表是否選擇了記錄if(stuGrid.selectedItems==null||stuGrid.selectedItems.length==0)謝謝閱讀{Alert.show("請選擇需要查看的學生記錄","提示");精品文檔放心下載return;}elseif(stuGrid.selectedItems.length!=1){精品文檔放心下載Alert.show("只能選擇一條學生記錄進行查看","提示");謝謝閱讀return;}//創(chuàng)建一個彈出式的TitleWindow,用來進行學生信息的查看感謝閱讀varstudentOper:StudentOper=StudentOper(PopUpManager.createPopUp(Application.applicatio精品文檔放心下載n.parent,StudentOper,true));感謝閱讀//設置TitleWindow的標題信息studentOper.title="學生信息查看";謝謝閱讀//定義頁面元素為不可編輯studentOper.writable=false;感謝閱讀//設置sure和reset按鈕不可見studentOper.sure.visible=false;感謝閱讀studentOper.reset.visible=false;謝謝閱讀studentOper.sure.includeInLayout=false;謝謝閱讀studentOper.reset.includeInLayout=false;精品文檔放心下載//給TitleWindow的頁面元素設置值studentOper.setValues(stuGrid.selectedItem);謝謝閱讀PopUpManager.centerPopUp(studentOper);精品文檔放心下載}]]></mx:Script></mx:Module>2、在stu包下面在創(chuàng)建一個StudentOper.mxml的titleWindow,用來進行學生信息的增、刪、精品文檔放心下載改、查等操作,創(chuàng)建過程如下所示:選擇MXML組件,最后點擊完成,TitleWindow創(chuàng)建完畢。3、代碼如下:<?xmlversion="1.0"encoding="utf-8"?>精品文檔放心下載<mx:TitleWindowxmlns:mx="http:///2006/mxml"layout="vertical"感謝閱讀showCloseButton="true"close="titlewindow_closeHandler()"width="800"height="200"感謝閱讀xmlns:jwolib="http:///2006/mxml"xmlns:bankcomm="com.bankcomm.*">精品文檔放心下載<mx:Script><![CDATA[importmx.events.CloseEvent;感謝閱讀importmx.managers.PopUpManager;精品文檔放心下載importmx.validators.Validator;精品文檔放心下載[Bindable]publicvarwritable:Boolean=true;感謝閱讀//用來保存用戶點擊修改按鈕時從主頁面中傳過來的對象感謝閱讀privatevaroldObj:Object=null;精品文檔放心下載//保存學生編號privatevaroldStuId:String="";精品文檔放心下載//返回頁面元素對應的值publicfunctiongetValues():Object{感謝閱讀varobj:Object=newObject();精品文檔放心下載obj.stuName=stuName.text;obj.sex=sex.selectedItem.data;精品文檔放心下載obj.age=age.text;obj.birth=birth.text;obj.phone=phone.text;obj.address=address.text;obj.stuId=oldStuId;returnobj;}//給頁面元素進行賦值publicfunctionsetValues(obj:Object):void{精品文檔放心下載oldStuId=obj.stuId;stuName.text=obj.stuName;stuName.htmlText=obj.stuName;感謝閱讀sex.selectedValue=obj.sex;感謝閱讀age.text=obj.age;age.htmlText=obj.age;birth.text=obj.birth;phone.text=obj.phone;phone.htmlText=obj.phone;address.text=obj.address;address.htmlText=obj.address;感謝閱讀oldObj=obj;}//重置頁面元素中的值publicfunctionresetS():void{謝謝閱讀if(oldObj==null){stuName.text="";stuName.htmlText="";stuName.showClearButton=false;謝謝閱讀sex.selectedIndex=0;age.text="";age.htmlText="";age.showClearButton=false;感謝閱讀birth.text="";phone.text="";phone.htmlText="";phone.showClearButton=false;謝謝閱讀address.text="";address.htmlText="";address.showClearButton=false;感謝閱讀}else{stuName.text=oldObj.stuName;謝謝閱讀stuName.htmlText=oldObj.stuName;感謝閱讀sex.selectedValue=oldObj.sex;精品文檔放心下載age.text=oldObj.age;age.htmlText=oldObj.age;birth.text=oldObj.birth;phone.text=oldObj.phone;phone.htmlText=oldObj.phone;精品文檔放心下載address.text=oldObj.address;精品文檔放心下載address.htmlText=oldObj.address;謝謝閱讀}}//給TitleWindow增加關閉函數(shù)protectedfunctiontitlewindow_closeHandler():void感謝閱讀{PopUpManager.removePopUp(this);謝謝閱讀}//對頁面元素值進行數(shù)據校驗publicfunctioncheckStu():Boolean{謝謝閱讀vararray:Array=[stuNameValid,ageValid,birthValid,phoneValid,addressValid];謝謝閱讀if(Validator.validateAll(array).length==0)感謝閱讀{returntrue;}returnfalse;}]]></mx:Script><mx:VBoxwidth="100%"height="100%"verticalGap="5"paddingTop="10"感謝閱讀paddingBottom="10"><mx:HBoxwidth="100%"><mx:HBoxwidth="15%"horizontalAlign="right">謝謝閱讀<mx:Labeltext="學生姓名:"width="148"textAlign="right"/>感謝閱讀</mx:HBox><mx:HBoxwidth="35%"><jwolib:TextInputappearAsLabel="false"精品文檔放心下載change="stuName.showClearButton=(stuName.text!='')"謝謝閱讀clear="stuName.showClearButton=false;"showClearButton="false"精品文檔放心下載id="stuName"width="200"maxChars="40"感謝閱讀editable="{writable}"/></mx:HBox><mx:HBoxwidth="15%"horizontalAlign="right">謝謝閱讀<mx:Labeltext="學生性別:"width="148"textAlign="right"/>感謝閱讀</mx:HBox><mx:HBoxwidth="35%"><bankcomm:MyComboBoxid="sex"width="200"showClearButton="true"感謝閱讀valueField="data"labelField="label"enabled="{writable}">精品文檔放心下載<bankcomm:dataProvider><mx:Array><mx:Objectdata="3"label="男"></mx:Object>謝謝閱讀<mx:Objectdata="1"label="女"></mx:Object>精品文檔放心下載<mx:Objectdata="2"label="未知"></mx:Object>謝謝閱讀</mx:Array></bankcomm:dataProvider></bankcomm:MyComboBox></mx:HBox></mx:HBox><mx:HBoxwidth="100%"><mx:HBoxwidth="15%"horizontalAlign="right">謝謝閱讀<mx:Labeltext="學生年齡:"width="148"textAlign="right"/>謝謝閱讀</mx:HBox><mx:HBoxwidth="35%"><jwolib:TextInputappearAsLabel="false"精品文檔放心下載change="age.showClearButton=(age.text!='')"clear="age.showClearButton=false;"感謝閱讀showClearButton="false"id="age"width="200"restrict="0-9"感謝閱讀editable="{writable}"/></mx:HBox><mx:HBoxwidth="15%"horizontalAlign="right">精品文檔放心下載<mx:Labeltext="出生日期:"width="148"textAlign="right"/>謝謝閱讀</mx:HBox><mx:HBoxwidth="35%"><bankcomm:MyDateFieldshowClearButton="true"精品文檔放心下載formatString="YYYY-MM-DD"showToday="true"width="200"id="birth"感謝閱讀enabled="{writable}"/></mx:HBox></mx:HBox><mx:HBoxwidth="100%"><mx:HBoxwidth="15%"horizontalAlign="right">感謝閱讀<mx:Labeltext="家庭電話:"width="148"textAlign="right"/>感謝閱讀</mx:HBox><mx:HBoxwidth="35%"><jwolib:TextInputappearAsLabel="false"精品文檔放心下載change="phone.showClearButton=(phone.text!='')"感謝閱讀clear="phone.showClearButton=false;"showClearButton="false"謝謝閱讀id="phone"width="200"editable="{writable}"/>感謝閱讀</mx:HBox><mx:HBoxwidth="15%"horizontalAlign="right">謝謝閱讀<mx:Labeltext="家庭住址:"width="148"textAlign="right"/>感謝閱讀</mx:HBox><mx:HBoxwidth="35%"><jwolib:TextInputappearAsLabel="false"精品文檔放心下載change="address.showClearButton=(address.text!='')"謝謝閱讀clear="address.showClearButton=false;"showClearButton="false"感謝閱讀id="address"width="200"editable="{writable}"/></mx:HBox></mx:HBox></mx:VBox><mx:ControlBarheight="32"id="queryBtns"paddingBottom="0"paddingTop="0"謝謝閱讀horizontalAlign="center"color="0x000000">精品文檔放心下載<mx:Buttonid="sure"icon="@Embed('assets/page_find.png')"label="確定"感謝閱讀toolTip="確定"width="70"/><mx:Buttonid="reset"click="resetS()"感謝閱讀icon="@Embed('assets/cross-circle.png')"label="重置"toolTip="重置"width="70"/>謝謝閱讀<mx:Buttonid="close"click="titlewindow_closeHandler()"感謝閱讀icon="@Embed('assets/cross-circle.png')"label="關閉"toolTip="關閉"width="70"/>謝謝閱讀</mx:ControlBar><mx:StringValidatorid="stuNameValid"required="true"requiredFieldError="此值感謝閱讀不能為空"source="{stuName}"property="text"trigger="{sure}"感謝閱讀triggerEvent="click"/><mx:StringValidatorid="ageValid"required="true"requiredFieldError="此值不能謝謝閱讀為空"source="{age}"property="text"trigger="{sure}"triggerEvent="click"/>感謝閱讀<mx:DateValidatorid="birthValid"required="true"requiredFieldError="此值不能精品文檔放心下載為空"source="{birth}"property="text"trigger="{sure}"inputFormat="yyyy-mm-dd"精品文檔放心下載triggerEvent="click"/><mx:StringValidatorid="phoneValid"required="true"requiredFieldError="此值不感謝閱讀能為空"source="{phone}"property="text"trigger="{sure}"triggerEvent="click"/>感謝閱讀<mx:StringValidatorid="addressValid"required="true"requiredFieldError="此值謝謝閱讀不能為空"source="{address}"property="text"trigger="{sure}"感謝閱讀triggerEvent="click"/><mx:NumberValidatorid="sexValid"lowerThanMinError="此項為必選項"精品文檔放心下載minValue="0"source="{sex}"property="selectedIndex"trigger="{sure}"感謝閱讀triggerEvent="click"/></mx:TitleWindow>二、Jump端1、在com.bankcomm.plrm.action目錄下創(chuàng)建一個Class類,名叫StuAction,創(chuàng)建好之后精品文檔放心下載在類中編寫如下代碼:packagecom.bankcomm.plrm.action;感謝閱讀importjava.util.HashMap;importjava.util.List;importjava.util.Map;importorg.springframework.beans.factory.annotation.Autowired;精品文檔放心下載importcom.bocom.jump.bp.core.Action;謝謝閱讀importcom.bocom.jump.bp.core.Context;感謝閱讀importcom.bocom.jump.bp.core.CoreException;感謝閱讀importcom.bocom.jump.bp.service.sqlmap.SqlMap;精品文檔放心下載publicclassStuActionimplementsAction{精品文檔放心下載@AutowiredprivateSqlMapsqlmap;//分頁查詢學生列表信息publicvoidselectStudentWithPage(Contextcontext)throwsCoreException{謝謝閱讀try{Map<String,Object>dataMap=context.getDataMap();感謝閱讀Map<String,String>map=(Map<String,String>)感謝閱讀dataMap.get("PARAMS");intcount=sqlmap.queryForObject("STUDENT.jump_selectStudentCount",精品文檔放心下載map);Map<String,Integer>pageCond=(Map<String,謝謝閱讀Integer>)dataMap.get("PAGE_COND");感謝閱讀intlimit=pageCond.get("LIMIT");精品文檔放心下載if(limit<10)limit=10;intstart=pageCond.get("START");感謝閱讀ListstuList=null;if(count>0){stuList=sqlmap.queryForList("STUDENT.jump_selectStudentWithPage",謝謝閱讀map,start,limit);}Mapls=newHashMap();ls.put("LIMIT",limit);ls.put("START",start);ls.put("COUNT",count);context.setData("ROOT",stuList);精品文檔放心下載context.setData("PAGE_COND",ls);謝謝閱讀}catch(Exceptione){e.printStackTrace();thrownewCoreException("學生信息查詢","學生信息查詢失敗");精品文檔放心下載}}//根據學生編號查詢學生詳細信息publicvoidselectStudentByStuId(Contextcontext)throwsCoreException{感謝閱讀try{Map<String,Object>dataMap=context.getDataMap();感謝閱讀Map<String,String>map=(Map<String,String>)感謝閱讀dataMap.get("PARAMS");MapstuMap=sqlmap.queryForObject("STUDENT.jump_selectStudentByStuId",map);謝謝閱讀context.setData("ROOT",stuMap);精品文檔放心下載}catch(Exceptione){e.printStackTrace();thrownewCoreException("","");感謝閱讀}}//新增學生信息publicvoidaddStudent(Contextcontext)throwsCoreException{謝謝閱讀try{Map<String,Object>dataMap=context.getDataMap();精品文檔放心下載Map<String,String>map=(Map<String,String>)謝謝閱讀dataMap.get("PARAMS");StringstuId=sqlmap.queryForObject("STUDENT.jump_selectStudentId");精品文檔放心下載map.put("stuId",stuId);sqlmap.insert("STUDENT.jump_addStudent",map);感謝閱讀}catch(Exceptione){e.printStackTrace();thrownewCoreException("學生信息新增","學生信息新增失敗");感謝閱讀}}//根據學生編號修改學生信息publicvoideditStudentByStuId(Contextcontext)throwsCoreException{精品文檔放心下載try{Map<String,Object>dataMap=context.getDataMap();精品文檔放心下載Map<String,String>map=(Map<String,String>)精品文檔放心下載dataMap.get("PARAMS");sqlmap.update("STUDENT.jump_editStudentByStuId",map);精品文檔放心下載}catch(Exceptione){e.printStackTrace();thrownewCoreException("學生信息修改","學生信息修改失敗");精品文檔放心下載}}//根據學生編號字符串刪除學生信息publicvoiddelStudentByStuIds(Contextcontext)throwsCoreException{謝謝閱讀try{Map<String,Object>dataMap=context.getDataMap();謝謝閱讀Map<String,String>map=(Map<String,String>)感謝閱讀dataMap.get("PARAMS");sqlmap.delete("STUDENT.jump_delStudentByStuIds",map);精品文檔放心下載}catch(Exceptione){e.printStackTrace();thrownewCoreException("學生信息刪除","學生信息刪除失敗");感謝閱讀}}}2、編寫好上述代碼之后然后在config.sqlmap.mappings目錄下創(chuàng)建一個精品文檔放心下載Student_Mapping.xml,這個文件是用來編寫操作中需要用的sql,代碼如下:感謝閱讀<?xmlversion="1.0"encoding="UTF-8"?>感謝閱讀<!DOCTYPEmapperPUBLIC"-////DTDMapper3.0//EN"謝謝閱讀"/dtd/ibatis-3-mapper.dtd">感謝閱讀<mappernamespace="STUDENT">謝謝閱讀<resultMapid="jump_BaseResultMap"type="java.util.HashMap">感謝閱讀<resultcolumn="ROWNO"property="rowNo"jdbcType="INTEGER"/>謝謝閱讀<resultcolumn="STUID"property="stuId"jdbcType="VARCHAR"/>感謝閱讀<resultcolumn="STUNAME"property="stuName"jdbcType="VARCHAR"/>精品文檔放心下載<resultcolumn="SEX"property="sex"jdbcType="VARCHAR"/>感謝閱讀<resultcolumn="SEXLABEL"property="sexLabel"jdbcType="VARCHAR"/>精品文檔放心下載<resultcolumn="AGE"property="age"jdbcType="INTEGER"/>謝謝閱讀<resultcolumn="ADDRESS"property="address"jdbcType="VARCHAR"/>感謝閱讀<resultcolumn="PHONE"property="phone"jdbcType="VARCHAR"/>謝謝閱讀<resultcolumn="BIRTH"property="birth"jdbcType="DATE"/>感謝閱讀</resultMap><!--根據條件查詢學生信息總數(shù)--><selectid="jump_selectStudentCount"resultType="java.lang.Integer">謝謝閱讀SELECTcount(*)asCOUNTfromSTU感謝閱讀<where><iftest="stuName!=nullandstuName!=''">感謝閱讀STUNAMELIKE'%${stuName}%'謝謝閱讀</if><iftest="sex!=nullandsex!=''">精品文檔放心下載ANDSEX=#{sex:VARCHAR}</if><iftest="birthStart!=nullandbirthStart!=''">感謝閱讀ANDBIRTH>=#{birthStart:DATE}感謝閱讀</if><iftest="birthEnd!=nullandbirthEnd!=''">感謝閱讀ANDBIRTH<![CDATA[<]]>=#{birthEnd:DATE}感謝閱讀</if></where></select><!--根據條件分頁查詢學生信息--><selectid="jump_selectStudentWithPage"resultMap="jump_BaseResultMap">精品文檔放心下載SELECTrow_number()over()asROWNO,感謝閱讀STUID,STUNAME,CASEWHENSEX='1'THEN'女'精品文檔放心下載WHENSEX='2'THEN'未知'WHENSEX='3'THEN'男'ELSE'未知'ENDASSEXLABEL,精品文檔放心下載SEX,AGE,ADDRESS,PHONE,BIRTHFROMSTU感謝閱讀<where><iftest="stuName!=nullandstuName!=''">精品文檔放心下載STUNAMELIKE'%${stuName}%'精品文檔放心下載</if><iftest="sex!=nullandsex!=''">感謝閱讀ANDSEX=#{sex:VARCHAR}</if><iftest="birthStart!=nullandbirthStart!=''">謝謝閱讀ANDBIRTH>=#{birthStart:DATE}精品文檔放心下載</if><iftest="birthEnd!=nullandbirthEnd!=''">感謝閱讀ANDBIRTH<![CDATA[<]]>=#{birthEnd:DATE}謝謝閱讀</if></where></select><!--查詢學生信息表中比最大編號大1的字符串-->精品文檔放心下載<selectid="jump_selectStudentId"resultType="java.lang.String">感謝閱讀SELECTCAST(MAX(STUID)ASINTEGER)+1ASSTUIDFROMSTU謝謝閱讀</select><!--新增學生信息--><insertid="jump_addStudent">感謝閱讀insertintoSTUvalues(#{stuId:VARCHAR},#{stuName:VARCHAR},#{sex:VARCHAR},#{age:INTEGER}精品文檔放心下載,#{address:VARCHAR},#{phone:VARCHAR},#{birth:DATE})精品文檔放心下載</insert><!--根據學生編號修改學生信息--><updateid="jump_editStudentByStuId">感謝閱讀updateSTUsetstuname=#{stuName:VARCHAR},sex=#{sex:VARCHAR},age=#{age:INTEGER},address=#{address:精品文檔放心下載VARCHAR},phone=#{phone:VARCHAR},birth=#{birth:DATE}wherestuId=#{stuId:VARCHAR}精品文檔放心下載</up
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 預制構件供應購銷協(xié)議
- 家長對孩子進行生命教育的保證書
- 大樓租賃合同范本
- 自覺維護公共秩序
- 防水工程保證書范文編寫規(guī)范
- 土方建設勞務分包合同
- 信息化顧問服務合同
- 圍墻建設合同模板范本
- 木結構勞務分包協(xié)議
- 酒店家紡采購合同
- 幼兒園班級幼兒圖書目錄清單(大中小班)
- 烈士陵園的數(shù)字化轉型與智能服務
- 醫(yī)院與陪護公司的協(xié)議范文
- 古琴介紹(英文)(部編)課件
- DL-T5704-2014火力發(fā)電廠熱力設備及管道保溫防腐施工質量驗收規(guī)程
- 2024年山東省煙臺市中考道德與法治試題卷
- 女性生殖健康與疾病智慧樹知到期末考試答案章節(jié)答案2024年山東中醫(yī)藥大學
- (高清版)JGT 225-2020 預應力混凝土用金屬波紋管
- 2023-2024學年四川省綿陽市九年級上冊期末化學試題(附答案)
- 心電圖進修匯報
- 中醫(yī)科進修總結匯報
評論
0/150
提交評論