亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > Java > 正文

Java自定義簡單標簽實例

2019-11-26 16:01:48
字體:
來源:轉載
供稿:網友

下面將以權限的控制為例自定義一個標簽:
一、標簽類型

復制代碼 代碼如下:

<wxt:per uri="${pageContext.request.contextPath }/privilege/list"></wxt:per>

步驟:
1.自定義一個類PerssionTag 繼承SimpleTagSupport(自定義標簽一般都會繼承這個類)
復制代碼 代碼如下:

package cn.com.liveuc.privilege.tag;
import java.io.IOException;
import java.util.ArrayList;
import java.util.List;
import java.util.Set;
import javax.servlet.jsp.JspException;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.tagext.SimpleTagSupport;
import cn.com.liveuc.privilege.model.Privilege;
import cn.com.liveuc.privilege.model.Resource;
import cn.com.liveuc.privilege.model.Role;
import cn.com.liveuc.privilege.model.User;
/**
 *
 * @說明   自定義標簽
 */
public class PerssionTag extends SimpleTagSupport {

 //自定義標簽屬性,用于標簽傳入參數
 private String uri;

 //接收標簽傳入的參數
 public void setUri(String uri) {
  this.uri = uri;
 }
 @Override
 public void doTag() throws JspException, IOException {
  //獲取用戶登陸后保存的Session
  PageContext page = (PageContext) this.getJspContext();
  User user = (User) page.getSession().getAttribute("login");
  //如果用戶登陸
  if(user != null) {
   //用戶登陸判斷用戶權限
   List<String> list = new ArrayList<String>();
   //獲取用戶的角色
   Set<Role> role = user.getRole();
   for(Role r:role) {
    //獲取角色對應的權限
    Set<Privilege> privilege = r.getPrivilege();
    for(Privilege p:privilege) {
     //獲取權限對應的資源
     Set<Resource> res = p.getResource();
     for(Resource re:res) {
      list.add(re.getUri());
     }
    }
   }
   for(String ur:list) {
    //判斷用戶的權限
    if(ur.equals(uri)) {
     this.getJspBody().invoke(null); //有權限輸出標簽體內容
    }
   }
  }
 }
}

2.在WEB-INF下創建tld文件描述標簽。
復制代碼 代碼如下:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<taglib xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 version="2.0"
 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-jsptaglibrary_2_0.xsd">
 <description><![CDATA["To make it easier to access dynamic data;
                    the Apache Struts framework includes a library of custom tags.
                    The tags interact with the framework's validation and internationalization features;
                    to ensure that input is correct and output is localized.
                    The Struts Tags can be used with JSP FreeMarker or Velocity."]]></description>
 <display-name>"Struts Tags"</display-name>
 <tlib-version>2.2.3</tlib-version>
 <short-name>s</short-name>
 <uri>/wxt</uri>
 <tag>
  <name>per</name><!-- 標簽名 -->
  <tag-class>cn.com.liveuc.privilege.tag.PerssionTag</tag-class>
  <body-content>scriptless</body-content>
  <!-- 標簽屬性 -->
  <attribute>
   <name>uri</name><!-- 屬性名稱 -->
   <required>true</required><!-- 是否必須 -->
   <rtexprvalue>true</rtexprvalue><!-- 是否為動態標簽 -->
  </attribute>
 </tag>
</taglib>

3.運用標簽
在Jsp頁面導入標簽:
<A href="mailto:%@taglib prefix='wxt' uri='/wxt' %">%@taglib prefix="wxt" uri="/wxt" %</A>
運用標簽:
<wxt:per uri="${pageContext.request.contextPath }/user/list">
      <a href="${pageContext.request.contextPath }/user/list" target="reight">用戶管理</a>
</wxt:per>
用戶權限包含uri資源的將會輸出標簽內容。 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美国产日本在线| 中文字幕亚洲欧美在线| 中文字幕日韩综合av| 人九九综合九九宗合| 午夜精品久久久久久99热| 成人网中文字幕| 久久久久久久久久久久久久久久久久av| 日韩hd视频在线观看| 2019亚洲日韩新视频| 亚洲男人的天堂网站| 精品国产一区二区三区久久狼5月| 成人黄色免费片| 精品久久久视频| 18久久久久久| 亚洲白拍色综合图区| 色综合久久天天综线观看| 久久露脸国产精品| 国产拍精品一二三| 国产精品久久久久久婷婷天堂| 欧美成人免费视频| 欧美在线一区二区三区四| 日本不卡高字幕在线2019| 亚洲国产精品va在线观看黑人| 精品国模在线视频| 深夜成人在线观看| 欧美国产第二页| 日韩av黄色在线观看| 亚洲精品视频久久| 久久影院在线观看| 成人在线激情视频| 欧美日韩国产精品一区二区三区四区| 青青久久av北条麻妃黑人| 亚洲综合色av| 日本亚洲欧洲色| 欧美成人亚洲成人| 欧美一区二区视频97| 日韩网站免费观看| 欧美xxxwww| 欧美在线视频免费播放| 九九久久精品一区| 91久久久国产精品| 成人h视频在线| 精品亚洲夜色av98在线观看| 久久69精品久久久久久国产越南| 国产欧美日韩视频| 国产一区二区三区视频免费| 91国语精品自产拍在线观看性色| 久久久在线免费观看| 欧美激情一区二区三区成人| 国产成人精品最新| 中文字幕国产精品久久| 欧美在线一区二区三区四| 国产精品美女999| 久久久国产精品视频| 一区三区二区视频| 亚洲综合社区网| 亚洲精品一区二区三区婷婷月| 欧美激情乱人伦| 国产日韩在线视频| 亚洲aaa激情| 欧美精品videofree1080p| 久久精品中文字幕一区| 在线视频欧美性高潮| 欧美激情a在线| 亚洲欧美国产va在线影院| 国产亚洲一区二区精品| 欧美国产乱视频| 日韩欧美亚洲国产一区| 国产精品吊钟奶在线| 亚洲级视频在线观看免费1级| 亚洲美女av黄| 亚洲一区美女视频在线观看免费| 国产丝袜一区二区| 国产xxx69麻豆国语对白| 亚洲三级av在线| 国产一区二区在线免费视频| 992tv成人免费影院| 91在线国产电影| 欧美日韩一区二区精品| 久久久久国产精品www| 亚洲视频在线免费观看| 国产精品日日做人人爱| 热re99久久精品国产66热| 92福利视频午夜1000合集在线观看| 久久久久成人精品| 2018国产精品视频| 国产亚洲成av人片在线观看桃| 国产精品久久久久久久午夜| 国产精品视频久| 91久久国产精品91久久性色| 日韩视频中文字幕| 欧美性在线观看| 欧美在线视频一区| 伊人久久大香线蕉av一区二区| 精品视频在线播放免| 92福利视频午夜1000合集在线观看| 国产综合视频在线观看| 69av成年福利视频| 成人精品久久一区二区三区| 亚洲精品www| 69影院欧美专区视频| 欧美乱大交xxxxx另类电影| 日本精品久久中文字幕佐佐木| 色综久久综合桃花网| 91天堂在线观看| 欧美大肥婆大肥bbbbb| 伊人久久综合97精品| 国产精品影院在线观看| 亚洲男人的天堂在线| 欧美成人午夜剧场免费观看| 日本一本a高清免费不卡| 77777少妇光屁股久久一区| 亚洲aⅴ日韩av电影在线观看| 亚洲人成电影在线播放| 日本aⅴ大伊香蕉精品视频| 日韩少妇与小伙激情| 国产精品久久久久99| 久久久久久免费精品| 日韩成人av网址| 国产精品自产拍在线观看中文| www.xxxx欧美| 亚洲精品ady| 国产精品尤物福利片在线观看| 国内免费精品永久在线视频| 欧美精品成人在线| 性色av一区二区三区在线观看| 国产午夜精品久久久| xxxx欧美18另类的高清| 国产精品电影久久久久电影网| 亚洲女成人图区| 51色欧美片视频在线观看| 91精品久久久久久久久久另类| 欧美日韩一区二区免费视频| 欧洲日本亚洲国产区| 欧美激情一二三| 欧美国产高跟鞋裸体秀xxxhd| 欧美又大粗又爽又黄大片视频| 精品国产老师黑色丝袜高跟鞋| 国产精品夜间视频香蕉| 91亚洲国产精品| 国产综合久久久久久| 国产精品香蕉国产| 久久精品亚洲一区| 久久久久久噜噜噜久久久精品| 国产精品三级在线| 亚洲性线免费观看视频成熟| 国产精品高潮呻吟久久av黑人| 国产精品久久久999| 精品久久久久久久久久久久久久| 中文字幕欧美国内| 91亚洲永久免费精品| 国产精品美乳一区二区免费| 欧美在线亚洲一区| 亚洲欧洲偷拍精品| 欧美午夜无遮挡| 亚洲精品99999| 中文字幕亚洲自拍| 亚洲国产精品小视频| 91久久精品美女高潮| 亚洲天堂成人在线| 插插插亚洲综合网| 国产日本欧美一区二区三区在线| 亚洲视屏在线播放| 97在线日本国产|