📄 forum.java
字号:
/* * 作者: 胡李青 * qq: 31703299 * Copyright (c) 2007 huliqing * 主页 http://www.tbuy.biz/ * 你可以免费使用该软件,未经许可请勿作用于任何商业目的,如有技术问题请与本人联系! */package biz.tbuy.bbs.bean;import biz.tbuy.bbs.ForumBuilder;import biz.tbuy.bbs.ForumFactory;import biz.tbuy.common.page.DataPage;import biz.tbuy.common.page.PagedListDataModel;import java.util.List;import java.util.Map;import javax.faces.component.UIData;import javax.faces.context.FacesContext;import javax.faces.event.ActionEvent;import javax.faces.model.DataModel;/** * @author huliqing * <p><b>qq:</b>31703299 * <p><b>E-mail:</b><a href="mailto:huliqing.cn@gmail.com">huliqing.cn@gmail.com</a> * <p><b>Homepage:</b><a href="http://www.tbuy.biz/">http://www.tbuy.biz/</a> */public class Forum extends BaseBean{ private int _forumId; // 相应的讨论区id private List<String> _masters; // 该讨论区的版主列表 private DataModel _topicsObj; // 相关的主题 private UIData _uiTopicsObj; private int _pageSize = 12; // 默认的分页显示数目 /** Creates a new instance of TopicsBean */ public Forum() { FacesContext fc = getFacesContext(); String requestPath = fc.getViewRoot().getViewId(); int start = requestPath.lastIndexOf("/"); int end = requestPath.lastIndexOf("."); try { _forumId = Integer.parseInt(requestPath.substring(start + 1, end)); _masters = getBBSApplication().getMasters().get(_forumId); } catch (Exception e) {} } public void setForumId(int forumId) { _forumId = forumId; } public int getForumId() { return _forumId; } public List<String> getMasters() { return _masters; } public void setTopicsObj(DataModel topicsObj) { _topicsObj = topicsObj; } public DataModel getTopicsObj() { if (_topicsObj == null) { _topicsObj = new LocalDataModel(_pageSize); } return _topicsObj; } public void setUiTopicsObj(UIData uiTopicsObj) { _uiTopicsObj = uiTopicsObj; } public UIData getUiTopicsObj() { return _uiTopicsObj; } public void setPageSize(int pageSize) { _pageSize = pageSize; } public int getPageSize() { return _pageSize; } // ------------------------------------------------------------ page about private DataPage getDataPage(int startRow, int pageSize) { ForumBuilder fBuilder = ForumFactory.newBuilder(_forumId); int total = fBuilder.getTotalTopics(); List<Map> dataList = fBuilder.getTopicsObjectForPage(startRow, pageSize); return new DataPage(total, startRow, dataList); } private class LocalDataModel extends PagedListDataModel { public LocalDataModel(int pageSize) { super (pageSize); } public DataPage fetchPage(int startRow,int pageSize) { // call enclosing managed bean method to fetch the data return getDataPage(startRow, pageSize); } } // -----------------------------------------------------------页面跳转 private int _jumpTo; public void setJumpTo(int jumpTo) { _jumpTo = jumpTo; } public int getJumpTo() { return _jumpTo; } /** * 关于页面的跳转 */ public void jump(ActionEvent e) { double totalPage = Math.ceil((double)_uiTopicsObj.getRowCount() / _pageSize); if (_jumpTo > 0 && _jumpTo <= totalPage) { int first = (_jumpTo - 1) * _pageSize; _uiTopicsObj.setFirst(first); } }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -