??xml version="1.0" encoding="utf-8" standalone="yes"?>日韩专区中文字幕,国产精品三级在线,久久影院100000精品http://www.aygfsteel.com/xiaohuzi2008/面朝大vQ春暖花开zh-cnTue, 17 Jun 2025 18:36:47 GMTTue, 17 Jun 2025 18:36:47 GMT60让Extjs EditorGridPanel ~辑时支持方向键http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403361.html胡?/dc:creator>胡?/author>Tue, 27 Aug 2013 05:10:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403361.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/403361.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403361.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/403361.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/403361.html在用 extjs editorgridpanel q行输入~辑的时? 默认情况下只支持使用 tab 键可以实现焦点切? 如果惌editorgridpanel 在编辑时通过方向键来实现焦点跌{切换Q只需加上以下代码Q?/span>
//让grid支持方向键盘 by liongis@163.com
Ext.override(Ext.grid.CellSelectionModel, {
    onEditorKey : function(field, e) {
        var smodel 
= this;
        var k 
= e.getKey(), newCell, g = smodel.grid, ed = g.activeEditor;
        
switch(k){
            
case e.TAB:
                 e.stopEvent();
                 ed.completeEdit();
                 
if (e.shiftKey) {
                     newCell 
= g.walkCells(ed.row, ed.col-1-1, smodel.acceptsNav, smodel);
                 } 
else {
                     newCell 
= g.walkCells(ed.row, ed.col+11, smodel.acceptsNav, smodel);
                 }
                 
if (ed.col == 1) {
                     
if (e.shiftKey) {
                         newCell 
= g.walkCells(ed.row, ed.col+1-1, smodel.acceptsNav, smodel);
                     } 
else {
                         newCell 
= g.walkCells(ed.row, ed.col+11, smodel.acceptsNav, smodel);
                     }
                 }
                
break;
            
case e.UP:
                 e.stopEvent();
                 ed.completeEdit();
                 newCell 
= g.walkCells(ed.row-1, ed.col, -1, smodel.acceptsNav, smodel);
                
break;
            
case e.DOWN:
                 e.stopEvent();
                 ed.completeEdit();
                 newCell 
= g.walkCells(ed.row+1, ed.col, 1, smodel.acceptsNav, smodel);
                
break;
            
case e.LEFT:
                 e.stopEvent();
                 ed.completeEdit();
                 newCell 
= g.walkCells(ed.row, ed.col-1-1, smodel.acceptsNav, smodel);
                 
break;
             
case e.RIGHT:
                 e.stopEvent();
                 ed.completeEdit();
                 newCell 
= g.walkCells(ed.row, ed.col+11, smodel.acceptsNav, smodel);
                   
break;
        }
       
if (newCell) {
            g.startEditing(newCell[
0], newCell[1]);
       }
     }
});
注意Q?/span>q里重写的是QCellSelectionModel Q而不是RowSelectionMode
原文Q?div>http://www.cnblogs.com/liongis/p/3284620.html

]]>
ExtJs控g属性配|详l?/title><link>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403359.html</link><dc:creator>胡?/dc:creator><author>胡?/author><pubDate>Tue, 27 Aug 2013 04:42:00 GMT</pubDate><guid>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403359.html</guid><wfw:comment>http://www.aygfsteel.com/xiaohuzi2008/comments/403359.html</wfw:comment><comments>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403359.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/403359.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/403359.html</trackback:ping><description><![CDATA[<div><h2><span style="font-family: 宋体; font-size: 14pt;"><strong>序言Q?/strong></span></h2> <p><span style="font-family: 宋体; font-size: 14pt;"><strong>   </strong><span style="font-size: 15px;">1.本文摘自|络Q看控g命名像是4.0以前的版本,但控件属性配|仍然可以借鉴Q不之处,以后目用到时再l完善)?/span></span></p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.TimeField:</strong></span></h2> <p>  <span style="font-size: 15px;">配置: </span><br /><span style="font-size: 15px;">           maxValueQ列表中允许的最大时?nbsp;</span><br /><span style="font-size: 15px;">           maxTextQ当旉大于最大值时的错误提CZ?nbsp;</span><br /><span style="font-size: 15px;">           minValueQ列表中允许的最时?nbsp;</span><br /><span style="font-size: 15px;">           minTextQ当旉于最值时的错误提CZ?nbsp;</span><br /><span style="font-size: 15px;">           incrementQ两个相邻选项间的旉间隔Q默认ؓ15分钟 </span><br /><span style="font-size: 15px;">           formatQ显C格式,默认?#8220;g:i A”。一般?#8220;H:i:s” </span><br /><span style="font-size: 15px;">                HQ带前缀0?4时 </span><br /><span style="font-size: 15px;">                 iQ带前缀0的分?nbsp;</span><br /><span style="font-size: 15px;">                sQ带前缀0的秒 </span><br /><span style="font-size: 15px;">           invalidTextQ当旉值非法时昄的提CZ?nbsp;</span><br /><span style="font-size: 15px;">           altFormatsQ多个时间输入格式组成的字符Ԍ不同的格式之间?#8220;|”q行分割</span></p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.FieldSet</strong></span></h2> <p>    animCollapseQ动L叠,默认为false <br />           checkboxToggleQ设|是否显C字D集的checkbox选择框,默认为false <br />           checkboxNameQ指定字D集中用于展开或隐藏字D集面板的checkbox的名字,该属性只有在checkboxToggle为true时生?nbsp;<br />           labelWidthQ字D|{宽度Q可以联到子容?nbsp;<br />           layoutQ布局Q默认ؓform</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.DateFied</strong></span></h2> <p>    maxValueQ允讔R择的最大日?nbsp;<br />           maxTextQ当日期大于最大值时的错误提CZ?nbsp;<br />           minValueQ允讔R择的最时?nbsp;<br />           minTextQ当日期于最值时的错误提CZ?nbsp;<br />           formatQ日期显C格式,默认?#8220;m/d/y”Q一般?#8220;Y-m-d” <br />               YQ四位年?nbsp;<br />               mQ带前缀0的月?nbsp;<br />               dQ带前缀0的日?nbsp;<br />               yQ两位年?nbsp;<br />               nQ不带前~0的月?nbsp;<br />               jQ不带前~0的日?nbsp;<br />               wQ星期的数字Q?表示星期日,1代表星期一 <br />           showTodayQ是否显CZ天按钮,默认为true <br />           altFormatsQ多个日期输入格式组成的字符Ԍ不同的格式之间?#8220;|”q行分割Q默认gؓ'm/d/Y|n/j/Y|n/j/y|m/j /y|n/d/y|m/j/Y|n/d/Y|m-d-y|m-d-Y|m/d|m-d|md|mdy|mdY|d|Y-m-d' <br />           disabledDatesQ禁止选择的日期组成的数组 <br />           disabledDatesTextQ选择选日期时昄的提CZ?nbsp;<br />           disabledDaysQ禁止选择的星期组成的数组Q?代表星期日,1代表星期一 <br />           disabledDaysTextQ选择选星期时昄的提CZ?nbsp;<br />           invalidTextQ当日期值非法时昄的提CZ?nbsp;<br />     ҎQ?nbsp;<br />           getValue()Q取得日期?/p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.ComboBox</strong></span></h2> <p>    displayFieldQ被昄在下拉框中的字段?nbsp;<br />           editableQ是否可~辑Q默认ؓtrue <br />           forceSelectionQ输入值是否严gؓ待选列表中存在的倹{如果输入不存在的|会自动选择W一个最接近的倹{?nbsp;<br />           hiddenNameQ隐藏字D늚名字Q如果提供该参数则一个隐藏字D将被创建,用来存储所选|当表单提交时在服务器端可以通过该名字取得列表中的所选?nbsp;<br />           listWidthQ下拉列表的宽度 <br />           minListWidthQ下拉列表的最宽度,默认?0像素 <br />           loadingTextQ当下拉框加载数据时昄的提CZ息,只有当mode='remote'时才会生?nbsp;<br />           maxHeightQ下拉列表框的最大高度,默认?00像素 <br />           minCharsQ下拉列表框自动选择前用户需要输入的最字W数量。mode='remote'默认?Qmode='local'默认? <br />           modeQ下拉列表框的数据读取模式。remotedq程数据Qlocald本地数据 <br />           pageSizeQ下拉列表框的分大。该设|只在mode='remote'时生?nbsp;<br />           queryParamQ查询的名字Q默认ؓ'query'Q将被传递到查询字符串中 <br />           allQueryQ一个发往服务器用来查询全部信息的查询字符Ԍ默认为空字符?' <br />           selectOnFocusQ当获得焦点时立刻选择一个已存在的列表项。默认ؓfalseQ此只有在editable=true时才会生?nbsp;<br />           storeQ列表框l定的数据源 <br />           transformQ将面中已存在的元素{换ؓl合?nbsp;<br />           lazyInitQg时初始化下拉列表Q默认ؓtrue <br />           lazyRenderQg时渲染,默认为false <br />           triggerActionQ设|单击触发按钮时执行的默认操作,有效值包括all和queryQ默认ؓqueryQ如果设|ؓall则会执行allQuery中设|的查询 <br />           typeAheadQ设|在输入q程中是否自动选择匚w的剩余部分文本(选择W一个满x件的Q,默认为false <br />           valueQ初始化l合框中的?nbsp;<br />           valueFieldQ组合框的值字D?nbsp;<br />           valueNotFoundTextQg存在时的提示信息 <br />           tplQExt模板字符串或模板对象Q可以通过该配|项自定义下拉列表的昄方式 <br />     ҎQ?nbsp;<br />           clearValue()Q清I字D当前?nbsp;<br />           doQuery( String query, Boolean forceAll )Q?nbsp;<br />           getValue()Q?nbsp;<br />           getStore()Q?nbsp;<br />           setValue( String value )Q?/p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.from.RadioGroup</strong></span></h2> <p>    allowBlankQ?nbsp;<br />           blankTextQ?/p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.Radio;</strong></span></h2> <p>    getGroupValue()Q?nbsp;<br />           setValue( value {String/Boolean} )Q?/p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.CheckboxGroup</strong></span></h2> <p>     allowBlankQ是否允怸选择Q默认ؓtrue <br />           blankTextQ?nbsp;<br />           columnsQ显C的列数Q可选值包括:固定值auto、数倹{数l(整数、小敎ͼ <br />           itemsQ对象数l?nbsp;<br />           verticalQ是否垂直方向显C对象,默认为false</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.Checkbox</strong></span></h2> <p>  boxLabelQ复选框的文字描q?nbsp;<br />           checkedQ复选框是否被选择Q默认ؓfalse <br />           handlerQ当checked值改变时触发的函敎ͼ函数包含两个参数Qcheckbox、checked <br />           inputValueQ?nbsp;<br />     ҎQ?nbsp;<br />           getValue()Q返回复选框的checked状?nbsp;<br />           setValue( Boolean/String checked )Q?/p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.NumberField</strong></span></h2> <p>      allowDecimalsQ是否允许输入小敎ͼ默认为true <br />           allowNegativeQ是否允许输入负敎ͼ默认为true <br />           baseCharsQ输入的有效数字集合Q默认ؓ'0123456789' <br />           decimalPrecisionQ数字的_ֺQ默认保留小数点??nbsp;<br />           decimalSeparatorQ十q制分隔W,默认?.' <br />           maxValueQ允许输入的最大数?nbsp;<br />           maxTextQ超q最大g后的提示信息 <br />           minValueQ允许输入的最数?nbsp;<br />           minTextQ超q最g后的提示信息 <br />           nanTextQ输入非有效数g后的提示信息</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.TextArea</strong></span></h2> <p>    preventScrollbarsQ是否禁止出现滚动条Q默认ؓfalse</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.TextField</strong></span></h2> <p>    allowBlankQ是否允ؓI,默认为true <br />          blankTextQ空验证p|后显C的提示信息 <br />          emptyTextQ在一个空字段中默认显C的信息 <br />          growQ字D|否自动展和收羃Q默认ؓfalse <br />          growMinQ收~的最宽?nbsp;<br />          growMaxQ展的最大宽?nbsp;<br />          inputTypeQ字D늱型:默认为text <br />          maskReQ用于过滤不匚w字符输入的正则表辑ּ <br />          maxLengthQ字D允许输入的最大长?nbsp;<br />          maxLengthTextQ最大长度验证失败后昄的提CZ?nbsp;<br />          minLengthQ字D允许输入的最长?nbsp;<br />          minLengthTextQ最长度验证失败后昄的提CZ?nbsp;<br />          regexQ正则表辑ּ <br />          regexTextQ正则表辑ּ验证p|后显C的提示信息 <br />          vtypeQ验证类型的名字 <br />               alphaQ限制只能输入字?nbsp;<br />               alphanumQ限制只能输入字母和数字 <br />               email <br />               url <br />          vtypeTextQ验证失败时的提CZ?nbsp;<br />          validatorQ自定义验证函数 <br />          selectOnFocusQ当字段得到焦点时自动选择已存在的文本Q默认ؓfalse</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.Field</strong></span></h2> <p>    nameQ字D名 <br />          valueQ字D늚初始化?nbsp;<br />          disabledQ字D|否不可用Q默认ؓfalse <br />          fieldLabelQ字D|{说?nbsp;<br />          hideLabelQ隐藏字D|{,默认为false <br />          labelSeparatorQ字D|{与字段之间的分隔符Q默认ؓ':' <br />          labelStyleQ字D|{样?nbsp;<br />          inputTypeQ默认ؓtext <br />          invalidClassQ默认ؓx-form-invalid <br />          invalidTextQ字D非法文本提C?nbsp;<br />          msgTargetQ错误信息显C的位置Q默认ؓqtip <br />              qtipQ显CZ个Q动的提示信息 <br />              titleQ显CZ个浏览器的Q动提CZ?nbsp;<br />              underQ在字段下方昄一个提CZ?nbsp;<br />              sideQ在字段双昄一个提CZ?nbsp;<br />          readOnlyQ字D|否只读,默认为false <br />          validateOnBlurQ字D在失去焦点时被验证Q默认ؓtrue <br />     ҎQ?nbsp;<br />          clearInvalid()Q?nbsp;<br />          getRawValue() <br />          setRawValue( Mixed value ) <br />          getValue() <br />          setValue( Mixed value ) <br />          isDirty()Q字D值在装蝲后是否被修改q?nbsp;<br />          isValid( Boolean preventMark )Q当前字D值是否合?nbsp;<br />          markInvalid( [String msg] ) <br />          validate() <br />          reset()</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.FormPanel</strong></span></h2> <p>itemsQ一个元素或元素数组 <br />          buttonsQ一个按钮配|对象的数组Q按钮将被添加到表单脚?nbsp;<br />          buttonAlignQ按钮的寚w方式Q可选值有left、center、rightQ默认ؓcenter <br />          labelWidthQ表单标{宽度 <br />          labelAlignQ表单标{寚w方式Q可选值有left、top、rightQ默认ؓleft <br />          labelSeparatorQ字D|{与字段之间的分隔符Q默认ؓ':' <br />          minButtonWidthQ按钮的最宽度,默认?5 <br />     ҎQ?nbsp;<br />          getForm() : Ext.form.BasicForm <br />          load( Object options ) <br />          startMonitoring() <br />          stopMonitoring()</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.form.BaseicForm</strong></span></h2> <p>    baseParamsQ传递到h中的参数 <br />          methodQ表单的提交方式Q有效值包括GET、POST <br />          urlQ表单默认的提交路径 <br />          fileUploadQ表单是否进行文件上?nbsp;<br />          timeoutQ表单动作的时旉Q默认ؓ30U?nbsp;<br />          trackResetOnLoadQ是否在表单初次创徏时清楚数?nbsp;<br />    ҎQ?nbsp;<br />          doAction( String/Object actionName, [Object options] )Q执行一个预订的动作Q可用选项包括Q?nbsp;<br />              urlQ动作提交的路径 <br />              methodQ表单的提交方式Q有效值包括GET、POST <br />              paramsQ传递到h中的参数 <br />              headersQ?nbsp;<br />              successQ执行成功后回调的函敎ͼ包括两个参数Qform和action <br />              failureQ执行失败后回调的函敎ͼ包括两个参数Qform和action <br />              clientValidationQ是否客L验证 <br />          clearInvalid()Q清除表单中所有的无效验证信息 <br />          findField( String id )Q查找表单字D?nbsp;<br />          getValues( [Boolean asString] )Q?nbsp;<br />          isDirty()Q表单数据是否被更改q?nbsp;<br />          isValid()Q客L验证是否成功 <br />          load( Object options )Q执行表单读取动?nbsp;<br />          loadRecord( Record record )Q从一个数据记录中d数据到表单中 <br />          markInvalid( Array/Object errors )Q成批设|表单字Dؓ验证无效 <br />          reset()Q重|表?nbsp;<br />          setValues( Array/Object values )Q成批设|表单字D?nbsp;<br />          submit( Object options )Q执行表单提交动?nbsp;<br />          updateRecord( Record record )Q持久化表单数据到记录集?/p> <p><strong>Ext.form.Action</strong></p> <p>    successQ执行成功后回调的函敎ͼ包括两个参数Qform和action <br />          failureQ执行失败后回调的函敎ͼ包括两个参数Qform和action <br />          methodQ表单的提交方式Q有效值包括GET、POST <br />          paramsQ传递到h中的参数 <br />          urlQ动作提交的路径 <br />          waitMsgQ动作执行时昄的等待信?nbsp;<br />     属性: <br />          Action.CLIENT_INVALIDQ客L验证错误 <br />          Action.CONNECT_FAILUREQ通信错误 <br />          Action.LOAD_FAILUREQ加载数据时Q没有包含data属性的字段被返?nbsp;<br />          Action.SERVER_INVALIDQ服务端验证错误 <br />          failureTypeQ错误类?nbsp;<br />          resultQ包含布类型的success属性和其他属性,如{success: true, msg: 'ok'} <br />          typeQ动作类型,可选值有submit和load <br />               Ext.form.Action.SubmitQ返回的信息中要包含一个布类型的success属性和一个可选的errors属?nbsp;<br />               Ext.form.Action.LoadQ返回的信息中要包含一个布类型的success属性和一个data属?/p> <p><strong>Ext.grid.EditorGridPanel</strong></p> <p>    clicksToEditQ设|点d元格q入~辑模式的点L敎ͼ默认? <br />            autoEncodeQ是否自动编?解码HTML内容Q默认ؓfalse <br />            selModelQ默认ؓExt.grid.CellSelectionModel <br />  <br />      主要ҎQ?nbsp;<br />            startEditing( Number rowIndex, Number colIndex )Q开始编辑指定单元格 <br />            stopEditing( [Boolean cancel] )Q结束编辑操?/p> <p><strong>Ext.grid.GroupinView</strong></p>     enableGroupingMenuQ是否在表头菜单中进行分l控Ӟ默认为true <br />            groupByTextQ表头菜单中分组控制的菜单文字,默认?Group By This Field' <br />  <br />            enableNoGroupsQ是否允许用户关闭分l功能,默认为true <br />            showGroupsTextQ在表头菜单中启用分l和用分组的菜单文字,默认?Show in Groups' <br />  <br />            groupTextTplQ用于渲染分l信息的模板Q默认ؓ'{text}'Q常用的可选值有Q?nbsp;<br />                  textQ列标题:l字D?nbsp;<br />                  gvalueQ组字段的?nbsp;<br />                  startRowQ组行烦?nbsp;<br />  <br />            enableGroupingQ是否对数据分组Q默认ؓtrue <br />            hideGroupedColumnQ是否隐藏分l列Q默认ؓfalse <br />            ignoreAddQ在向表gd数据时是否刷新表|默认为false <br />            showGroupNameQ是否在分组行上昄分组字段的名字,默认为true <br />            startCollapsedQ初ơ显C时分组是否处于收羃状态,默认为false <br />  <br />      主要ҎQ?nbsp;<br />            collapseAllGroups()Q收~所有分l行 <br />            expandAllGroups()Q展开所有分l行 <br />            getGroupId( String value )Q根据分l字D值取得组id <br />            toggleAllGroups( [Boolean expanded] )Q切换所有分l行的展开或收~状?nbsp;<br />            toggleGroup( String groupId, [Boolean expanded] )Q切换指定分l行的展开或收~状?nbsp;<br /><br /><br />2、Ext.data.GroupingStore <br />      groupFieldQ分l字D?nbsp;<br /><br />      groupOnSortQ是否在分组字段上排序,默认为false <br />      remoteGroupQ是否远E分l数据,默认为false。如果是q程分组数据Q则通过groupBy参数发送分l字D名</div><div><h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.grid.GridPanel:</strong></span></h2> <p>    storeQ表格的数据?nbsp;<br />          columnsQ表格列模式的配|数l,可自动创建ColumnModel列模?nbsp;<br />          autoExpandColumnQ自动充满表格未用空间的列,参数为列idQ该id不能? <br />          stripeRowsQ表格是否隔行换Ԍ默认为false <br />  <br />          cm、colModelQ表格的列模式,渲染表格时必设|该配置?nbsp;<br />          sm、selModelQ表格的选择模式Q默认ؓExt.grid.RowSelectionModel <br />          enableHdMenuQ是否显C头的上下文菜单,默认为true <br />          enableColumnHideQ是否允讔R过标题中的上下文菜单隐藏列Q默认ؓtrue <br />          loadMaskQ是否在加蝲数据时显C遮|效果,默认为false <br />          viewQ表D图,默认为Ext.grid.GridView <br />          viewConfigQ表D囄配置对象 <br />  <br />          autoExpandMaxQ自动扩充列的最大宽度,默认?000 <br />          autoExpandMinQ自动扩充列的最宽度,默认?0 <br />          columnLinesQ是否显C列分割U,默认为false <br />          disableSelectionQ是否禁止行选择Q默认ؓfalse <br />          enableColumnMoveQ是否允许拖攑ֈQ默认ؓtrue <br />          enableColumnResizeQ是否允许改变列宽,默认为true <br />          hideHeadersQ是否隐藏表_默认为false <br />          maxHeightQ最大高?nbsp;<br />          minColumnWidthQ最列宽,默认?5 <br />          trackMouseOverQ是否高亮显C鼠标所在的行,默认为true <br />  <br />      主要ҎQ?nbsp;<br />          getColumnModel()Q取得列模式 <br />          getSelectionModel()Q取得选择模式 <br />          getStore()Q取得数据集 <br />          getView()Q取得视囑֯?nbsp;<br />          reconfigure( Ext.data.Store store, Ext.grid.ColumnModel colModel )Q用一个新的数据集和列模式重新配置表格lg <br /><br />2、Ext.grid.Column <br />      主要配置: <br />          idQ列id <br />          headerQ表头文?nbsp;<br />          dataIndexQ设|列与数据集中数据记录的对应关系Qgؓ数据记录中的字段名称。如果没有设|该则使用列烦引与数据记录中字D늚索引q行对应 <br />          widthQ列?nbsp;<br />          alignQ列数据的对齐方?nbsp;<br />  <br />          hiddenQ是否隐藏列Q默认ؓfalse <br />          fixedQ是否固定列宽,默认为false <br />          menuDisabledQ是否禁用列的上下文菜单Q默认ؓfalse <br />          resizableQ是否允许改变列宽,默认为true <br />          sortableQ是否允许排序,默认为true <br />          rendererQ设|列的自定义单元格渲染函?nbsp;<br />                传入函数的参数有Q?nbsp;<br />                    valueQ数据的原始?nbsp;<br />                    metadataQ元数据对象Q用于设|单元格的样式和属性,该对象包含的属性有Q?nbsp;<br />                          cssQ应用到单元格TD元素上的样式名称 <br />                          attrQ一个HTML属性定义字W串Q例?style="color:blue"' <br />                    recordQ当前数据记录对?nbsp;<br />                    rowIndexQ单元格的行索引 <br />                    colIndexQ单元格的列索引 <br />                    storeQ数据集对象 <br />    <br />          xtypeQ列渲染器类型,默认为gridcolumnQ其它可选值有booleancolumn、numbercolumn、datecolumn、templatecolumn{?nbsp;<br />  <br />          editableQ是否可~辑Q默认ؓtrue <br />          editorQ编辑器 <br />  <br />          groupNameQ?nbsp;<br />          emptyGroupTextQ?nbsp;<br />          groupableQ?nbsp;<br /><br />3、Ext.grid.ColumnModel <br />      主要配置: <br />          columnsQ字D|l?nbsp;<br />          defaultSortableQ是否进行默认排序,默认为false <br />          defaultWidthQ默认宽?nbsp;<br />  <br />      主要ҎQ?nbsp;<br />          findColumnIndex( String col )Q根据给定的dataIndex查找列烦?nbsp;<br />          getColumnById( String id )Q取得指定id对应的列 <br />          getColumnCount( Boolean visibleOnly )Q取得列L <br />          getColumnHeader( Number col )Q取得列的表?nbsp;<br />          getColumnId( Number index )Q取得列id <br />          getDataIndex( Number col )Q取得列对应的数据字D名 <br />          getIndexById( String id )Q取得列索引 <br />          getTotalWidth( Boolean includeHidden ) <br />          isCellEditable( Number colIndex, Number rowIndex ) <br />          isFixed() <br />          isHidden( Number colIndex ) <br />          setColumnHeader( Number col, String header ) <br />          setColumnWidth( Number col, Number width, Boolean suppressEvent ) <br />          setDataIndex( Number col, String dataIndex ) <br />          setEditable( Number col, Boolean editable ) <br />          setEditor( Number col, Object editor ) <br />          setHidden( Number colIndex, Boolean hidden ) <br />          setRenderer( Number col, Function fn ) <br />4、Ext.grid.AbstractSelectionModel <br />      主要ҎQ?nbsp;<br />            lock()Q锁定选择区域 <br />            unlock()Q解锁选择区域 <br />            isLocked()Q当前选择区域是否被锁?nbsp;<br />5、Ext.grid.CellSelectionModel <br />      主要ҎQ?nbsp;<br />            clearSelections( Boolean preventNotify )Q清除选择区域 <br />            getSelectedCell()Q取得当前选择的单元格Q返回一数组Q其格式Q[rowIndex, colIndex] <br />            hasSelection()Q当前是否有选择区域 <br />            select( Number rowIndex, Number colIndex, [Boolean preventViewNotify], [Boolean preventFocus], [Ext.data.Record r] )Q选择指定单元?nbsp;<br />6、Ext.grid.RowSelectionModel <br />      主要配置: <br />            singleSelectQ是否单选模式,默认为falseQ即可以选择多条数据 <br /><br />      主要ҎQ?nbsp;<br />            clearSelections( [Boolean fast] )Q清除所有选择区域 <br />            deselectRange( Number startRow, Number endRow )Q取消范围内的行选择 <br />            deselectRow( Number row, [Boolean preventViewNotify] )Q取消指定行的选择状?nbsp;<br />            each( Function fn, [Object scope] )Q遍历所有选择行,q调用指定函数。当前被选行传入该函数?nbsp;<br />            getCount()Q得到选择的总行?nbsp;<br />            getSelected()Q得到第一个被选记?nbsp;<br />            getSelections()Q得到所有被选记录的数组 <br />            hasNext()Q判断当前被选行之后是否q有记录可以选择 <br />            hasPrevious()Q判断当前被选行之前是否q有记录可以选择 <br />            hasSelection()Q是否已选择了数?nbsp;<br />            isIdSelected( String id )Q判断指定id的记录是否被选择 <br />            isSelected( Number/Record index )Q判断指定记录或记录索引的数据是否被选择 <br />            selectAll()Q选择所有行 <br />            selectFirstRow()Q选择W一?nbsp;<br />            selectLastRow( [Boolean keepExisting] )Q选择最后行 <br />                  keepExistingQ是否保持已有的选择 <br />            selectNext( [Boolean keepExisting] )Q选择当前选择行的下一?nbsp;<br />            selectPrevious( [Boolean keepExisting] )Q选择当前选择行的上一?nbsp;<br />            selectRange( Number startRow, Number endRow, [Boolean keepExisting] )Q选择范围内的所有行 <br />            selectRecords( Array records, [Boolean keepExisting] )Q选择一l指定记?nbsp;<br />            selectRow( Number row, [Boolean keepExisting], [Boolean preventViewNotify] )Q选择一?nbsp;<br />                  rowQ行索引 <br />            selectRows( Array rows, [Boolean keepExisting] )Q选择多行 <br />                  rowsQ行索引数组 <br />7、Ext.grid.CheckboxSelectionModel <br />      主要配置: <br />            singleSelectQ是否单选模式,默认为falseQ即可以选择多条数据 <br />            checkOnlyQ是否只能通过点击checkbox列进行选择Q默认ؓfalse <br />            sortableQ是否允许checkbox列排序,默认为false <br />            widthQcheckbox列的宽度Q默认ؓ20 <br />8、Ext.grid.RowNumberer <br />      主要配置: <br />            headerQ行号列表头昄的内?nbsp;<br />            widthQ列宽,默认?3<br />9、Ext.grid.GridView <br />      主要配置: <br />            enableRowBodyQ是否包含行?nbsp;<br />            sortAscTextQ表格标题菜单中升序的文字描q?nbsp;<br />            sortDescTextQ表格标题菜单中降序的文字描q?nbsp;<br />            columnsTextQ表格标题菜单中列对应的文字描述 <br />            autoFillQ是否自动扩展列以充满整个表|默认为false <br />            forceFitQ是否强制调整表格列宽以适用表格的整体宽度,防止出现水^滚动条,默认为false <br /><br />      主要ҎQ?nbsp;<br />            focusCell( Number row, Number col )Q将焦点Ud指定单元?nbsp;<br />            focusRow( Number row )Q将焦点Ud指定?nbsp;<br />            getCell( Number row, Number col )Q取得指定单元格对应的td元素 <br />            getHeaderCell( Number index )Q取得指定表头对应的td元素 <br />            getRow( Number index )Q取得指定行对应的tr元素 <br />            getRowClass( Record record, Number index, Object rowParams, Store store )Q得到附加到表格行上的样式名 <br />                  recordQ当前行的数据记录对?nbsp;<br />                  indexQ当前行的烦?nbsp;<br />                  rowParamsQ渲染时传入到行模板中的配置对象Q通过它可以ؓ行体定制样式Q该对象只在enableRowBody为true时才生效Q可能的属性如下: <br />                        bodyQ渲染到行体中的HTML代码片段 <br />                        bodyStyleQ应用到行体tr元素style属性的字符?nbsp;<br />                        colsQ应用到行体td元素colspan属性的|默认为d?nbsp;<br />                  storeQ表格数据集 <br />            refresh( [Boolean headersToo] )Q刷新表格组?nbsp;<br />            scrollToTop()Q滚动表格到端</p> <h2><span style="font-family: 宋体; font-size: 14pt;"><strong>Ext.TabPanel:</strong></span></h2>   activeTabQ初始激zȝtabQ烦引或者id|默认为none <br />      autoTabsQ是否自动将带有'x-tab'样式cȝdiv转成tabsd到TabPanel中,默认为false?nbsp;<br />            当该配置设为trueӞ需要设|deferredRender为falseQ还必须使用applyTo?nbsp;<br />      deferredRenderQ是否gq渲染,默认为true?nbsp;<br />      autoTabSelectorQ默认ؓ'div.x-tab'?nbsp;<br /><br />      resizeTabsQ是否可以改变tab的尺寸,默认为false?nbsp;<br />      minTabWidthQtab的最宽度,默认?0?nbsp;<br />      tabWidthQ每个新增加的tab宽度Q默认ؓ120?nbsp;<br />      tabTipQtab的提CZ?nbsp;<br /><br />      tabPositionQtab位置Q可选值有top、bottomQ默认ؓtop?nbsp;<br />      enableTabScrollQ是否允许Tab溢出时可以滚动,默认为false?nbsp;<br />      closableQtab是否可关闭,默认为false <br /><br />      scrollDurationQ每ơ的滚动旉Q默认ؓ0.35毫秒?nbsp;<br />      scrollIncrementQ每ơ的滚动步长Q默认ؓ100像素?nbsp;<br />      wheelIncrementQ每ơ鼠标滑轮的滚动步长Q默认ؓ20像素?nbsp;<br />2、主要方法: <br />      activate( String/Panel tab ) <br />      getActiveTab()Q获取当前活动的tab <br />      get( String/Number key )Q根据组件id或者烦引获取组?nbsp;<br />      getItem(String id)Q根据tab id获取tab <br />      setActiveTab( String/Number item ) <br />      remove( Component/String component, [Boolean autoDestroy] ) <br />      removeAll( [Boolean autoDestroy] )</div><div><strong>在用TabPanel旉要注意: </strong> <p> </p> <p>  <span style="font-size: 15px; font-family: 宋体;">     1、在创徏Ext.TabPanel时deferredRender配置经怼被忽略。该配置的默认值是true。true表示只有在用L一ơ访? 选项卡时Q该选项卡的panel才会被渲染?所以当我们有可能用脚本操作选项卡时Q}记将该配|项讄为false?nbsp;</span></p> <p><span style="font-size: 15px; font-family: 宋体;">       2、在FormPanel中用TabPanelQ如果在TabPanel中不定义deferredRender的gؓfalseQ那么,当你使用 LoadҎ为Form加蝲数据Q或使用setValue为没有激z过的Panel的控件赋值时Q将会发生错误。原因是Q在默认讄? deferredRender为trueQTabPanelq不会渲染所有Panel上的控gQ只有在该Panel被激zL才渲染控Ӟ所以当你ؓq些? 件设|数据时Q将会找不到q些控gQ会出现错误。因而,在FormPanel中用TabPanelQ一定要在TabPanel中设|? deferredRender的gؓfalseQ强制TabPanel在Layout渲染时同时渲染所有Panel上的控g?/span></p></div><br /><br /><br />本文转自Q?div>http://www.cnblogs.com/knowledgesea/p/3284404.html</div><img src ="http://www.aygfsteel.com/xiaohuzi2008/aggbug/403359.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/xiaohuzi2008/" target="_blank">胡?/a> 2013-08-27 12:42 <a href="http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403359.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>一键发布ASP.NET Web安装E序,搞WebForm的童鞋看q来...http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403358.html胡?/dc:creator>胡?/author>Tue, 27 Aug 2013 04:37:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403358.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/403358.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/27/403358.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/403358.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/403358.html阅读全文

]]>
sping2+struts2+hibernate3目整合H2数据?http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402773.html胡?/dc:creator>胡?/author>Wed, 14 Aug 2013 01:33:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402773.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/402773.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402773.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/402773.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/402773.html

大家可以参考下q个|站http://eoffice.im.fju.edu.tw/phpbb/viewtopic.php?p=28685


1.先启动项目上的h2/bin下的h2.bat或h2w.bat文gQ把h2数据库启动v?br />
2.SSH2框架和h2数据库整合方?br /> 2.1先在数据库下创徏 schema目录(相当于一个数据库实例)

  create schema fdrkftcode

目的是解册U异?span style="color:red">org.h2.jdbc.JdbcSQLException: Schema "fdrkftcode" not found; ...

2.2在schema目录下创Q如创徏pȝ用户表admin
  create table fdrkftcode.admin(
      id int primary key,
      adminname varchar(50),
      username varchar(50),
      userpwd varchar(50),
      adminrights varchar(50),
      createdate datetime,
      usedtimes int,
      lastlogin datetime,
      curstatus int,
      remark varchar(200)
  )
 
3.Z使用hibernate操作h2Q需要作如下讄Q在sql~辑H口输入下面q些脚本
对于实体pojo对象的映,我是用的annotationQ关键是id主键的映,如下Q?br /> @Column(name = "ID", nullable = false)

@Id

@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "ABC_ID_SEQ")

@SequenceGenerator(name = "ABC_ID_SEQ", sequenceName = "ABC_ID_SEQ")

protected Long id;

 注意q里的GeneratedValue和SequenceGenerator的用,q属于JPA规范Q全部来自javax.persisten

4.配置applicationContext.xml文g,主要有三个地方要注意Q?br /> 4.1修改q接数据库的JDBC驱动 driverClass的gؓorg.h2.Driver
4.2修改q接数据库所用的URL字符?jdbcUrl的gؓjdbc:h2:tcp://localhost/~/FDRKFTCODE;MODE=MySQL;AUTO_SERVER=TRUE
4.3修改Hibernate的数据库方言hibernate.dialect为org.hibernate.dialect.H2Dialect

5.h2数据库一些常用操?br /> 5.1帮助命ohelp
5.2表中某字D重命名  ALTER TABLE  fdrkftcode.admin ALTER COLUMN usepwd rename to userpwd
5.3表中新增字段  ALTER TABLE fdrkftcode.admin ADD IF NOT EXISTS abc varchar(50)
5.4表中删除字段  ALTER TABLE fdrkftcode.admin DROP COLUMN IF EXISTS abc
5.5查找表中记录 SELECT * from fdrkftcode.admin
5.6往表中插入记录 INSERT INTO fdrkftcode.admin VALUES (1,'理?,'admin','admin','10000000000000000000','2013-05-1 00:12:34',3,'2013-05-1 15:32:57',1,'过U管理员')
5.7修改表中某记?UPDATE fdrkftcode.admin SET fdrkftcode.admin.adminname='񔽎理? where fdrkftcode.admin.id=1

5.8删除表中某记?DELETE FROM fdrkftcode.admin WHERE fdrkftcode.admin.id=1


6.下面是我目的applicationContext.xml配置ҎQ大家可以参考下

<?xml version="1.0" encoding="UTF-8"?>
<beans
    xmlns="http://www.springframework.org/schema/beans"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns:p="http://www.springframework.org/schema/p"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    
    <!-- 定义使用C3P0q接池的数据?-->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- 指定q接数据库的JDBC驱动 -->
        <property name="driverClass">
             <value>org.h2.Driver</value>
         </property>
        <!-- q接数据库所用的URL -->
        <property name="jdbcUrl">
            <value>jdbc:h2:tcp://localhost/~/FDRKFTCODE;MODE=MySQL;AUTO_SERVER=TRUE</value>
        </property>
        <!-- q接数据库的用户?-->
        <property name="user">
            <value>sa</value>
        </property>
        <!-- q接数据库的密码 -->
        <property name="password">
            <value></value>
        </property>
        <!-- 讄数据库连接池的最大连接数 -->
        <property name="maxPoolSize">
            <value>50</value>
        </property>
        <!-- 讄数据库连接池的最连接数 -->
        <property name="minPoolSize">
            <value>5</value>
        </property>
        <!-- 讄数据库连接池的初始化q接?-->
        <property name="initialPoolSize">
            <value>5</value>
        </property>
        <!-- 讄数据库连接池的连接的最大空闲时?单位为秒 -->
        <property name="maxIdleTime">
            <value>20</value>
        </property>
    </bean>
    
    <!-- 定义Hibernate的SessionFactory -->
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <!-- 依赖注入上面定义的数据源dataSource -->
        <property name="dataSource" ref="dataSource"/>
        <!-- 注册Hibernate的ORM映射文g -->
        <property name="mappingResources">
            <list>
               <value>com/sungoal/ORM/Admin.hbm.xml</value>
            </list>
        </property>
        <!-- 讄Hibernate的相兛_?-->
        <property name="hibernateProperties">
            <props>
                <!-- 讄Hibernate的数据库方言 -->
                <prop key="hibernate.dialect">org.hibernate.dialect.H2Dialect</prop>
                <!-- 讄Hibernate是否在控制台输出SQL语句Q开发调试阶D通常设ؓtrue -->
                <prop key="show_sql">true</prop>
                <!-- 讄Hibernate一个提交批ơ中的最大SQL语句?-->
                <prop key="hibernate.jdbc.batch_size">50</prop>
            </props>
        </property>
    </bean>
    
     <!--定义Hibernate的事务管理器HibernateTransactionManager -->
    <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <!-- 依赖注入上面定义的sessionFactory -->
        <property name="sessionFactory" ref="sessionFactory"/>
    </bean>
    <!-- 装配通用数据库访问类BaseDAOImpl -->    
    <bean id="dao" class="com.sungoal.DAO.BaseDAOImpl">
        <!-- 依赖注入上面定义的sessionFactory -->
        <property name="sessionFactory" ref="sessionFactory"/>
    </bean>
    <!-- 部vpȝ用户理业务控制器AdminAction -->
    <bean id="adminAction" class="com.sungoal.struts.action.AdminAction" scope="prototype">
        <property name="dao" ref="dao"/>
    </bean>
</beans>

]]>
Hibernate配置文g中配|各U数据库的driver、URL http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402770.html胡?/dc:creator>胡?/author>Wed, 14 Aug 2013 01:29:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402770.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/402770.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/14/402770.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/402770.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/402770.html

hibernate.properties

######################
### Query Language ###
######################

## define query language constants / function names

hibernate.query.substitutions yes 'Y', no 'N'


## select the classic query parser

#hibernate.query.factory_class org.hibernate.hql.classic.ClassicQueryTranslatorFactory


#################
### Platforms ###
#################

## JNDI Datasource

#hibernate.connection.datasource jdbc/test
#hibernate.connection.username db2
#hibernate.connection.password db2


## HypersonicSQL

hibernate.dialect org.hibernate.dialect.HSQLDialect
hibernate.connection.driver_class org.hsqldb.jdbcDriver
hibernate.connection.username sa
hibernate.connection.password
hibernate.connection.url jdbc:hsqldb:./build/db/hsqldb/hibernate
#hibernate.connection.url jdbc:hsqldb:hsql://localhost
#hibernate.connection.url jdbc:hsqldb:test

## H2 (www.h2database.com)
#hibernate.dialect org.hibernate.dialect.H2Dialect
#hibernate.connection.driver_class org.h2.Driver
#hibernate.connection.username sa
#hibernate.connection.password
#hibernate.connection.url jdbc:h2:mem:./build/db/h2/hibernate
#hibernate.connection.url jdbc:h2:testdb/h2test
#hibernate.connection.url jdbc:h2:mem:imdb1
#hibernate.connection.url jdbc:h2:tcp://dbserv:8084/sample;
#hibernate.connection.url jdbc:h2:ssl://secureserv:8085/sample;
#hibernate.connection.url jdbc:h2:ssl://secureserv/testdb;cipher=AES

## MySQL

#hibernate.dialect org.hibernate.dialect.MySQLDialect
#hibernate.dialect org.hibernate.dialect.MySQLInnoDBDialect
#hibernate.dialect org.hibernate.dialect.MySQLMyISAMDialect
#hibernate.connection.driver_class com.mysql.jdbc.Driver
#hibernate.connection.url jdbc:mysql:///test
#hibernate.connection.username gavin
#hibernate.connection.password


## Oracle

#hibernate.dialect org.hibernate.dialect.OracleDialect
#hibernate.dialect org.hibernate.dialect.Oracle9Dialect
#hibernate.connection.driver_class oracle.jdbc.driver.OracleDriver
#hibernate.connection.username ora
#hibernate.connection.password ora
#hibernate.connection.url jdbc:oracle:thin:@localhost:1521:orcl
#hibernate.connection.url jdbc:oracle:thin:@localhost:1522:XE


## PostgreSQL

#hibernate.dialect org.hibernate.dialect.PostgreSQLDialect
#hibernate.connection.driver_class org.postgresql.Driver
#hibernate.connection.url jdbc:postgresql:template1
#hibernate.connection.username pg
#hibernate.connection.password


## DB2

#hibernate.dialect org.hibernate.dialect.DB2Dialect
#hibernate.connection.driver_class com.ibm.db2.jcc.DB2Driver
#hibernate.connection.driver_class COM.ibm.db2.jdbc.app.DB2Driver
#hibernate.connection.url jdbc:db2://localhost:50000/somename
#hibernate.connection.url jdbc:db2:somename
#hibernate.connection.username db2
#hibernate.connection.password db2

## TimesTen

#hibernate.dialect org.hibernate.dialect.TimesTenDialect
#hibernate.connection.driver_class com.timesten.jdbc.TimesTenDriver
#hibernate.connection.url jdbc:timesten:direct:test
#hibernate.connection.username
#hibernate.connection.password

## DB2/400

#hibernate.dialect org.hibernate.dialect.DB2400Dialect
#hibernate.connection.username user
#hibernate.connection.password password

## Native driver
#hibernate.connection.driver_class COM.ibm.db2.jdbc.app.DB2Driver
#hibernate.connection.url jdbc:db2://systemname

## Toolbox driver
#hibernate.connection.driver_class com.ibm.as400.access.AS400JDBCDriver
#hibernate.connection.url jdbc:as400://systemname


## Derby (not supported!)

#hibernate.dialect org.hibernate.dialect.DerbyDialect
#hibernate.connection.driver_class org.apache.derby.jdbc.EmbeddedDriver
#hibernate.connection.username
#hibernate.connection.password
#hibernate.connection.url jdbc:derby:build/db/derby/hibernate;create=true


## Sybase

#hibernate.dialect org.hibernate.dialect.SybaseDialect
#hibernate.connection.driver_class com.sybase.jdbc2.jdbc.SybDriver
#hibernate.connection.username sa
#hibernate.connection.password sasasa
#hibernate.connection.url jdbc:sybase:Tds:co3061835-a:5000/tempdb


## Mckoi SQL

#hibernate.dialect org.hibernate.dialect.MckoiDialect
#hibernate.connection.driver_class com.mckoi.JDBCDriver
#hibernate.connection.url jdbc:mckoi:///
#hibernate.connection.url jdbc:mckoi:local://C:/mckoi1.0.3/db.conf
#hibernate.connection.username admin
#hibernate.connection.password nimda


## SAP DB

#hibernate.dialect org.hibernate.dialect.SAPDBDialect
#hibernate.connection.driver_class com.sap.dbtech.jdbc.DriverSapDB
#hibernate.connection.url jdbc:sapdb://localhost/TST
#hibernate.connection.username TEST
#hibernate.connection.password TEST
#hibernate.query.substitutions yes 'Y', no 'N'


## MS SQL Server

#hibernate.dialect org.hibernate.dialect.SQLServerDialect
#hibernate.connection.username sa
#hibernate.connection.password sa

## JSQL Driver
#hibernate.connection.driver_class com.jnetdirect.jsql.JSQLDriver
#hibernate.connection.url jdbc:JSQLConnect://1E1/test

## JTURBO Driver
#hibernate.connection.driver_class com.newatlanta.jturbo.driver.Driver
#hibernate.connection.url jdbc:JTurbo://1E1:1433/test

## WebLogic Driver
#hibernate.connection.driver_class weblogic.jdbc.mssqlserver4.Driver
#hibernate.connection.url jdbc:weblogic:mssqlserver4:1E1:1433

## Microsoft Driver (not recommended!)
#hibernate.connection.driver_class com.microsoft.jdbc.sqlserver.SQLServerDriver
#hibernate.connection.url jdbc:microsoft:sqlserver://1E1;DatabaseName=test;SelectMethod=cursor

## The New Microsoft Driver
#hibernate.connection.driver_class com.microsoft.sqlserver.jdbc.SQLServerDriver
#hibernate.connection.url jdbc:sqlserver://localhost

## jTDS (since version 0.9)
#hibernate.connection.driver_class net.sourceforge.jtds.jdbc.Driver
#hibernate.connection.url jdbc:jtds:sqlserver://1E1/test

## Interbase

#hibernate.dialect org.hibernate.dialect.InterbaseDialect
#hibernate.connection.username sysdba
#hibernate.connection.password masterkey

## DO NOT specify hibernate.connection.sqlDialect

## InterClient

#hibernate.connection.driver_class interbase.interclient.Driver
#hibernate.connection.url jdbc:interbase://localhost:3060/C:/firebird/test.gdb

## Pure Java

#hibernate.connection.driver_class org.firebirdsql.jdbc.FBDriver
#hibernate.connection.url jdbc:firebirdsql:localhost/3050:/firebird/test.gdb


## Pointbase

#hibernate.dialect org.hibernate.dialect.PointbaseDialect
#hibernate.connection.driver_class com.pointbase.jdbc.jdbcUniversalDriver
#hibernate.connection.url jdbc:pointbase:embedded:sample
#hibernate.connection.username PBPUBLIC
#hibernate.connection.password PBPUBLIC


## Ingres

## older versions (before Ingress 2006)

#hibernate.dialect org.hibernate.dialect.IngresDialect
#hibernate.connection.driver_class ca.edbc.jdbc.EdbcDriver
#hibernate.connection.url jdbc:edbc://localhost:II7/database
#hibernate.connection.username user
#hibernate.connection.password password

## Ingres 2006 or later

#hibernate.dialect org.hibernate.dialect.IngresDialect
#hibernate.connection.driver_class com.ingres.jdbc.IngresDriver
#hibernate.connection.url jdbc:ingres://localhost:II7/database;CURSOR=READONLY;auto=multi
#hibernate.connection.username user
#hibernate.connection.password password

## Mimer SQL

#hibernate.dialect org.hibernate.dialect.MimerSQLDialect
#hibernate.connection.driver_class com.mimer.jdbc.Driver
#hibernate.connection.url jdbc:mimer:multi1
#hibernate.connection.username hibernate
#hibernate.connection.password hibernate


## InterSystems Cache

#hibernate.dialect org.hibernate.dialect.Cache71Dialect
#hibernate.connection.driver_class com.intersys.jdbc.CacheDriver
#hibernate.connection.username _SYSTEM
#hibernate.connection.password SYS
#hibernate.connection.url jdbc:Cache://127.0.0.1:1972/HIBERNATE


#################################
### Hibernate Connection Pool ###
#################################

hibernate.connection.pool_size 1


###########################
### C3P0 Connection Pool###
###########################

#hibernate.c3p0.max_size 2
#hibernate.c3p0.min_size 2
#hibernate.c3p0.timeout 5000
#hibernate.c3p0.max_statements 100
#hibernate.c3p0.idle_test_period 3000
#hibernate.c3p0.acquire_increment 2
#hibernate.c3p0.validate false


##############################
### Proxool Connection Pool###
##############################

## Properties for external configuration of Proxool

hibernate.proxool.pool_alias pool1

## Only need one of the following

#hibernate.proxool.existing_pool true
#hibernate.proxool.xml proxool.xml
#hibernate.proxool.properties proxool.properties


#################################
### Plugin ConnectionProvider ###
#################################

## use a custom ConnectionProvider (if not set, Hibernate will choose a built-in ConnectionProvider using hueristics)

#hibernate.connection.provider_class org.hibernate.connection.DriverManagerConnectionProvider
#hibernate.connection.provider_class org.hibernate.connection.DatasourceConnectionProvider
#hibernate.connection.provider_class org.hibernate.connection.C3P0ConnectionProvider
#hibernate.connection.provider_class org.hibernate.connection.ProxoolConnectionProvider


#######################
### Transaction API ###
#######################

## Enable automatic flush during the JTA beforeCompletion() callback
## (This setting is relevant with or without the Transaction API)

#hibernate.transaction.flush_before_completion


## Enable automatic session close at the end of transaction
## (This setting is relevant with or without the Transaction API)

#hibernate.transaction.auto_close_session


## the Transaction API abstracts application code from the underlying JTA or JDBC transactions

#hibernate.transaction.factory_class org.hibernate.transaction.JTATransactionFactory
#hibernate.transaction.factory_class org.hibernate.transaction.JDBCTransactionFactory


## to use JTATransactionFactory, Hibernate must be able to locate the UserTransaction in JNDI
## default is java:comp/UserTransaction
## you do NOT need this setting if you specify hibernate.transaction.manager_lookup_class

#jta.UserTransaction jta/usertransaction
#jta.UserTransaction javax.transaction.UserTransaction
#jta.UserTransaction UserTransaction


## to use the second-level cache with JTA, Hibernate must be able to obtain the JTA TransactionManager

#hibernate.transaction.manager_lookup_class org.hibernate.transaction.JBossTransactionManagerLookup
#hibernate.transaction.manager_lookup_class org.hibernate.transaction.WeblogicTransactionManagerLookup
#hibernate.transaction.manager_lookup_class org.hibernate.transaction.WebSphereTransactionManagerLookup
#hibernate.transaction.manager_lookup_class org.hibernate.transaction.OrionTransactionManagerLookup
#hibernate.transaction.manager_lookup_class org.hibernate.transaction.ResinTransactionManagerLookup


##############################
### Miscellaneous Settings ###
##############################

## print all generated SQL to the console

#hibernate.show_sql true


## format SQL in log and console

hibernate.format_sql true


## add comments to the generated SQL

#hibernate.use_sql_comments true


## generate statistics

#hibernate.generate_statistics true


## auto schema export

#hibernate.hbm2ddl.auto create-drop
#hibernate.hbm2ddl.auto create
#hibernate.hbm2ddl.auto update
#hibernate.hbm2ddl.auto validate


## specify a default schema and catalog for unqualified tablenames

#hibernate.default_schema test
#hibernate.default_catalog test


## enable ordering of SQL UPDATEs by primary key

#hibernate.order_updates true


## set the maximum depth of the outer join fetch tree

hibernate.max_fetch_depth 1


## set the default batch size for batch fetching

#hibernate.default_batch_fetch_size 8


## rollback generated identifier values of deleted entities to default values

#hibernate.use_identifer_rollback true


## enable bytecode reflection optimizer (disabled by default)

#hibernate.bytecode.use_reflection_optimizer true


#####################
### JDBC Settings ###
#####################

## specify a JDBC isolation level

#hibernate.connection.isolation 4


## enable JDBC autocommit (not recommended!)

#hibernate.connection.autocommit true


## set the JDBC fetch size

#hibernate.jdbc.fetch_size 25


## set the maximum JDBC 2 batch size (a nonzero value enables batching)

#hibernate.jdbc.batch_size 5
#hibernate.jdbc.batch_size 0


## enable batch updates even for versioned data

hibernate.jdbc.batch_versioned_data true


## enable use of JDBC 2 scrollable ResultSets (specifying a Dialect will cause Hibernate to use a sensible default)

#hibernate.jdbc.use_scrollable_resultset true


## use streams when writing binary types to / from JDBC

hibernate.jdbc.use_streams_for_binary true


## use JDBC 3 PreparedStatement.getGeneratedKeys() to get the identifier of an inserted row

#hibernate.jdbc.use_get_generated_keys false


## choose a custom JDBC batcher

# hibernate.jdbc.factory_class


## enable JDBC result set column alias caching
## (minor performance enhancement for broken JDBC drivers)

# hibernate.jdbc.wrap_result_sets


## choose a custom SQL exception converter

#hibernate.jdbc.sql_exception_converter


##########################
### Second-level Cache ###
##########################

## optimize chache for minimal "puts" instead of minimal "gets" (good for clustered cache)

#hibernate.cache.use_minimal_puts true


## set a prefix for cache region names

hibernate.cache.region_prefix hibernate.test


## disable the second-level cache

#hibernate.cache.use_second_level_cache false


## enable the query cache

#hibernate.cache.use_query_cache true


## store the second-level cache entries in a more human-friendly format

#hibernate.cache.use_structured_entries true


## choose a cache implementation

#hibernate.cache.provider_class org.hibernate.cache.EhCacheProvider
#hibernate.cache.provider_class org.hibernate.cache.EmptyCacheProvider
hibernate.cache.provider_class org.hibernate.cache.HashtableCacheProvider
#hibernate.cache.provider_class org.hibernate.cache.TreeCacheProvider
#hibernate.cache.provider_class org.hibernate.cache.OSCacheProvider
#hibernate.cache.provider_class org.hibernate.cache.SwarmCacheProvider


## choose a custom query cache implementation

#hibernate.cache.query_cache_factory


############
### JNDI ###
############

## specify a JNDI name for the SessionFactory

#hibernate.session_factory_name hibernate/session_factory


## Hibernate uses JNDI to bind a name to a SessionFactory and to look up the JTA UserTransaction;
## if hibernate.jndi.* are not specified, Hibernate will use the default InitialContext() which
## is the best approach in an application server

#file system
#hibernate.jndi.class com.sun.jndi.fscontext.RefFSContextFactory
#hibernate.jndi.url file:/

#WebSphere
#hibernate.jndi.class com.ibm.websphere.naming.WsnInitialContextFactory
#hibernate.jndi.url iiop://localhost:900/



]]>
Spring Security3.1 最新配|实?http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402756.html胡?/dc:creator>胡?/author>Tue, 13 Aug 2013 09:49:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402756.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/402756.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402756.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/402756.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/402756.html阅读全文

]]>
提高EXT js的加载速度的方?/title><link>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402751.html</link><dc:creator>胡?/dc:creator><author>胡?/author><pubDate>Tue, 13 Aug 2013 08:48:00 GMT</pubDate><guid>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402751.html</guid><wfw:comment>http://www.aygfsteel.com/xiaohuzi2008/comments/402751.html</wfw:comment><comments>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402751.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/402751.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/402751.html</trackback:ping><description><![CDATA[<div></div><div></div><div>我们知道QEXT的全部js是比较大的,一个ext-all-debug.jsp2m多,它的压羃版(Ljs中的换行及空|Q也?00多k,q对于在|速不太快的时Q下载js得漫长的等待?br /> JOffice中的日历d控gQjs多达四五个,每个js大小都达70多k,管我们采用了后加蝲的方式,则当用户点击我的d功能Ӟ才下载该jsQ但q样仍然很慢Q因Z载的js很慢<br /> Q鉴于此Q在互联|上使用cMJofficecM的程序,速度会很多开发商不敢选用ext作ؓ开发技术。据本h当时参与Ud一个内部采购^台的开发,是因ؓ其运行程序慢Q遭到移动的l端用户的弃骂,<br /> 所以,要想用EXT来开发应用,需要解军_q行慢的特点?br /><br /><br /> 我们可以从以下几U方法来提高应用E序的运行速度Q?br /><br /><strong><span style="font-size: small;">一.前期量加载js.</span> </strong> <br /><br />    q点在Joffice中有比较好的q用Q采用的是由ScriptMgr.loadҎ来完成,加蝲完成后,其会在body中插入一个div,只要当前面不被hQ下ơ再讉K该功能时Q不需要再加蝲js</div><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">   function $ImportJs(viewName,callback) {<br />    var b </span><span style="color: #000000; ">=</span><span style="color: #000000; "> document.getElementById(viewName</span><span style="color: #000000; ">+</span><span style="color: #000000; ">'</span><span style="color: #000000; ">-hiden</span><span style="color: #000000; ">'</span><span style="color: #000000; ">);<br />    </span><span style="color: #0000FF; ">if</span><span style="color: #000000; "> (b </span><span style="color: #000000; ">!=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">null</span><span style="color: #000000; ">) {<br />        var view </span><span style="color: #000000; ">=</span><span style="color: #000000; "> eval(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">new </span><span style="color: #000000; ">'</span><span style="color: #000000; "> </span><span style="color: #000000; ">+</span><span style="color: #000000; "> viewName </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">'</span><span style="color: #000000; ">()</span><span style="color: #000000; ">'</span><span style="color: #000000; ">);<br />        callback.call(</span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">, view);<br />    } </span><span style="color: #0000FF; ">else</span><span style="color: #000000; "> {<br />        var jsArr </span><span style="color: #000000; ">=</span><span style="color: #000000; "> eval(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">App.importJs.</span><span style="color: #000000; ">'</span><span style="color: #000000; "> </span><span style="color: #000000; ">+</span><span style="color: #000000; "> viewName);<br />        </span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(jsArr</span><span style="color: #000000; ">==</span><span style="color: #000000; ">undefined){<br />            var view </span><span style="color: #000000; ">=</span><span style="color: #000000; "> eval(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">new </span><span style="color: #000000; ">'</span><span style="color: #000000; "> </span><span style="color: #000000; ">+</span><span style="color: #000000; "> viewName </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">'</span><span style="color: #000000; ">()</span><span style="color: #000000; ">'</span><span style="color: #000000; ">);<br />            callback.call(</span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">, view);<br />            </span><span style="color: #0000FF; ">return</span><span style="color: #000000; "> ;<br />        }<br />        ScriptMgr.load({<br />                    scripts : jsArr,<br />                    callback : function() {<br />                        <br />                        Ext.DomHelper.append(document.body,</span><span style="color: #000000; ">"</span><span style="color: #000000; "><div id='</span><span style="color: #000000; ">"</span><span style="color: #000000; "><br />                                                </span><span style="color: #000000; ">+</span><span style="color: #000000; "> viewName<br />                                                </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">"</span><span style="color: #000000; ">-hiden' style='display:none'></div></span><span style="color: #000000; ">"</span><span style="color: #000000; ">);<br />                        var view </span><span style="color: #000000; ">=</span><span style="color: #000000; "> eval(</span><span style="color: #000000; ">'</span><span style="color: #000000; ">new </span><span style="color: #000000; ">'</span><span style="color: #000000; "> </span><span style="color: #000000; ">+</span><span style="color: #000000; "> viewName </span><span style="color: #000000; ">+</span><span style="color: #000000; "> </span><span style="color: #000000; ">'</span><span style="color: #000000; ">()</span><span style="color: #000000; ">'</span><span style="color: #000000; ">);<br />                        callback.call(</span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">, view);<br />                    }<br />        });<br />    }<br />}</span></div><br /><br /><div style="background-color:#eeeeee;font-size:13px;border:1px solid #CCCCCC;padding-right: 5px;padding-bottom: 4px;padding-left: 4px;padding-top: 4px;width: 98%;word-break:break-all"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; ">    </span><span style="color: #0000FF; ">package</span><span style="color: #000000; "> com.htsoft.core.web.filter;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> java.io.IOException;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> java.util.HashMap;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> java.util.Iterator;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> java.util.Map;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.Filter;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.FilterChain;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.FilterConfig;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.ServletException;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.ServletRequest;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.ServletResponse;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.http.HttpServletRequest;  <br />        </span><span style="color: #0000FF; ">import</span><span style="color: #000000; "> javax.servlet.http.HttpServletResponse;  <br />          <br />        </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">class</span><span style="color: #000000; "> GzipJsFilter </span><span style="color: #0000FF; ">implements</span><span style="color: #000000; "> Filter {  <br />            Map headers </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">new</span><span style="color: #000000; "> HashMap();  <br />            </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> destroy() {  <br />            }  <br />            </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> doFilter(ServletRequest req, ServletResponse res,  <br />                    FilterChain chain) </span><span style="color: #0000FF; ">throws</span><span style="color: #000000; "> IOException, ServletException {  <br />                </span><span style="color: #0000FF; ">if</span><span style="color: #000000; ">(req </span><span style="color: #0000FF; ">instanceof</span><span style="color: #000000; "> HttpServletRequest) {  <br />                    doFilter((HttpServletRequest)req, (HttpServletResponse)res, chain);  <br />                }</span><span style="color: #0000FF; ">else</span><span style="color: #000000; "> {  <br />                    chain.doFilter(req, res);  <br />                }  <br />            }  <br />            </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> doFilter(HttpServletRequest request,  <br />                    HttpServletResponse response, FilterChain chain)  <br />                    </span><span style="color: #0000FF; ">throws</span><span style="color: #000000; "> IOException, ServletException {  <br />                    request.setCharacterEncoding(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">UTF-8</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);  <br />                    </span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">(Iterator it </span><span style="color: #000000; ">=</span><span style="color: #000000; "> headers.entrySet().iterator();it.hasNext();) {  <br />                        Map.Entry entry </span><span style="color: #000000; ">=</span><span style="color: #000000; "> (Map.Entry)it.next();  <br />                        response.addHeader((String)entry.getKey(),(String)entry.getValue());  <br />                    }  <br />                    chain.doFilter(request, response);  <br />            }  <br />          <br />            </span><span style="color: #0000FF; ">public</span><span style="color: #000000; "> </span><span style="color: #0000FF; ">void</span><span style="color: #000000; "> init(FilterConfig config) </span><span style="color: #0000FF; ">throws</span><span style="color: #000000; "> ServletException {  <br />                String headersStr </span><span style="color: #000000; ">=</span><span style="color: #000000; "> config.getInitParameter(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">headers</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);  <br />                String[] headers </span><span style="color: #000000; ">=</span><span style="color: #000000; "> headersStr.split(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">,</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);  <br />                </span><span style="color: #0000FF; ">for</span><span style="color: #000000; ">(</span><span style="color: #0000FF; ">int</span><span style="color: #000000; "> i </span><span style="color: #000000; ">=</span><span style="color: #000000; "> </span><span style="color: #000000; ">0</span><span style="color: #000000; ">; i </span><span style="color: #000000; "><</span><span style="color: #000000; "> headers.length; i</span><span style="color: #000000; ">++</span><span style="color: #000000; ">) {  <br />                    String[] temp </span><span style="color: #000000; ">=</span><span style="color: #000000; "> headers[i].split(</span><span style="color: #000000; ">"</span><span style="color: #000000; ">=</span><span style="color: #000000; ">"</span><span style="color: #000000; ">);  <br />                    </span><span style="color: #0000FF; ">this</span><span style="color: #000000; ">.headers.put(temp[</span><span style="color: #000000; ">0</span><span style="color: #000000; ">].trim(), temp[</span><span style="color: #000000; ">1</span><span style="color: #000000; ">].trim());  <br />                }  <br />            }  <br />        }  <br /></span></div><br /><div>3.在WEB.xml 文g中,d以下配置Q?/div><br /><div style="background-color: #eeeeee; font-size: 13px; border: 1px solid #cccccc; padding: 4px 5px 4px 4px; width: 98%; word-break: break-all;"><!--<br /><br />Code highlighting produced by Actipro CodeHighlighter (freeware)<br />http://www.CodeHighlighter.com/<br /><br />--><span style="color: #000000; "><</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />    </span><span style="color: #000000; "><</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">GzipJsFilter</span><span style="color: #000000; "></</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />    </span><span style="color: #000000; "><</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #0000FF; ">class</span><span style="color: #000000; ">></span><span style="color: #000000; ">com.htsoft.core.web.filter.GzipJsFilter</span><span style="color: #000000; "></</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #0000FF; ">class</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />    </span><span style="color: #000000; "><</span><span style="color: #000000; ">init</span><span style="color: #000000; ">-</span><span style="color: #000000; ">param</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />        </span><span style="color: #000000; "><</span><span style="color: #000000; ">param</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">headers</span><span style="color: #000000; "></</span><span style="color: #000000; ">param</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />        </span><span style="color: #000000; "><</span><span style="color: #000000; ">param</span><span style="color: #000000; ">-</span><span style="color: #000000; ">value</span><span style="color: #000000; ">></span><span style="color: #000000; ">Content</span><span style="color: #000000; ">-</span><span style="color: #000000; ">Encoding</span><span style="color: #000000; ">=</span><span style="color: #000000; ">gzip</span><span style="color: #000000; "></</span><span style="color: #000000; ">param</span><span style="color: #000000; ">-</span><span style="color: #000000; ">value</span><span style="color: #000000; ">></span><span style="color: #000000; ">    <br />    </span><span style="color: #000000; "></</span><span style="color: #000000; ">init</span><span style="color: #000000; ">-</span><span style="color: #000000; ">param</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br /></span><span style="color: #000000; "></</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br /></span><span style="color: #000000; "><</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">mapping</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br /></span><span style="color: #000000; "><</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">GzipJsFilter</span><span style="color: #000000; "></</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">name</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br /></span><span style="color: #000000; "><</span><span style="color: #000000; ">url</span><span style="color: #000000; ">-</span><span style="color: #000000; ">pattern</span><span style="color: #000000; ">>*</span><span style="color: #000000; ">.gzjs</span><span style="color: #000000; "></</span><span style="color: #000000; ">url</span><span style="color: #000000; ">-</span><span style="color: #000000; ">pattern</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br />lt;</span><span style="color: #000000; ">/</span><span style="color: #000000; ">filter</span><span style="color: #000000; ">-</span><span style="color: #000000; ">mapping</span><span style="color: #000000; ">></span><span style="color: #000000; ">  <br /></span><span style="color: #000000; "><</span><span style="color: #000000; ">servlet</span><span style="color: #000000; ">-</span><span style="color: #000000; ">mapping</span><span style="color: #000000; ">></span><span style="color: #000000;">  <br /></span></div><div>4.在index.jsp中引入该压羃文gQ?br />   <script type="text/javascript" src="<%=request.getContextPath()%>/ext3/ext-all.gzjs"></script></div><div>  <img title="点击查看原始大小囄" src="http://dl.iteye.com/upload/attachment/166962/530c3350-fce4-37d9-a075-6d85e768ada8.jpg" alt="" height="147" width="700" /> <p>可以看到览器解压后Q其代码是一LQ?/p> <p><img title="点击查看原始大小囄" src="http://dl.iteye.com/upload/attachment/166964/ad53b063-882f-3fd7-adde-11a9d1c56cda.jpg" alt="" height="160" width="700" /></p> <p> </p> <p> </p> <p>大家可以看到以上Q这块是在外|用的Q其速度是比较快的。当Ӟ览器解压这个文仉要一Ҏ_不过在本地解压是非常快的Q可以不用管?/p> <p> </p> <p> </p> <p>三、通过Js~存Q更加可以提高IQT的加载速度Q关于缓存,本文不作讨论?/p></div>原文Q?div>http://man1900.iteye.com/blog/515058</div><img src ="http://www.aygfsteel.com/xiaohuzi2008/aggbug/402751.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/xiaohuzi2008/" target="_blank">胡?/a> 2013-08-13 16:48 <a href="http://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/13/402751.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>从jar包中d资源文ghttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/12/402695.html胡?/dc:creator>胡?/author>Mon, 12 Aug 2013 07:19:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/12/402695.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/402695.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/08/12/402695.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/402695.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/402695.html我们常常在代码中d一些资源文?比如囄Q音乐,文本{等)。在单独q行的时候这些简单的处理当然不会有问题。但是,如果我们把代码打成一个jar包以后,即ɞ资源文件一q打包,q些东西也找不出来了。看看下面的代码Q?/span>
//源代?Q?/span>
package edu.hxraid;
import java.io.*;
public class Resource {
    
public  void getResource() throws IOException{
        File file
=new File("bin/resource/res.txt");
        BufferedReader br
=new BufferedReader(new FileReader(file));
        String s
="";
        
while((s=br.readLine())!=null)
            System.out.println(s);
    }
}   
q段代码写在Eclipse建立的java Project中,其目录ؓQ?其中资源文件res.txt攑֜了bin目录下,以便打成jar?
      1、src/
              src/edu/hxraid/Resource.java
      2、bin/
              bin/resource/res.txt
              bin/edu/hxraid/Resource.class

      很显然运行源代码1是能够找到资源文件res.txt。但当我们把整个工程打成jar包以?ResourceJar.jar)Q这个jar包内的目录ؓQ?br />               edu/hxraid/Resource.class
              resource/res.txt

 

         而这时jar包中Resource.class字节 码:ldc <String "bin/resource/res.txt"> [20] 无法定位到jar包中的res.txt位置上。就把bin/目录LQldc <String "resource/res.txt"> [20] 仍然无法定位到jar包中res.txt上?/span>


q主要是因ؓjar包是一个单独的文g而非文g夹,l对不可能通过"file:/e:/.../ResourceJar.jar/resource /res.txt"q种形式的文件URL来定位res.txt。所以即使是相对路径Q也无法定位到jar文g内的txt文g(读者也许对q段原因解释有些费解Q在下面我们会用一D代码运行的l果来进一步阐q??/span>
那么把资源打入jar包,无论ResourceJar.jar在系l的什么\径下Qjar包中的字节码E序都可以找到该包中的资源。这会是qL吗?


      当然不是Q我们可以用c装载器(ClassLoader)来做到这一点:

         (1) ClassLoader 是类加蝲器的抽象cR它可以在运行时动态的获取加蝲cȝq行信息?/span> 可以q样_当我们调用ResourceJar.jar中的ResourcecLQJVM加蝲qResourcec,q记录下Resourceq行时信?(包括Resource所在jar包的路径信息)。而ClassLoadercM的方法可以帮助我们动态的获取q些信息:
          ● public URL getResource(String name)
            查找hl定名称的资源。资源是可以通过cM码以与代码基无关的方式访问的一些数?囑փ、声韟뀁文本等)。ƈq回资源的URL对象?br />           ● public InputStream getResourceAsStream(String name);
             q回d指定资源的输入流?span style="color: #000080;">q个Ҏ很重要,可以直接获得jar包中文g的内宏V?/span>

         

          (2) ClassLoader是abstract的,不可能实例化对象Q更加不可能通过ClassLoader调用上面两个Ҏ?strong>所以我们真正写代码的时候,是通过ClasscM的getResource()和getResourceAsStream()ҎQ这两个Ҏ会委托ClassLoader中的getResource()和getResourceAsStream()Ҏ 。好了,现在我们重新写一DResource代码,来看看上面那D费解的话是什么意思了Q?/span>


//源代?Q?/span>
package edu.hxraid;
import java.io.*;
import java.net.URL;
public class Resource {
    
public  void getResource() throws IOException{    
              
//查找指定资源的URLQ其中res.txt仍然开始的bin目录?nbsp;
        URL fileURL=this.getClass().getResource("/resource/res.txt"); 
        System.out.println(fileURL.getFile());
    }
    
public static void main(String[] args) throws IOException {
        Resource res
=new Resource();
        res.getResource();
    }
}

q行q段源代码结果:/E:/Code_Factory/WANWAN/bin/resource/res.txt  (../ Code_Factory/WANWAN/.. 是java project所在的路径)

           我们这D代码打包成ResourceJar.jar ,q将ResourceJar.jar攑֜其他路径?比如 c:\ResourceJar.jar)。然后另外创Z个java projectq导入ResourceJar.jarQ写一D调用jar包中Resourcecȝ试代码Q?/span>


import java.io.IOException;
import edu.hxraid.Resource;
public class TEST {
    
public static void main(String[] args) throws IOException {
        Resource res
=new Resource();
        res.getResource();
    }
}
q时的运行结果是Q?span style="color: #ff0000;">file:/C:/ResourceJar.jar!/resource/res.txt
我们成功的在q行时动态获得了res.txt的位|。然而,问题来了Q你是否可以通过下面q样的代码来得到res.txt文gQ?br />                       File f=new File("C:/ResourceJar.jar!/resource/res.txt");
            当然不可能,因ؓ".../ResourceJar.jar!/resource/...."q不是文件资源定位符的格?(jar中资源有其专门的URL形式Q?/span> jar:<url>!/{entry} )。所以,如果jar包中的类源代码用File f=new File(相对路径);的Ş式,是不可能定位到文件资源的。这也是Z么源代码1打包成jar文g后,调用jar包时会报出FileNotFoundException的症l所在了?/span>

 

          (3) 我们不能用常规操作文件的Ҏ来读取ResourceJar.jar中的资源文gres.txtQ?strong>但可以通过ClasscȝgetResourceAsStream()Ҏ来获?/span> Q这U方法是如何djar中的资源文g的,q一点对于我们来说是透明的。我们将Resource.java改写成:


//源代?Q?/span>
package edu.hxraid;
import java.io.*;
public class Resource {
    
public void getResource() throws IOException{
        
//q回d指定资源的输入流
        InputStream is=this.getClass().getResourceAsStream("/resource/res.txt"); 
        BufferedReader br
=new BufferedReader(new InputStreamReader(is));
        String s
="";
        
while((s=br.readLine())!=null)
            System.out.println(s);
    }
}

我们java工程?bin目录中的edu/hxraid /Resource.class和资源文件resource/res.txt一q打包进ResourceJar.jar中,不管jar包在pȝ的Q何目?下,调用jar包中的Resourcec都可以获得jar包中的res.txt资源Q再也不会找不到res.txt文g了?/span>

原文Q?div>http://www.iteye.com/topic/483115

]]>
Eclipse 快捷?/title><link>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/25/401930.html</link><dc:creator>胡?/dc:creator><author>胡?/author><pubDate>Wed, 24 Jul 2013 17:00:00 GMT</pubDate><guid>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/25/401930.html</guid><wfw:comment>http://www.aygfsteel.com/xiaohuzi2008/comments/401930.html</wfw:comment><comments>http://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/25/401930.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/401930.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/401930.html</trackback:ping><description><![CDATA[<strong>~辑代码常用快捷?/strong><div><div class="wmqeeuq" id="cnblogs_post_body"> <p>格式化代码的快捷?Ctrl + Shift + F</p> <p>格式化羃q的快捷键是 Ctrl + IQ只能对选中的文本进行羃q?/p> <p>删除一行的快捷键是 Ctrl + D</p> <p>当前H口最大化最化切换 Ctrl + M</p> <p>转到最后进行修改的位置 Ctrl + Q</p> <p>快速查N中的字W?Ctrl + K(向下) Ctrl + Shift + K(向上)</p> <p>光标攑ֈ一个括P切换到另一个成对的括号 Ctrl + Shirt + P</p> <p>在编辑过的位|进行切?Alt + 左右方向?/p> <p><strong>阅读代码常用的快捷键</strong></p> <p>F3不解释(一些h喜欢用Ctrl + 鼠标左键Q?/p> <p>选中Ҏ或者变?Ctrl + Alt + HQ查扑֜哪些地方调用Q快速阅M码和评估代码修改必须要用到的</p> <p>l承关系 F4Q了解代码的框架</p> <p>快速查扑և数和变量 Ctrl + OQ输入函数或变量的名字,比在Outline中一个一个找要快很多Q但是要对代码有了解</p> <p>全工E查?Ctrl + HQ代码巨多的情况下必不可?/p> <p><em>׃水^有限Q笔者只用到了这些快捷键</em></p> <p><strong>如果想知道其他的快捷?Ctrl + Shift + L</strong></p> <p><strong>自定义格式化代码</strong></p> <p>在Preference中打开Java的Format</p> <p><img src="http://images.cnitblog.com/blog/189715/201307/23215455-810155cd1491422686ce1004b238674d.png" alt="" /></p> <p>内徏的模版是不能修改的,点击New...Q随便输入一个名字,新徏一个自q模板Q弹定义EditH口</p> <p><img src="http://images.cnitblog.com/blog/189715/201307/23215652-11b83f4d698f4724bf922b15a640f0f9.png" alt="" height="564" width="711" /></p> <p>可以定义的项目非怸富,在右边还可以q行预览Q就对英文不感冒,也可以捉摸出大致的意思。对代码q行格式化的好处是不仅仅是美观,便于阅读Q在 q行团队开发的时候,使用l一的格式,在合q代码的时候可以避免许多的冲突。修改完成的模版是使用Ctrl + Shift + F格式化时的模?/p> <p><strong>自动去除无用的importQ自动补全@Override和@deprecatedQeclipse的Clean up</strong></p> <p>在Code Style中,除了Formatq有Clean Up</p> <p><img src="http://images.cnitblog.com/blog/189715/201307/23220521-056672b4196249be9ea60d5fa66fe8cc.png" alt="" /></p> <p>和Formatq行同样的操作,新徏一个模板,有几个地Ҏ军_有必要改一?/p> <p>?strong>Code Organizing</strong>标签选择<strong>Remove trailing whitespace</strong>Q移除尾部的I格Q?/p> <p>?strong>Organzie imports</strong></p> <p>选择Organzie imports前效?/p> <div> <pre><span style="color: #0000ff;">import</span> org.model.*;</pre> </div> <p>选择Organzie imports后效?/p> <div> <pre><span style="color: #0000ff;">import</span> org.model.Engine;</pre> </div> <p><img style="line-height: 1.5;" src="http://images.cnitblog.com/blog/189715/201307/23221113-7dd886d380f64c7b99b561e71bf4bbdd.png" alt="" /></p> <p>切换到Code Style标签</p> <p><strong><img src="http://images.cnitblog.com/blog/189715/201307/23221849-cf68e596760f4168873f5c7f8934c6bd.png" alt="" /></strong></p> <p> </p> <p><strong>Use blocks in if/while/for/do statements </strong>?strong>if/while/for/do</strong>自动d括号Q这个因异Q我军_即只用一行,也应该添加括受?/p> <p>点击菜单里的Source - Clean upQ可以对代码q行清理Q清理代码最大的好处?#8212;—<strong>U除没用的importQ自动添加@Deprecated和@Override</strong></p> <p><strong><br /></strong>特别是自动添加@OverrideQ可以很清楚的明白那些函数是l承的?/p> <p><strong>代码提示</strong></p> <p>用过visual assistx的一定非常系l它的代码提C功能,我是个没有代码提C就无法Coding的hQ点击菜单Windows-PreferenceQ切换到以下H口</p> <p><img src="http://images.cnitblog.com/blog/189715/201307/23224440-b5e72b0c643e4c7091d36f62b448f6f7.png" alt="" height="453" width="651" /></p> <p>扑ֈAuto ActivationQ也是U色Ҏ中的部分Q将<strong>Auto activation delay(ms):</strong> 修改?<strong>50</strong></p> <p>?strong>Auto activation triggers for Java:</strong>修改?<strong>.abcdefghigklmnoprstuvwxyz</strong>Q这样就能随时提CZ?/p> <p> </p> <p>最后介l两个工P<strong>Search Everything</strong> Ҏ文g名快速查找文Ӟ<strong>ClipX</strong>剪脓板历史记录?/p></div></div><br />原文Qhttp://www.cnblogs.com/sw926/p/3209615.html<img src ="http://www.aygfsteel.com/xiaohuzi2008/aggbug/401930.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/xiaohuzi2008/" target="_blank">胡?/a> 2013-07-25 01:00 <a href="http://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/25/401930.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{】Hibernate使用SchemaExport和AnnotationConfiguration生成表结?http://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/11/401452.html胡?/dc:creator>胡?/author>Thu, 11 Jul 2013 06:13:00 GMThttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/11/401452.htmlhttp://www.aygfsteel.com/xiaohuzi2008/comments/401452.htmlhttp://www.aygfsteel.com/xiaohuzi2008/archive/2013/07/11/401452.html#Feedback0http://www.aygfsteel.com/xiaohuzi2008/comments/commentRss/401452.htmlhttp://www.aygfsteel.com/xiaohuzi2008/services/trackbacks/401452.html 1 @Entity
 2 @Table(name="T_ADM_USER")
 3 public class User extends GenericEntity implements Serializable {
 4     
 5     @OneToOne(cascade = CascadeType.PERSIST)
 6     @JoinColumn(name="grade_id")
 7     public Grade getGrade() {
 8         return grade;
 9     }
10     public void setGrade(Grade grade) {
11         this.grade = grade;
12     }
13     @Column(name="user_name", insertable = true, updatable = true, nullable = true)
14     public String getUsername() {
15         return username;
16     }
17     public void setUsername(String username) {
18         this.username = username;
19     }
20 
21 }

 1 public class TableUtil {
 2 
 3     public static void main(String[] args) {
 4         try{
 5             
 6             AnnotationConfiguration cfg = new AnnotationConfiguration();
 7             cfg.addAnnotatedClass(com.mygogo.grade.user.entity.User.class);                        
 9             SchemaExport se = new SchemaExport(cfg);
10             se.setDelimiter(";");
11             se.drop(truetrue);
12             se.create(truetrue);
13         }catch(Exception e){
14             e.printStackTrace();
15         }
16         
17     }
18 }















]]>
վ֩ģ壺 | ʻ| | կ| ˮ| ī| ͷ| ˮ| ɽ| | ʩ| ɽ| ƽ| | ˮ| ˳| ̩| | Դ| Ѯ| ո| | ʡ| | Զ| | ʳ| | Ұ| ɰ| | | ʲ| Ԫ| | Դ| Ͻ| | Ϫ| | ¡|