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

店铺推广和网站优化一起做京东网站建设需求分析报告

店铺推广和网站优化一起做,京东网站建设需求分析报告,wordpress 站中站,无锡市工程造价信息网couchbase大多数应用程序必须处理“主/详细”类型的数据#xff1a; 啤酒厂和啤酒 部门和员工 发票和项目 … 例如#xff0c;创建如下所示的应用程序视图是必需的#xff1a; 借助Couchbase和许多面向文档的数据库#xff0c;您可以使用不同的方式来处理此问题… couchbase 大多数应用程序必须处理“主/详细”类型的数据 啤酒厂和啤酒 部门和员工 发票和项目 … 例如创建如下所示的应用程序视图是必需的 借助Couchbase和许多面向文档的数据库您可以使用不同的方式来处理此问题您可以 为每个母版创建一个文档并将所有子级嵌入其中 创建一个主文档和子文档并使用一个属性链接它们。 在第一种情况下所有信息都存储在一个文档中使用整个数据集非常容易例如创建一个显示所有信息的屏幕但是第二种情况呢 在这篇文章中我将解释如何使用Couchbase视图来处理该问题并使其易于创建主视图/详细视图。 作为前Oracle员工我将使用臭名昭著的SCOTT模式以及DEPT和EMP表作为第一个示例。 然后最后我将其扩展到Couchbase随附的啤酒样本数据。 数据 Couchbase是一个无模式的数据库您可以在其中存储“任何内容”但是为此您需要使用JSON文档并创建两种文档类型“部门”和“员工”。 我们通常这样做的方法是使用技术属性来键入文档。 因此员工和部门文档如下所示 部门 {type: dept,id: 10,name: Accounting,city: New York } 雇员 {type: emp,id: 7782,name: Blake,job: Clark,manager: 7839,salary: 2450,dept_id: dept__10 } 这仅显示文档在Couchbase中您必须将文档与键关联。 对于此示例我使用一个简单的模式 type__id对于这些文档键如下所示 部__10 emp__20 您可以使用任何模式来创建密钥例如为可以选择放置电子邮件的员工创建密钥。 请注意员工文档中的“ dept_id”属性。 这是部门的关键 您可以将其视为“外键”。 但是请记住部门文档和员工文档之间的关系完全由应用程序管理Couchbase Server不会强制执行它。 我创建了一个包含所有数据的Zip文件您可以从此处下载该文件 并使用cbdocloader实用程序将数据导入Couchbase。 要导入数据请从终端窗口运行以下命令 ./cbdocloader -n 127.0.0.1:8091 -u Administrator -p password -b default ~/Downloads/emp-dept.zip 您可以在文档中了解有关cbdocloader工具的更多信息。 风景 Couchbase中的查询基于视图 和视图建立索引因此我们必须创建一个视图准确地说是一个“整理视图”。 整理视图的想法是产生一个索引在该索引中对键进行排序以便首先显示父ID然后是其子ID。 因此我们正在生成一个如下所示的索引 DEPT_10会计 DEPT_10布莱克 DEPT_10米勒 DEPT_20研究中 DEPT_20亚当斯 福特DEPT_20 … 实际上使用Couchbase视图非常容易。 这里唯一的技巧是控制顺序并确保主控始终是第一个紧接其子级。 因此为了控制它我们可以创建一个包含部门ID“排序”元素和名称啤酒或啤酒厂的复合键。 因此视图的地图功能如下所示 function (doc, meta) {if (doc.type emp || doc.type dept) {switch(doc.type) {case dept :emit( [meta.id, 0, doc.name], 0 );break;case emp :emit( [doc.dept_id, 1, doc.name ], doc.salary ((doc.comm)?doc.comm:0) );break;}} } 密钥包括 根据文档类型从部门文档本身或从员工文档中提取的部门ID 用于控制排序的任意数字。 我为部门放0为员工放1 部门或雇员的名称这也允许按名称对结果进行排序 除密钥外此视图还用于发出有关员工薪水的一些信息。 工资只是工资加上佣金如果存在的总和。 视图的结果如下所示 通过此视图您现在可以使用视图结果为您的应用程序生成报告。 也可以在查询中使用参数仅查看部分数据例如按部门查看例如使用startkey [dept__200]endkey [dept__202]仅查看数据-部门和雇员-部门20-研究。 啤酒样品申请 您可以为啤酒样品应用程序创建一个等效视图在同一视图中打印所有啤酒厂和啤酒。 在设计文档“酿酒厂”中该视图称为“ all_with_beers”。 该视图如下所示 function(doc, meta) {switch(doc.type) {case brewery:emit([meta.id, 0, doc.name]);break;case beer:if (doc.name doc.brewery_id) {emit([doc.brewery_id, 1, doc.name], null);}} } 一旦将其发布到生产环境中就可以在Beer Sample应用程序中使用它对于本示例我已经修改了Java示例应用程序。 创建一个servlet来处理用户请求并在/ all URI上。 使用以下代码调用视图的“ BreweryAndBeerServlet” View view client.getView(brewery, all_with_beers);Query query new Query();query.setIncludeDocs(true).setLimit(100);ViewResponse result client.query(view, query);ArrayListHashMapString, String items new ArrayListHashMapString, String();for(ViewRow row : result) {HashMapString, String parsedDoc gson.fromJson((String)row.getDocument(), HashMap.class);HashMapString, String item new HashMapString, String();item.put(id, row.getId());item.put(name, parsedDoc.get(name));item.put(type, parsedDoc.get(type));items.add(item);}request.setAttribute(items, items);request.getRequestDispatcher(/WEB-INF/breweries/all.jsp).forward(request, response); 查询结果设置到HttpRequest中并执行all.jsp页面。 JSP使用JSTL通过以下代码来打印信息 table idbrewery-table classtable table-stripedtheadtrthName/thth/thth/th/tr/theadtbodyc:forEach items${items} varitemc:if test${ item.type brewery }trtd colspan2stronga href/breweries/show/${item.id}${item.name}/a/strong/tdtda classbtn btn-small btn-danger href/breweries/delete/${item.id}Delete/a/td/tr/c:ifc:if test${ item.type beer }trtd/tdtda href/beers/show/${item.id}${item.name}/a/tdtda classbtn btn-small btn-danger href/beers/delete/${item.id}Delete/aa classbtn btn-small btn-warning href/beers/edit/${item.id}Edit/a/td/tr/c:if/c:forEach/tbody/table JSP从HTTP请求中获取项目并在每个项目上循环然后根据项目的类型打印信息。 最终结果如下所示 此处提供了Beer Sample应用程序的扩展 https : //github.com/tgrall/beersample-java/tree/BreweriesAndBeers 参考来自Tug博客博客的JCG合作伙伴 Tugdual Grall 介绍了使用Couchbase 2.0的整理视图 。 翻译自: https://www.javacodegeeks.com/2013/02/introduction-to-collated-views-with-couchbase-2-0.htmlcouchbase
http://wiki.neutronadmin.com/news/336043/

相关文章:

  • 安徽建设厅网站节能北备案昆明网站建设价目表
  • 网站建设时 网站信息可以边建设边组织建设网点查询
  • 高大上的自助建站网站网站主服务器所在地地址
  • 在线网站域名whois查询工具济南企业网站开发
  • 网站举报中心官网公司网站开发立项文档
  • 网站建设开票税率在百度上注册公司网站要多少钱
  • 怎样做优惠券网站高德地图实况街景怎么打开
  • 有口碑的顺德网站建设有创意的网页
  • 湖州做网站优化一个品牌的策划方案
  • 仙游县网站建设南昌seo推广公司
  • 企业网站建设的费用怎么看网站的建站公司是哪个
  • 通用搭建网站教程网站建设好后怎么更新内容
  • 网站支付端口化妆品网站建设推广方案
  • wordpress 站群个人网站设计教程
  • 外贸石材网站wordpress改后台地址
  • 师范街网站建设知识库管理系统方案
  • 购物网站哪个是正品中国海外旅游营销网站
  • 个人能不能自己做网站阿里云域名注册续费
  • 社交网站先做pc站可以吗越南做企业网站
  • 企业网站建设方案应该怎么做培训美工设计师
  • 重庆靓号网站建设无锡装修网站
  • 淮南营销型网站建设怎么样山东省住房和城乡建设厅网站6
  • 廊坊企业网站建设公司凡科的网站怎么做百度推广
  • 如何将网站让百度收录网络营销试卷
  • 用c 可以做网站吗园林公司做网站的好处
  • 网站建设项目执行进度表网上注册平台怎么注册
  • 外贸营销型网站2018软件开发定制费用
  • 做网站需要的程序数据线东莞网站建设技术支持
  • 视频付费网站建设网站建设主持词
  • 凡客网站登陆东莞好的网站建设公司