﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-sichuanxiaohuo-文章分类-jmesa</title><link>http://www.blogjava.net/sichuanxiaohuo/category/49552.html</link><description /><language>zh-cn</language><lastBuildDate>Sat, 10 Sep 2011 02:53:12 GMT</lastBuildDate><pubDate>Sat, 10 Sep 2011 02:53:12 GMT</pubDate><ttl>60</ttl><item><title>jmesa</title><link>http://www.blogjava.net/sichuanxiaohuo/articles/358074.html</link><dc:creator>sichuanxiaohuo</dc:creator><author>sichuanxiaohuo</author><pubDate>Tue, 06 Sep 2011 03:56:00 GMT</pubDate><guid>http://www.blogjava.net/sichuanxiaohuo/articles/358074.html</guid><wfw:comment>http://www.blogjava.net/sichuanxiaohuo/comments/358074.html</wfw:comment><comments>http://www.blogjava.net/sichuanxiaohuo/articles/358074.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/sichuanxiaohuo/comments/commentRss/358074.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/sichuanxiaohuo/services/trackbacks/358074.html</trackback:ping><description><![CDATA[jmesa分页的方式有两种，一种是通过java代码直接控制，第二种是通过标签来控制。 <br /><br />首先介绍一下直接在java代码中控制的方式： <br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Java代码 <a title="复制代码" href="http://fansofjava.iteye.com/blog/522449#"><img alt="复制代码" src="http://fansofjava.iteye.com/images/icon_copy.gif" /></a>&nbsp;<a title="收藏这段代码" href="javascript:void()"><img class="star" alt="收藏代码" src="http://fansofjava.iteye.com/images/icon_star.png" /><img style="display: none" class="spinner" src="http://fansofjava.iteye.com/images/spinner.gif"  alt="" /></a></div></div>
<ol class="dp-j"><li><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;</span><span class="keyword"><font color="#7f0055">class</font></span><span>&nbsp;PaginationActionBean&nbsp;</span><span class="keyword"><font color="#7f0055">implements</font></span><span>&nbsp;ActionBean&nbsp;{ &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span></span><span class="comment">//此id表示将要创建的table的id </span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">private</font></span><span>&nbsp;String&nbsp;id&nbsp;=&nbsp;</span><span class="string">"user_table"</span><span>; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">private</font></span><span>&nbsp;ActionBeanContext&nbsp;context; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">private</font></span><span>&nbsp;String&nbsp;html; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;String&nbsp;getHtml()&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">return</font></span><span>&nbsp;html; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;</span><span class="keyword"><font color="#7f0055">void</font></span><span>&nbsp;setHtml(String&nbsp;html)&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">this</font></span><span>.html&nbsp;=&nbsp;html; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>........ &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="annotation"><font color="#646464">@DefaultHandler</font></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;Resolution&nbsp;display()&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TableFacade&nbsp;tableFacade&nbsp;=&nbsp;TableFacadeFactory.createTableFacade(id,&nbsp;</span><span class="keyword"><font color="#7f0055">this</font></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.getContext().getRequest()); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;addItems(tableFacade); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html&nbsp;=&nbsp;html(tableFacade); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ForwardResolution&nbsp;resolution&nbsp;=&nbsp;</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;ForwardResolution(</span><span class="string">"/jsp/page.jsp"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">return</font></span><span>&nbsp;resolution; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">private</font></span><span>&nbsp;</span><span class="keyword"><font color="#7f0055">void</font></span><span>&nbsp;addItems(TableFacade&nbsp;tableFacade)&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tableFacade.setItems(FillListData.getData()); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">private</font></span><span>&nbsp;String&nbsp;html(TableFacade&nbsp;tableFacade)&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tableFacade.setColumnProperties(</span><span class="string">"name"</span><span>,&nbsp;</span><span class="string">"password"</span><span>,&nbsp;</span><span class="string">"deleteUser"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlTable&nbsp;table&nbsp;=&nbsp;(HtmlTable)&nbsp;tableFacade.getTable(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.setCaption(</span><span class="string">"用户列表"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;table.getTableRenderer().setWidth(</span><span class="string">"600px"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlRow&nbsp;row&nbsp;=&nbsp;table.getRow(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlColumn&nbsp;name&nbsp;=&nbsp;row.getColumn(</span><span class="string">"name"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name.setTitle(</span><span class="string">"名字"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlColumn&nbsp;password&nbsp;=&nbsp;row.getColumn(</span><span class="string">"password"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;password.setTitle(</span><span class="string">"密码"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlColumn&nbsp;delete&nbsp;=&nbsp;row.getColumn(</span><span class="string">"deleteUser"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete.setTitle(</span><span class="string">"删除"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete.setWidth(</span><span class="string">"100px"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//&nbsp;Using&nbsp;an&nbsp;anonymous&nbsp;class&nbsp;to&nbsp;implement&nbsp;a&nbsp;custom&nbsp;editor. </span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//&nbsp;用于演示在表格中增加超链接 </span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;name.getCellRenderer().setCellEditor(</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;CellEditor()&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;Object&nbsp;getValue(Object&nbsp;item,&nbsp;String&nbsp;property,&nbsp;</span><span class="keyword"><font color="#7f0055">int</font></span><span>&nbsp;rowcount)&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Object&nbsp;value&nbsp;=&nbsp;</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;BasicCellEditor().getValue(item,&nbsp;property, &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;rowcount); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlBuilder&nbsp;html&nbsp;=&nbsp;</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;HtmlBuilder(); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.a().href().quote().append(</span><span class="string">"http://baidu.com"</span><span>).quote() &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.close(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.append(value); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.aEnd(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">return</font></span><span>&nbsp;html.toString(); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;delete.getCellRenderer().setCellEditor(</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;CellEditor()&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">public</font></span><span>&nbsp;Object&nbsp;getValue(Object&nbsp;item,&nbsp;String&nbsp;property,&nbsp;</span><span class="keyword"><font color="#7f0055">int</font></span><span>&nbsp;rowcount)&nbsp;{ &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;HtmlBuilder&nbsp;html&nbsp;=&nbsp;</span><span class="keyword"><font color="#7f0055">new</font></span><span>&nbsp;HtmlBuilder(); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="comment">//&nbsp;取得每一行的id号 </span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Object&nbsp;user&nbsp;=&nbsp;ItemUtils.getItemValue(item,&nbsp;</span><span class="string">"name"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;String&nbsp;js&nbsp;=&nbsp;</span><span class="string">"&nbsp;onclick='javascript:del(\"user\","</span><span>&nbsp;+&nbsp;user&nbsp;+&nbsp;</span><span class="string">")&nbsp;'"</span><span>; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.a().append(js).href().quote().append( &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;getContext().getRequest().getContextPath() &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;+&nbsp;</span><span class="string">"/Pagination.action?delete&amp;user="</span><span>&nbsp;+&nbsp;user) &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;.quote().close(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.append(</span><span class="string">"删除"</span><span>); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;html.aEnd(); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">return</font></span><span>&nbsp;html.toString(); &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}); &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="keyword"><font color="#7f0055">return</font></span><span>&nbsp;tableFacade.render();&nbsp;</span><span class="comment">//&nbsp;Return&nbsp;the&nbsp;Html. </span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;} &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;</span></li><li><span>.............. &nbsp;&nbsp;</span></li><li><span>}&nbsp;&nbsp;</span></li></ol></div><pre style="display: none" class="java" title="jmesa应用" pre_index="0" source_url="http://fansofjava.iteye.com/blog/522449" codeable_type="Blog" codeable_id="522449" name="code">public class PaginationActionBean implements ActionBean {

//此id表示将要创建的table的id
	private String id = "user_table";
	private ActionBeanContext context;
	private String html;

	public String getHtml() {
		return html;
	}
	public void setHtml(String html) {
		this.html = html;
	}
........

	@DefaultHandler
	public Resolution display() {
		TableFacade tableFacade = TableFacadeFactory.createTableFacade(id, this
				.getContext().getRequest());

		addItems(tableFacade);
		html = html(tableFacade);
		ForwardResolution resolution = new ForwardResolution("/jsp/page.jsp");
		return resolution;
	}

	private void addItems(TableFacade tableFacade) {
		tableFacade.setItems(FillListData.getData());
	}

	private String html(TableFacade tableFacade) {

		tableFacade.setColumnProperties("name", "password", "deleteUser");

		HtmlTable table = (HtmlTable) tableFacade.getTable();
		table.setCaption("用户列表");
		table.getTableRenderer().setWidth("600px");

		HtmlRow row = table.getRow();

		HtmlColumn name = row.getColumn("name");
		name.setTitle("名字");

		HtmlColumn password = row.getColumn("password");
		password.setTitle("密码");

		HtmlColumn delete = row.getColumn("deleteUser");
		delete.setTitle("删除");
		delete.setWidth("100px");

		// Using an anonymous class to implement a custom editor.
		// 用于演示在表格中增加超链接
		name.getCellRenderer().setCellEditor(new CellEditor() {
			public Object getValue(Object item, String property, int rowcount) {
				Object value = new BasicCellEditor().getValue(item, property,
						rowcount);
				HtmlBuilder html = new HtmlBuilder();
				html.a().href().quote().append("http://baidu.com").quote()
						.close();
				html.append(value);
				html.aEnd();
				return html.toString();
			}
		});

		delete.getCellRenderer().setCellEditor(new CellEditor() {
			public Object getValue(Object item, String property, int rowcount) {

				HtmlBuilder html = new HtmlBuilder();
				// 取得每一行的id号
				Object user = ItemUtils.getItemValue(item, "name");
				String js = " onclick='javascript:del(\"user\"," + user + ") '";
				html.a().append(js).href().quote().append(
						getContext().getRequest().getContextPath()
								+ "/Pagination.action?delete&amp;user=" + user)
						.quote().close();
				html.append("删除");
				html.aEnd();
				return html.toString();
			}
		});

		return tableFacade.render(); // Return the Html.
	}

..............
}

</pre><br /><br />上面的代码中最重要的就是那上html方法，此方法完成了整个表格的定制工作，包括链接在内。如果要重新设置每页显示的记录数（默认每页可显示15，50，100），要么修改jmesa.properties文件，要么通过java代码设置。修改配置文件的话，同时要修改两个地方： <br /><br />limit.rowSelect.maxRows=15 <br />html.toolbar.maxRowsDroplist.increments=15,50,100 <br /><br />如果修改，必须满足第一行的数字必须是第二行所有数字中的一个。用java代码修改的也要遵照同样的原则。 <br /><br />jsp代码很简单： <br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Html代码 <a title="复制代码" href="http://fansofjava.iteye.com/blog/522449#"><img alt="复制代码" src="http://fansofjava.iteye.com/images/icon_copy.gif" /></a>&nbsp;<a title="收藏这段代码" href="javascript:void()"><img class="star" alt="收藏代码" src="http://fansofjava.iteye.com/images/icon_star.png" /><img style="display: none" class="spinner" src="http://fansofjava.iteye.com/images/spinner.gif"  alt="" /></a></div></div>
<ol class="dp-xml"><li><span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">script</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">type</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"text/javascript"</font></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="attribute"><font color="#ff0000">src</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"${pageContext.request.contextPath}/js/jquery.js"</font></span><strong><font color="#006699"><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">script</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">type</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"text/javascript"</font></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="attribute"><font color="#ff0000">src</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"${pageContext.request.contextPath}/js/jquery.jmesa.js"</font></span><strong><font color="#006699"><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">script</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">type</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"text/javascript"</font></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><span class="attribute"><font color="#ff0000">src</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"${pageContext.request.contextPath}/js/jmesa.js"</font></span><strong><font color="#006699"><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span></font></strong><span>&nbsp; &nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">link</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">rel</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"stylesheet"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">type</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"text/css"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">href</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"${pageContext.request.contextPath}/css/jmesa.css"</font></span><strong><font color="#006699"><span class="tag">&gt;</span><span class="tag">&lt;/</span><span class="tag-name">link</span><span class="tag">&gt;</span></font></strong><span>&nbsp; &nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">head</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">body</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">h1</span><span class="tag">&gt;</span></font></strong><span>Stripes&nbsp;Calculator</span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">h1</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;</span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">form</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;${actionBean.html} &nbsp;&nbsp;</span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">script</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">type</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"text/javascript"</font></span><span class="tag"><strong><font color="#006699">&gt;</font></strong></span><span>&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;function&nbsp;onInvokeAction(id)&nbsp;{&nbsp; &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;createHiddenInputFieldsForLimitAndSubmit(id);&nbsp;&nbsp; &nbsp;&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp; &nbsp;&nbsp;</span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">script</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">form</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">body</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li></ol></div><pre style="display: none" class="html" title="jmesa应用" pre_index="1" source_url="http://fansofjava.iteye.com/blog/522449" codeable_type="Blog" codeable_id="522449" name="code">&lt;script type="text/javascript"
              src="${pageContext.request.contextPath}/js/jquery.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript"
              src="${pageContext.request.contextPath}/js/jquery.jmesa.js"&gt;&lt;/script&gt;           
&lt;script type="text/javascript"
              src="${pageContext.request.contextPath}/js/jmesa.js"&gt;&lt;/script&gt; 
&lt;link rel="stylesheet" type="text/css" href="${pageContext.request.contextPath}/css/jmesa.css"&gt;&lt;/link&gt; 
&lt;/head&gt;
&lt;body&gt;
&lt;h1&gt;Stripes Calculator&lt;/h1&gt;

&lt;form&gt;
	${actionBean.html}
&lt;script type="text/javascript"&gt;  
        function onInvokeAction(id) { 
            createHiddenInputFieldsForLimitAndSubmit(id);  
        }  
&lt;/script&gt;  
&lt;/form&gt;
&lt;/body&gt;</pre><br /><br />上面这段代码中，需要注意一下JS声明的顺序，而且还要申明一个form，不然分页的时候JS会出错。还要加上上面的那段JS代码。 <br /><br />第二种方式是直接通过标签的方式申明，因此需要在JSP头部申明： <br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Html代码 <a title="复制代码" href="http://fansofjava.iteye.com/blog/522449#"><img alt="复制代码" src="http://fansofjava.iteye.com/images/icon_copy.gif" /></a>&nbsp;<a title="收藏这段代码" href="javascript:void()"><img class="star" alt="收藏代码" src="http://fansofjava.iteye.com/images/icon_star.png" /><img style="display: none" class="spinner" src="http://fansofjava.iteye.com/images/spinner.gif"  alt="" /></a></div></div>
<ol class="dp-xml"><li><span class="tag"><strong><font color="#006699">&lt;</font></strong></span><span>%@&nbsp;taglib&nbsp;</span><span class="attribute"><font color="#ff0000">uri</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"/WEB-INF/tld/jmesa.tld"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">prefix</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"jmesa"</font></span><span>&nbsp;%</span><span class="tag"><strong><font color="#006699">&gt;</font></strong></span><span>&nbsp;&nbsp;</span></li><li><span>......... &nbsp;&nbsp;</span></li><li><span>...............&nbsp;&nbsp;</span></li></ol></div><pre style="display: none" class="html" title="jmesa应用" pre_index="2" source_url="http://fansofjava.iteye.com/blog/522449" codeable_type="Blog" codeable_id="522449" name="code">&lt;%@ taglib uri="/WEB-INF/tld/jmesa.tld" prefix="jmesa" %&gt;
.........
...............
</pre><br /><br />将${actionBean.html}替换成： <br /><br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Html代码 <a title="复制代码" href="http://fansofjava.iteye.com/blog/522449#"><img alt="复制代码" src="http://fansofjava.iteye.com/images/icon_copy.gif" /></a>&nbsp;<a title="收藏这段代码" href="javascript:void()"><img class="star" alt="收藏代码" src="http://fansofjava.iteye.com/images/icon_star.png" /><img style="display: none" class="spinner" src="http://fansofjava.iteye.com/images/spinner.gif"  alt="" /></a></div></div>
<ol class="dp-xml"><li><span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">jmesa:tableFacade</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">id</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"user_table"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">items</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"${items}"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">var</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"bean"</font></span><span>&nbsp;</span><span class="tag"><strong><font color="#006699">&gt;</font></strong></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">jmesa:htmlTable</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">width</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"600px"</font></span><span class="tag"><strong><font color="#006699">&gt;</font></strong></span><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">jmesa:htmlRow</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">jmesa:htmlColumn</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">property</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"name"</font></span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;</span><span class="tag-name">jmesa:htmlColumn</span></font></strong><span>&nbsp;</span><span class="attribute"><font color="#ff0000">property</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"password"</font></span><span>&nbsp;</span><span class="attribute"><font color="#ff0000">title</font></span><span>=</span><span class="attribute-value"><font color="#0000ff">"Last&nbsp;Name"</font></span><span class="tag"><strong><font color="#006699">/&gt;</font></strong></span><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">jmesa:htmlRow</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">jmesa:htmlTable</span><span class="tag">&gt;</span></font></strong><span>&nbsp; &nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">jmesa:tableFacade</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li></ol></div><pre style="display: none" class="html" title="jmesa应用" pre_index="3" source_url="http://fansofjava.iteye.com/blog/522449" codeable_type="Blog" codeable_id="522449" name="code">&lt;jmesa:tableFacade id="user_table" items="${items}" var="bean" &gt;
        &lt;jmesa:htmlTable width="600px"&gt;               
            &lt;jmesa:htmlRow&gt;     
                &lt;jmesa:htmlColumn property="name"/&gt;
                &lt;jmesa:htmlColumn property="password" title="Last Name"/&gt;
            &lt;/jmesa:htmlRow&gt;
        &lt;/jmesa:htmlTable&gt; 
&lt;/jmesa:tableFacade&gt;</pre><br /><br />这部分代码的作用与上面action直接操纵表格的方式一样，只是把工作转移到JSP中。只是上面的${items}表示一个将要显示的collection，不用再使用字符串的方式显示。如果两种方式都用的话，则以JSP中的方式为准。 <br /><br />jmesa的配置文件已经集成在JAR中，如果需要改变，可以将此文件复制出来，改变其内容，然后在web.xml重新指定其路径： <br />
<div class="dp-highlighter">
<div class="bar">
<div class="tools">Xml代码 <a title="复制代码" href="http://fansofjava.iteye.com/blog/522449#"><img alt="复制代码" src="http://fansofjava.iteye.com/images/icon_copy.gif" /></a>&nbsp;<a title="收藏这段代码" href="javascript:void()"><img class="star" alt="收藏代码" src="http://fansofjava.iteye.com/images/icon_star.png" /><img style="display: none" class="spinner" src="http://fansofjava.iteye.com/images/spinner.gif"  alt="" /></a></div></div>
<ol class="dp-xml"><li><span><strong><span class="tag"><span class="goog_qs-tidbit-0">&lt;</span></span><span class="tag-name"><span class="goog_qs-tidbit-0">context-param</span></span><span class="tag"><span class="goog_qs-tidbit-0">&gt;</span></span></strong><span class="goog_qs-tidbit-0">&nbsp;</span>&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><span class="tag"><span class="goog_qs-tidbit-0">&lt;</span></span><span class="tag-name"><span class="goog_qs-tidbit-0">param-name</span></span><span class="tag"><span class="goog_qs-tidbit-0">&gt;</span></span></strong><span class="goog_qs-tidbit-0">jmesaPreferencesLocation</span><strong><span class="tag"><span class="goog_qs-tidbit-0">&lt;/</span></span><span class="tag-name"><span class="goog_qs-tidbit-0">param-name</span></span><span class="tag"><span class="goog_qs-tidbit-0">&gt;</span></span></strong><span class="goog_qs-tidbit-0">&nbsp;</span>&nbsp;</span></li><li><span>&nbsp;&nbsp;&nbsp;&nbsp;</span><strong><span class="tag"><span class="goog_qs-tidbit-0">&lt;</span></span><span class="tag-name"><span class="goog_qs-tidbit-0">param-value</span></span><span class="tag"><span class="goog_qs-tidbit-0">&gt;</span></span></strong><span class="goog_qs-tidbit-0">WEB-INF/jmesa.properties</span><strong><span class="tag"><span class="goog_qs-tidbit-0">&lt;/</span></span><span class="tag-name"><span class="goog_qs-tidbit-0">param-value</span></span><span class="tag"><span class="goog_qs-tidbit-0">&gt;</span></span></strong><span>&nbsp;&nbsp;</span></span></li><li><span></span><strong><font color="#006699"><span class="tag">&lt;/</span><span class="tag-name">context-param</span><span class="tag">&gt;</span></font></strong><span>&nbsp;&nbsp;</span></span></li></ol></div> <img src ="http://www.blogjava.net/sichuanxiaohuo/aggbug/358074.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/sichuanxiaohuo/" target="_blank">sichuanxiaohuo</a> 2011-09-06 11:56 <a href="http://www.blogjava.net/sichuanxiaohuo/articles/358074.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>