`
microye
  • 浏览: 21803 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
阅读更多

 

1、jroo中有不少自定义标签,如数据字典标签(select、checkbox、radio、view),权限标签,分页/排序/序号标签,国际化标签,位置标签等。

2、自定义标签篇

2.1、数据字典自定义标签 
数据字典中设置的是系统的常量数据,如性别(男:M,女:F)、审核状态(同意:Y,不同意:N)等; 
这些数据在启动服务时就加载到缓存中,在系统上线后,这些常量值一般情况不能轻易改变,不开放给客户; 
这些数据在页面中通常都表现为:下拉框、复选框、单选框或仅显示名称。

使用:

<my:select pvalue="sex" name="user.sex" value="${user.sex}"/>

<my:checkbox pvalue="sex" name="user.sex" value="${user.sex}"/>

<my:radio pvalue="sex" name="user.sex" value="${user.sex}"/>

<my:view value="${user.sex}" pvalue="sex"/>

2.1.1、下拉框

<my:select  
       pvalue="" //上级代码,如性别的代码SEX 
       value="" //当前这一级的代码,如M或F,如果有值,渲染后的select在页面上将选中该项 
       name="" //提交到action的属性名,通标准html select 的name 
       rules="" //验证规则,如当提交form时,验证是否选择了select : rules="[{notNull:true, message:'请选择请假类型'}]" 
       firstoption="---" //渲染后的select,第一个option属性的text,默认是‘请选择’ 
       nullValue="true/false" //渲染后的select,第一个option的value是否 ''; 
       styleClass="" //同标准select的class 
       id="" 
       disabled="" 
       multiple="" 
       size="" 
       style="" 
       title="" 
       ...各种js事件,同标准select的js事件 
/> 

2.1.2、复选框 
<my:checkbox  
        pvalue="" //上级代码,如性别的代码SEX 
        value="" //当前这一级的代码,如M或F或M,F,当M,F时,渲染后的checkbox在页面上,男和女这两项都是选中的 
        name="" //提交到action的属性名,通标准html checkbox 的name 
        scope ="" //数据字典项的子集,每个子集见以英文状态的逗号隔开 
        nbspnum="3" //渲染后的多个checkbox间的空格,默认是3个空格 
        splitregex="" //多个选中的值时的分隔符,默认是英文状态的逗号,如M,F。 
        checked="true/false" //当vale=""时,checked为true时默认全选,为false时默认全不选。  
        br="true/false" //显示checkbox是否分行,true时一行显示一个checkbox,false时在一行显示,默认false 
        styleClass="" //同标准select的class 
        id="" 
        disabled="" 
        multiple="" 
        size="" 
        style="" 
        title="" 
        ...各种js事件,同标准checkbox的js事件 
/> 
2.1.3、单选框 
<my:radio  
        pvalue="" //上级代码,如性别的代码SEX 
        value="" //当前这一级的代码,如M或F或M,为M时选中男,为F时选中女 
        name="" //提交到action的属性名,通标准html radio 的name 
        nbspnum="3" //渲染后的多个radio间的空格,默认是3个空格 
        br="true/false" //显示checkbox是否分行,true时一行显示一个checkbox,false时在一行显示,默认false  
        styleClass="" //同标准select的class 
        id="" 
        disabled="" 
        multiple="" 
        size="" 
        style="" 
        title="" 
       ...各种js事件,同标准radio的js事件 
/> 
2.1.4、显示名称 
<my:view  
        pvalue="" //上级代码,如性别的代码SEX 
        value="" //当前这一级的代码 ,如M是时在页面显示‘男’,为F时在页面显示‘女’ 
        nbspnum="" //checkbox有多个值时,每个checkbox间的空格格式,默认是3个 
        splitregex="" //checkbox有多个值时,每个值的分隔符,默认是中文状态的逗号 
/>  

2.1.5、数据字典截图: 
图片  

2.2、权限标签:在需要权限控制的地方,放在<my:auth/>标签中间;一般是按钮、链接或其他特殊权限数据。 
     <my:auth value="{auth}">html代码</my:auth> 
      value:权限级别,它的值是el表达式{auth},auth的值在struts2的自定义权限拦截器中设置的。 
      auth的值为:W、R、N; 
      目前是有3中权限级别: 
      管理权限:权限代码为W,管理权限是最大权限,可进行任何操作; 
      无访问限制;权限代码为N,该级别权限表示不能进入当前功能,直接返回到一个‘无访问权限’的页面; 
      查看权限:权限代码为R,拥有查看权限时,仅能查看。 
      例子,在jsp中: 
      <my:auth value="{auth}"> 
            <a href="${ctx }/system/user_input.do?id=${user.id}">编辑</a>  
            <a href="javascript:" title="deletesigle" class="deleteOne" param="ids=${user.id}">删除</a>  
       </my:auth> 
       当auth为R时,编辑、删除链接将不可见。

2.3、head标签:<my:head></my:head> 
         该标签封装了系统常用的js和css,渲染后的html页面中将自动导入这些js和对应的css 
         <my:head  
               datePicker="true/false" //是否导入日期js和css,默认为false 
                lhgdialog="true/false" //是否导入弹出框js和css,默认为false 
                tree3="true/false" //是否导入ztree v3的js和css,默认为false 
                easyui="true/false" //是否导入easyui的js和css,默认为false 
                fck="true/false" //是否导入fck编辑器的的js和css,默认为false 
                multiFile="true/false" //是否导入附件上传的的js和css,默认为false  
                tree2=""> //是否导入ztree v2的的js和css,默认为false  

         例子: 
        <!doctype html> 
        <html> 
        <my:head> 
             //其他css 
             //其他js
        </my:head> 
        <body> 
        </body> 
        </html> 

2.4、国际化标签: 
         <my:i18n zhText="" enText=""/> 
         jsp中,中文环境时显示zhText中的数据,英文环境时显示enText中的数据。

2.5、排序、分页、序号标签 
          系统采用form的方式排序和分页,即排序代码和分页代码,都要用form包起来,然后post方法提交。 
         先看一个例子吧: 
         <form action="${ctx }/system/user_list.do" method="post" id="userForm">
               <div>查询条件.......</div> 
              <table id="sorttable"> 
                        <thead class="ltablehead"> 
                                  <tr> 
                                           <th width="5%">序号</th> 
                                           <th width="10%">用户姓名 <my:order orderattr="user.userName"/></th> 
                                           <th width="10%">性别 <my:order orderattr="user.sex"/></th> 
                                           <th width="15%">部门 <my:order orderattr="user.sysDept.deptName"/></th> 
                                           <th width="15%">角色</th> 
                                           <th style="width: 15%">操作</th> 
                                  </tr> 
                        </thead> 
                       <tbody class="ltablebody"><tr>数据列表......</tr></tbody> 
                </table> 
               <div class="ltablebottom"> 
                      <div style="float: right;"> <my:page page="${page}"/></div>  
               </div> 
         </form>

2.5.1、排序标签:<my:order orderattr=""/> 
             在需要排序的列头加上该标签,属性orderattr与hibernate的hql对应,或sql的表别名.字段名对应, 
             如:在用户姓名的列头上加:<my:order orderattr="user.userName"/>, 
             渲染后的页面上将出现一个排序的箭头,点击这个箭头,用户姓名就循环升序和降序; 
              hql为:...order by user.userName desc。

2.5.2、分页标签:<my:page page="${page}" varName="page"/> 
          在列表的底部加上分页标签,属性page的值对应action中的分页数据,

2.5.3、分页页面的序号标签: 
           <my:rowNum page="${page}" rowIndex="${status.index}"/>  
           将显示每一行的序号。

组合效果,渲染后的页面效果如下:

图片

 

 

 


 

  • 大小: 71.1 KB
  • 大小: 42 KB
分享到:
评论
2 楼 microye 2013-01-03  
yongganzhe 写道
图片无法显示

已加入图片,谢谢提醒
1 楼 yongganzhe 2013-01-02  
图片无法显示

相关推荐

    springmvc+hibernate+jbpm 开发OA源码

    【标签】"OA springmvc"表明这个项目的主要应用场景是办公自动化,且主要依赖SpringMVC作为Web应用的核心框架。OA系统通常包括文档管理、任务管理、会议安排、审批流程等功能,旨在提高工作效率,减少纸质文档的使用...

    OA管理系统

    8. **jroo文件**:在提供的文件列表中,"jroo"可能是JRoo的引用。JRoo是一个基于Java的命令行工具,可以帮助快速生成和管理Spring驱动的应用程序,包括领域模型对象、持久层映射等。在本项目中,JRoo可能被用来生成...

    小型OA系统

    根据文件名“jroo”,可能使用了Java相关的框架,比如JROO,这是一个用于简化企业级Java应用程序开发的工具。这涉及到Java语言、MVC模式以及相关框架的使用。 2. **数据库设计**:使用Mysql作为后端数据库,意味着...

    springmvc+hibernate+jbpm开发OA自动化办公后台管理系统源码.zip

    项目描述 springmvc整合hibernate,jbpm实现快速开发办公系统 运行环境 jdk6+tomcat6+mysql+eclipse ...压缩包sql/jroo.sql jar包文件 链接: https://pan.baidu.com/s/1-bp9H0CZzQ6N4zBX0ATFsg 密码: rq3i

    SSH-OA项目

    在压缩包中的"jroo"文件可能指的是Apache J Roo工具,这是一个轻量级的Java开发工具,可以帮助快速生成SSH或其他Java EE项目的代码,包括实体类、DAO、Service以及相关的Struts2动作类。通过J Roo,开发者可以提高...

Global site tag (gtag.js) - Google Analytics