`
Angelialily
  • 浏览: 241706 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

java自定义标签代码

阅读更多
--------------------javaBean---------------
AuditingMSSqlIMp.java文件
public Page getAuditingListPage(int pageIndex, int pageSize,int userId) throws SQLException {
// TODO Auto-generated method stub
Page page = new Page();
Connection conn = null;
CallableStatement  stmt = null;
ResultSet   rst = null;
try{
String str="{call dbo.up_auditingList(?,?,?)}";
conn = super.getDBConnection();
stmt   = conn.prepareCall(str);
stmt.setInt(1, pageIndex);
stmt.setInt(2, pageSize);
stmt.setInt(3, userId);
rst  = stmt.executeQuery();
while(rst.next()){
LpReadObj  auditing = new LpReadObj();
auditing.setRegionName(rst.getString("regionName"));
auditing.setRealName(rst.getString("realName"));
auditing.setUserName(rst.getString("userName"));
auditing.setApplyLpCount(rst.getInt("Ah_applyLpcount"));
auditing.setApprovalCount(rst.getInt("ah_approvalCount"));
auditing.setType(rst.getInt("ah_type"));
auditing.setApplyDate(rst.getString("ah_applydate"));
page.getItems().add(auditing);

}
if (stmt.getMoreResults()) {
rst = stmt.getResultSet();
if (rst.next()) {
page.setTotalRecords(rst.getInt(1));
}
}
}catch (SQLException e) {
throw e;
}finally{
super.closeResultSet(rst);
super.closeStatement(stmt);
super.closeConnection(conn);
}
return page;
}
--------------------页面使用文件---------------
auditing_Query.jsp 页面使用文件

<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ page import="com.eline.epicc.user.*"%>
<%@ page import="com.eline.epicc.user.model.*"%>
<%@ taglib uri="/tlds/eline-common.tld" prefix="common1"%>
<%@ taglib uri="/tlds/eline-auditing.tld" prefix="auditing1"%>
<%
User user = Users.getUser();
if (user == null || user.getUserId() == 0) {
System.out.println("Can not get instance of current user.");
user = Users.getAnonymousUser();
}
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<auditing1:auditingListQuery id="auditingList1" userId="<%=user.getUserId()%>" pageSize="10">
<table class="clsDataList" cellspacing="0" width="100%" border="1" cellpadding="1">
<tr height="30">
<th align="center" nowrap width="12%">分公司</th>
<th align="center" nowrap width="10%">真实姓名</th>
<th align="center" nowrap width="10%">登陆名称</th>
<th align="center" nowrap width="4%">申请号码数</th>
<th align="center" nowrap width="4%">批准号码数</th>
<th align="center" nowrap width="5%">二维码类型</th>
<th align="center" nowrap width="10%">批复日期</th>
</tr>
<common1:items>
<tr height="25">
<td align="center" width="12%"><auditing1:auditingQueryAttribute name="regionName" /></td>
<td align="center" width="10%"><auditing1:auditingQueryAttribute name="realName" /></td>
<td align="center" width="10%"><auditing1:auditingQueryAttribute name="userName" /></td>
<td align="center" width="4%"><auditing1:auditingQueryAttribute name="applyLpCount" /></td>
<td align="center" width="4%"><auditing1:auditingQueryAttribute name="approvalCount" /></td>
<td align="center" width="5%"><auditing1:auditingQueryAttribute name="type" /></td>
<td align="center" width="10%"><auditing1:auditingQueryAttribute name="applyDate" /></td>
</tr>
</common1:items>
</table>
<table border="0" width="100%" cellspacing="0" cellpadding="0">
<tr>
<td><common1:summaryForm /></td>
<td align="right">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td><common1:numberForm>
<input type="submit" value="GO"
style="HEIGHT: 20px; FONT-FAMILY:SimSun" />
</common1:numberForm></td>
<td valign="bottom"><common1:firstForm>
<input class="clsBtnPager" type="submit" value="7">
</common1:firstForm></td>
<td valign="bottom"><common1:prevForm>
<input class="clsBtnPager" type="submit" value="3">
</common1:prevForm></td>
<td valign="bottom"><common1:nextForm>
<input class="clsBtnPager" type="submit" value="4">
</common1:nextForm></td>
<td valign="bottom"><common1:lastForm>
<input class="clsBtnPager" type="submit" value="8">
</common1:lastForm></td>
</tr>
</table>
</td>
</tr>
</table>
</auditing1:auditingListQuery>
--------------------配置页面使用的属性---------------
package com.eline.epicc.auditing.taglib;
import org.blue.util.StringUtils;
import com.eline.epicc.auditing.model.LpReadObj;
import com.eline.epicc.insurance.Insurances;
import com.eline.epicc.taglib.ItemAttributeTag;
public class AuditingQueryAttributeTag extends ItemAttributeTag  {

/**
*
*/
private static final long serialVersionUID = 1L;
protected String createText() {
LpReadObj obj = (LpReadObj) item;
if (name.equalsIgnoreCase("regionName")) {
return "" + obj.getRegionName();
} else if (name.equalsIgnoreCase("userName")) {
return  "" + obj.getUserName();
}else if (name.equalsIgnoreCase("realName")) {
return  "" + obj.getRealName();
}else if(name.equalsIgnoreCase("mobilePIN")){
return "" + StringUtils.toString(obj.getMobilePIN());
}else if(name.equalsIgnoreCase("applyLpCount")){
return "" + StringUtils.toString(obj.getApplyLpCount());
}else if(name.equalsIgnoreCase("approvalCount")){
return "" + StringUtils.toString(obj.getApprovalCount());
}else if(name.equalsIgnoreCase("type")){
return "" + Insurances.getTypeMessage(obj.getType());
}else if(name.equalsIgnoreCase("applyDate")){
String  aa = StringUtils.toString(obj.getApplyDate());
String  bb = aa.substring(0, 11);
return "" + bb;

}
return null;
}
}


--------------------配置标签使用类---------------
package com.eline.epicc.auditing.taglib;

import java.util.Collection;
import javax.servlet.http.HttpServletRequest;
import com.eline.epicc.auditing.Auditings;
import com.eline.epicc.taglib.ListTag;
import com.eline.epicc.taglib.SortOrder;
import com.eline.epicc.user.Users;
import com.eline.epicc.user.model.SortUsersBy;
import com.eline.epicc.user.model.User;
import com.eline.epicc.taglib.Page;

public class AuditingQueryTag extends ListTag {
/**
*
*/
private static final long serialVersionUID = 1L;
protected final String prefix = "UserList_";
protected boolean hasNext = false;
private String regionName;//分公司
private String userName;//姓名
private String realName;
private  int  userId;
protected int sortBy = SortUsersBy.Username;
protected int sortOrder = SortOrder.Ascending;
protected String usernameFilter = null;
private int tatalCount;
private int doneCount;
private int remainCount;
private int unApplyCount;
private int approvalCount;
private int type;

//审核记录
private String mobilePIN;//TEL
private int  applyLpCount;//applyCount
private String applyDate; //审核日期
public String getApplyDate() {
return applyDate;
}
@Override
protected Collection findCollection() throws Exception {
// TODO Auto-generated method stub
Collection coll = null;
Page page = null;

User user = Users.getUser();
if (user == null || user.getUserId() == 0)
throw new Exception("Can not get instance of current user.");

HttpServletRequest request = (HttpServletRequest) pageContext.getRequest();

// 保证每次调用该列表页面时总显示第一页
if (request.getParameter(getParamPrefix() + "pageIndex") == null
|| request.getParameter(super.getParamPrefix() + "pageIndex").equals("")
|| request.getParameter(getParamPrefix() + "pageIndex").equalsIgnoreCase("null"))
pageIndex = 0;
page = Auditings.readAuditingList(pageIndex,pageSize,user.getUserId());
coll = page.getItems();
System.out.println("page.size()=" + page.getSize());

// 为基类相应属性赋值,写共几条记录,共几页第几页用
totalRecords = page.getTotalRecords(); // 共有多少条记录
//totalRecords = 5;
totalPages = (totalRecords + pageSize - 1) / pageSize; // 共有多少页
// 是否有下页
hasNext = ((pageIndex + 1) < totalRecords) ? true : false;
return coll;
}

@Override
protected void initParamPrefix() {
super.paramPrefix = this.prefix;
}

public void setUsernameFilter(String usernameFilter) {
if (usernameFilter != null
&& (usernameFilter.length() == 0 || usernameFilter.equalsIgnoreCase("null")))
this.usernameFilter = null;
else
this.usernameFilter = usernameFilter;
}
@Override
protected boolean needsNextForm() {
// TODO Auto-generated method stub
return hasNext;
}

}

--------------------页面属性配置文件---------------
  eline-auditing.tld文件 自定义标签配置属性文件
<?xml version="1.0" encoding="GB2312"?>
<!DOCTYPE taglib
PUBLIC "-//Sun Microsystems, Inc.//DTD JSP Tag Library 1.1//EN"
"http://java.sun.com/j2ee/dtds/web-jsptaglibrary_1_1.dtd">

<!-- a tag library descriptor -->
<taglib>
<tlibversion>1.0</tlibversion>
<jspversion>1.1</jspversion>
<shortname>waftemplate</shortname>
<uri></uri>
<info>EPicc Web Application Framework Template Tags</info>

<!--
二维码列表显示
-->
<tag>
<name>auditingAttribute</name>
<tagclass>com.eline.epicc.auditing.taglib.AuditingAttributeTag</tagclass>
<bodycontent>empty</bodycontent>
<info>用于二维码分配的详细信息</info>

<!-- default is "name" -->
<attribute>
<name>name</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>

<tag>
<name>auditingQueryAttribute</name>
<tagclass>com.eline.epicc.auditing.taglib.AuditingQueryAttributeTag</tagclass>
<bodycontent>empty</bodycontent>
<info>用于二维码分配的详细信息</info>

<!-- default is "name" -->
<attribute>
<name>name</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
    <tag>
<name>auditingListQuery</name>
<tagclass>com.eline.epicc.auditing.taglib.AuditingQueryTag</tagclass>
<bodycontent>JSP</bodycontent>
<info>用于求出符合条件的二维码信息列表</info>

<!-- id字符串 -->
<attribute>
<name>id</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>

<attribute>
<name>userId</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>

<!-- 每页最大记录数 -->
<attribute>
<name>pageSize</name>
<required>true</required>
<rtexprvalue>true</rtexprvalue>
</attribute>

<!-- 第几页 -->
<attribute>
<name>pageIndex</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>

<!-- 排序字段 -->
<attribute>
<name>sortBy</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<attribute>
<name>sortOrder</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!-- 分公司 -->
<attribute>
<name>regionName</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!-- (手机)姓名 -->
<attribute>
<name>userName</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!-- 姓名 -->
<attribute>
<name>realName</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!-- 电话号码 -->
<attribute>
<name>mobilePIN</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>

<!--  申请号码数-->
<attribute>
<name>applyLpCount</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!--  批准号码数-->
<attribute>
<name>approvalCount</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!--二维码类型-->
<attribute>
<name>type</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
<!--审核日期-->
<attribute>
<name>applyDate</name>
<required>false</required>
<rtexprvalue>true</rtexprvalue>
</attribute>
</tag>
</taglib>
--------------------以上流程自定义标签实现---------------
分享到:
评论

相关推荐

    java自定义标签.......java自定义标签

    Java自定义标签是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者扩展JSP的标准标签库,创建自己的定制化标签,以提高代码的可读性和可维护性。自定义标签可以封装复杂的业务逻辑或者视图呈现,使得页面...

    java自定义标签教程

    总的来说,Java自定义标签提供了一种强大的方式来扩展JSP,使得开发者能够创建符合业务需求的定制化组件,提高了代码的复用性和灵活性。通过理解标签的生命周期和接口的使用,可以更有效地开发和维护JSP应用。

    这是本人做的一个很好的Java自定义标签

    与传统的脚本语言(如JavaScript)相比,Java自定义标签能够更好地利用Java的强大功能,提高代码的可维护性和可扩展性。 #### 2. Java自定义标签的优势 - **封装性**:可以将复杂的业务逻辑封装到一个简单的标签中...

    java自定义标签、自定义函数、taglib

    在Java Web开发中,自定义标签(Custom Tags)和自定义函数(Custom Functions)是提高代码复用性和可维护性的重要手段。它们是JSP(JavaServer Pages)标准标签库(JSTL)的一种扩展,允许开发者创建符合特定业务...

    java自定义标签 可运行

    总之,Java自定义标签是Java Web项目中的重要工具,它们通过提供可复用的代码片段,促进了代码的模块化和项目管理的优化。理解并熟练使用自定义标签,对于提升Java Web开发的专业技能大有裨益。

    java自定义标签java自定义标签java自定义标签

    Java自定义标签是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者扩展JSP的标准库,创建自己的标签库,以实现特定的功能或者简化代码。这种机制使得开发者能够将业务逻辑封装在标签中,提高代码的可读性...

    jsp java自定义标签 分页 当前位置 循环遍历数据

    总的来说,通过结合JSP和Java自定义标签,我们可以构建高度定制的、可复用的组件,提升代码的可维护性和效率。在本案例中,这些组件涵盖了分页、当前位置显示和数据遍历,这些都是Web开发中不可或缺的元素。理解并...

    一步一步教你写自己的java自定义标签

    Java自定义标签是JavaServer Pages (JSP)技术的一个强大特性,它允许开发者创建可重用的、定制化的标签库,以提高代码的可读性和可维护性。本教程将逐步指导你如何编写自己的Java自定义标签。 首先,我们需要了解...

    java自定义标签分页

    Java自定义标签是一种扩展JSP页面功能的方式,它允许开发者创建可重用的组件,使得在JSP页面中处理业务逻辑或展现复杂视图变得更加简便。在这个“java自定义标签分页”主题中,我们将深入探讨如何利用自定义标签来...

    Java自定义标签开发.zip

    Java自定义标签开发是Java服务器页面(JSP)技术中的一种高级特性,它允许开发者创建自己的标签库,以提供更加可重用、可维护和可扩展的代码。本资源包包含的内容涵盖了Java自定义标签的各个方面,从基础概念到实际...

    java自定义标签 分页标签 whaosoft 143zh

    总的来说,Java自定义标签提供了一种灵活的方式来组织和复用JSP页面的代码,而分页标签是这种技术的一个典型应用场景。学习和理解自定义标签的创建与使用,对于提升Java Web开发效率和代码质量大有裨益。

    Java自定义标签实例分析

    Java自定义标签允许开发人员创建高度定制的标签库,这些库可以更好地适应特定项目需求,提高代码复用性和可维护性。通过实现或扩展`Tag`、`SimpleTag`以及它们的支持类,开发者能够创建复杂的逻辑和控制流程,使得...

    java 自定义标签 简单实例

    本篇文章将深入探讨Java自定义标签的简单实例,帮助你理解如何在实际开发中应用这一技术。 首先,我们需要了解自定义标签的基本结构和组成。一个自定义标签通常由三部分组成:标签库描述文件(TLD)、标签处理类...

    java自定义分页标签

    首先,我们需要了解Java自定义标签的基础。在Java Servlet规范中,JSP标准标签库(JSTL)提供了许多预定义的标签,但有时这些标签无法满足我们的特定需求。这时,我们可以创建自己的自定义标签库(Tag Library)来...

    java中自定义标签的使用方法

    在Java编程语言中,自定义标签(也称为自定义JSP标签)是扩展JSP页面功能的一种强大方式。它们允许开发者创建可重用的代码片段,以提高代码的可读性和可维护性。本篇文章将深入讲解Java中自定义标签的使用方法,包括...

    java自定义标签实例

    本教程将深入探讨Java自定义标签的实现与使用,通过详细的注释和使用文档,帮助你理解和掌握这一技术。 首先,我们需要了解自定义标签的基本结构。自定义标签由三部分组成:标签处理类(Tag Handler Class)、TLD...

    Java自定义标签 教程

    Java自定义标签是JSP开发中的一个重要特性,它允许开发者扩展JSP页面的功能,通过创建自己的标签库来封装复杂逻辑或常见操作。本教程将详细讲解如何创建和使用自定义标签。 首先,JSP中的标签库是实现自定义功能的...

    JAVA自定义标签例子

    总结来说,Java自定义标签的实现涉及创建TLD文件、编写标签处理器类以及在JSP页面中使用。这种机制使得开发者能够构建自己的函数库,提供定制化的功能,从而提高代码复用性和应用程序的可维护性。在本例中,我们学习...

    mybatis自定义标签.zip

    下面我们将深入探讨如何在MyBatis中实现自定义标签,并通过具体的代码示例来展示其实现过程。 首先,创建自定义标签需要以下几个步骤: 1. **定义标签处理类**:这是自定义标签的核心部分,你需要创建一个实现了`...

Global site tag (gtag.js) - Google Analytics