当前位置: 首页 > news >正文

网站分享图片怎么做做网站搞友情链接

网站分享图片怎么做,做网站搞友情链接,免费的好网站,濮阳哪里做网站primefaces在这篇文章中#xff0c;您将看到如何结合PrimeFaces和OmniFaces获得可缓存的图表。 为了使事情变得简单#xff0c;我们将使用PrimeFaces 折线图。 对于这种图表#xff0c;我们可以在页面中使用p#xff1a;chart /标签和一个简单的托管bean。 因此您将看到如何结合PrimeFaces和OmniFaces获得可缓存的图表。 为了使事情变得简单我们将使用PrimeFaces 折线图。 对于这种图表我们可以在页面中使用pchart /标签和一个简单的托管bean。 因此在页面中我们可以有 p:chart idsomeChartId typelinemodel#{chartView.lineModel}styleheight:300px;width:600px;/ ChartView可以编写如下 Named ViewScoped public class ChartView implements Serializable {private LineChartModel lineModel;PostConstructpublic void init() {createLineModels();}private void createLineModels() {lineModel initLinearModel();lineModel.setTitle(Linear Chart);lineModel.setLegendPosition(e);lineModel.setZoom(true);Axis yAxis lineModel.getAxis(AxisType.Y);yAxis.setMin(0);yAxis.setMax(10);}private LineChartModel initLinearModel() {LineChartModel model new LineChartModel();LineChartSeries series1 new LineChartSeries();series1.setLabel(Series 1);Random rnd new Random();series1.set(rnd.nextInt(10), rnd.nextInt(10));series1.set(rnd.nextInt(10), rnd.nextInt(10));series1.set(rnd.nextInt(10), rnd.nextInt(10));series1.set(rnd.nextInt(10), rnd.nextInt(10));series1.set(rnd.nextInt(10), rnd.nextInt(10));LineChartSeries series2 new LineChartSeries();series2.setLabel(Series 2);series2.set(rnd.nextInt(10), rnd.nextInt(10));series2.set(rnd.nextInt(10), rnd.nextInt(10));series2.set(rnd.nextInt(10), rnd.nextInt(10));series2.set(rnd.nextInt(10), rnd.nextInt(10));model.addSeries(series1);model.addSeries(series2);return model;}public LineChartModel getLineModel() {return lineModel;} } 此代码将产生一个简单的折线图如下图 现在让我们假设在应用程序运行期间该图表会定期更新或重新创建我们将通过随机序列值和“ Refresh按钮对此进行模拟。 每次发生这种情况时我们都会丢失当前图表。 但是缓存如保存某些图表可能很有用并有可能稍后在当前会话对于属于某些用户的图表/应用程序对于所有用户通用的图表中加载它们。 为了完成此任务我们可以使用OmniFaces 缓存组件。 基本上此组件在OmniFaces Showcase和Mastering OmniFaces书中都有很好的描述但主要思想是 Cache组件通过以下方式向JSF页面作者公开 o:cache标记。 Cache为“渲染响应”阶段生成的标记实现了服务器端缓存机制。 Cache在“渲染响应”阶段执行操作。 缓存的标记存储在OmniFaces生成的密钥下或通过可选的o:cache密钥属性指示。 可以通过o:cache的可选禁用标志属性来禁用每个请求的o:cache 。 缓存的条目可以通过o:cache reset flag属性重新缓存。 默认情况下缓存的数据存储在会话范围内也支持应用程序范围。 每个示例从JSF页面作者的角度来看我们可以表明我们想在键foo下重新缓存一块标记如下所示 o:cache idcacheId keyfoo disabledfalse resettrue ... // the markup produced for this snippet of code will be cached /o:cache 显然在此示例中 disabled属性可以跳过因为那是其隐式值。 如果还跳过了key 则OmniFaces将生成一个。 如果跳过了reset 则不会重新缓存标记。 既然我们要必须决定哪些图表缓存和负载的可能性/删除某个图表从缓存中我们不能简单地做只有这个 o:cache idcacheId p:chart idsomeChartId typelinemodel#{chartView.lineModel}styleheight:300px;width:600px;/ /o:cache 基本上这将缓存第一个图表并且在每次回发时将从缓存中提供该图表。 因此一种快速的方法将包括以编程方式处理o:cache属性。 就像我上面说的 Cache在“渲染响应”阶段采取行动。 这意味着我们可以从我们的控制 ChartView bean在实际发生Cache之前是Cache组件。 此实现的核心在于以下private方法该方法允许我们以编程方式配置Cache组件 private void configureCache(String key, boolean disabled, boolean reset) {Cache cache Components.findComponent(cacheId);cache.setDisabled(disabled);cache.setReset(reset);cache.setKey(key); } 现在我们将添加一对一的控制缓存所需的UI。 首先我们添加一个标记为 刷新。 实际上每次我们按下此按钮时都会生成一个新图表新数据。 这是用于模拟图表更新。 h:commandButton action#{chartView.redrawAction()} valueRefresh/ redrawAction()确保新图表不被缓存因此缓存被禁用并且密钥不相关 public void redrawAction() {configureCache(none, true, false);createLineModels(); } 此外我们添加了一个名为Save的按钮。 按下此按钮后当前图表将缓存在key_ random-number类型的键下在实际情况下您可能希望允许用户提供该键作为图表标题。 该key将在代表已保存图表的列表中向用户显示 h:commandButton action#{chartView.saveChart()} valueSave/ saveChart()方法启用缓存并生成一个新密钥。 密钥存储在列表中 private ListString keys; ... public void saveChart() {String key key_ new Random().nextInt(1000);configureCache(key, false, true);keys.add(key); } 接下来我们列出缓存的键和一个标记为Load的按钮。 用户可以选择一个键然后单击 加载按钮以加载缓存的图表 h:selectOneMenu value#{chartView.selected}f:selectItem itemLabelSelect a chart ... noSelectionOptiontrue/f:selectItems value#{chartView.keys} vart itemLabel#{t} itemValue#{t}/ /h:selectOneMenuh:commandButton valueLoad Chart action#{chartView.loadChart()}disabled#{chartView.keys.size() eq 0}/ loadChart()是 public void loadChart() {if (selected ! null) {configureCache(selected, false, false);} } 最后我们添加一个标记为Delete的按钮该按钮将从缓存中删除所选图表 h:commandButton valueDelete Chart action#{chartView.deleteChart()}disabled#{chartView.keys.size() eq 0}/ | 并且 deleteChart()是 public void deleteChart() {if (selected ! null) {CacheFactory.getCache(Faces.getContext(), session).remove(selected);keys.remove(selected);configureCache(none, true, false); resetLineModels();} }private void resetLineModels(){ lineModel.getSeries().clear(); } 注意这里我们如何使用CacheFactory通过键从缓存中删除条目。 这是一个提示性屏幕截图 完整的应用程序可在此处获得 。 翻译自: https://www.javacodegeeks.com/2015/11/programmatically-caching-primefaces-charts-via-omnifaces-cache-component.htmlprimefaces
http://www.pierceye.com/news/811437/

相关文章:

  • 门户网站建设要求易申建设网站
  • 现在创业什么行业最好seo全网营销公司
  • 网站 域名 授权服务器 分布式网站模板英文
  • wordpress 二维码插件搜索引擎优化的方法
  • 国外申请域名的网站CC wordpress 攻击
  • 能发外链的网站中国机械加工网加热炉节能
  • 个人网站推广 公司网站地址栏小图标
  • 网站 如何 备案营销型网站建设便宜
  • 从网上怎么做网站营销做算命类网站违法吗?
  • 口碑好的网站开发公司哪家最专业网站优化关键词是怎么做的
  • 一级a做爰片免费网站天天看专业网站建设公司推荐
  • 套模版做的网站好优化吗win10系统优化软件
  • 红酒营销 网站建设网站建设多少钱一年
  • 公众号注册入口官网seo排名的影响因素有哪些
  • 化妆品网站素材wordpress广告插件中文
  • 设计iphone手机网站网站开发怎么才能接到私活
  • 做网站美工排版提升学历英语翻译
  • 旅游网站建设服务对象微信第三方做网站需要费用吗
  • 能下载的网站soap公司网站
  • 肇庆网站推广排名花都网页设计
  • 网站后台素材wordpress适用linux
  • 开发一个app大概需要多少钱seo按照搜索引擎的什么对网站
  • 比较好的网站建设公司电话珠海开发网站公司
  • 响应式网站怎么做无缝轮播图网站域名在哪里
  • 大连网站建设设计公司哪家好临海市城乡建设规划局网站
  • 福州商城网站建设网站建设的域名和空间价位
  • 如何做外卖网站网页设计照片
  • 长沙河西做网站自己做的网站怎么设置文件下载
  • 计算机本科论文 网站建设wordpress如何添加关键词和描述
  • div嵌套影响网站收录唐山做网站多少钱