茶叶手机网站建设北京华诚传媒有限公司官方网站

diannao/2026/1/22 19:24:27/文章来源:
茶叶手机网站建设,北京华诚传媒有限公司官方网站,自己做博客网站好,中国企业登记网今天#xff0c;我有一篇简短的文章#xff0c;内容涉及在Spring Data Cassandra中使用Prepared Statements。 Spring为您提供了一些实用程序#xff0c;使您可以更轻松地使用“预备语句”#xff0c;而不必依靠自己使用Datastax Java驱动程序手动注册查询。 Spring代码提供… 今天我有一篇简短的文章内容涉及在Spring Data Cassandra中使用Prepared Statements。 Spring为您提供了一些实用程序使您可以更轻松地使用“预备语句”而不必依靠自己使用Datastax Java驱动程序手动注册查询。 Spring代码提供了一个缓存来存储经常使用的准备好的语句。 允许您通过缓存执行查询缓存可以从缓存中检索准备好的查询也可以在执行之前添加一个新查询。 为了简短起见我们可能应该开始看一些代码。 依存关系 parentgroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-parent/artifactIdversion2.0.5.RELEASE/version /parentdependenciesdependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-data-cassandra/artifactId/dependency /dependencies 使用Spring Boot 2.0.5.RELEASE将拉入Spring Data Cassandra的2.0.10.RELEASE 。 使用准备好的语句 让我们直接进入 Repository public class PersonRepository extends SimpleCassandraRepositoryPerson, PersonKey {private final Session session;private final CassandraOperations cassandraTemplate;private final PreparedStatementCache cache PreparedStatementCache.create();public PersonRepository(Session session,CassandraEntityInformation entityInformation,CassandraOperations cassandraTemplate) {super(entityInformation, cassandraTemplate);this.session session;this.cassandraTemplate cassandraTemplate;}// using ORMpublic ListPerson findByFirstNameAndDateOfBirth(String firstName, LocalDate dateOfBirth) {return cassandraTemplate.getCqlOperations().query(findByFirstNameAndDateOfBirthQuery(firstName, dateOfBirth),(row, rowNum) - cassandraTemplate.getConverter().read(Person.class, row));}private BoundStatement findByFirstNameAndDateOfBirthQuery(String firstName, LocalDate dateOfBirth) {return CachedPreparedStatementCreator.of(cache,select().all().from(people_by_first_name).where(eq(first_name, bindMarker(first_name))).and(eq(date_of_birth, bindMarker(date_of_birth)))).createPreparedStatement(session).bind().setString(first_name, firstName).setDate(date_of_birth, toCqlDate(dateOfBirth));}private com.datastax.driver.core.LocalDate toCqlDate(LocalDate date) {return com.datastax.driver.core.LocalDate.fromYearMonthDay(date.getYear(), date.getMonth().getValue(), date.getDayOfMonth());}// without ORMpublic ListPerson findByFirstNameAndDateOfBirthWithoutORM(String firstName, LocalDate dateOfBirth) {return cassandraTemplate.getCqlOperations().query(findByFirstNameAndDateOfBirthQuery(firstName, dateOfBirth),(row, rowNum) - convert(row));}private Person convert(Row row) {return new Person(new PersonKey(row.getString(first_name),toLocalDate(row.getDate(date_of_birth)),row.getUUID(person_id)),row.getString(last_name),row.getDouble(salary));}private LocalDate toLocalDate(com.datastax.driver.core.LocalDate date) {return LocalDate.of(date.getYear(), date.getMonth(), date.getDay());} } 这里有相当数量的样板代码因此我们可以访问Spring Data的ORM。 我还提供了代码来演示如何在不使用ORM的情况下实现相同的目标无论如何直接将查询直接映射到对象。 让我们更仔细地研究一种方法 public ListPerson findByFirstNameAndDateOfBirth(String firstName, LocalDate dateOfBirth) {return cassandraTemplate.getCqlOperations().query(findByFirstNameAndDateOfBirthQuery(firstName, dateOfBirth),(row, rowNum) - cassandraTemplate.getConverter().read(Person.class, row)); }private BoundStatement findByFirstNameAndDateOfBirthQuery(String firstName, LocalDate dateOfBirth) {return CachedPreparedStatementCreator.of(cache,select().all().from(people_by_first_name).where(eq(first_name, bindMarker(first_name))).and(eq(date_of_birth, bindMarker(date_of_birth)))).createPreparedStatement(session).bind().setString(first_name, firstName).setDate(date_of_birth, toCqlDate(dateOfBirth)); } CachedPreparedStatementCreator完全按照其说的进行操作...它创建缓存的Prepared Statements。 of方法采用实例化Bean时定义的cache 并创建第二个参数定义的新查询。 如果查询是最近已经注册的查询即它已经在缓存中。 然后从那里开始查询而不是完成注册新语句的整个过程。 传入的查询是一个RegularStatement 可以通过调用createPreparedStatement将它转换为PreparedStatement 我猜是吧。 现在我们可以将值绑定到查询因此它实际上可以做一些有用的事情。 就缓存Prepared Statements而言这就是您要做的全部。 还有其他方法可以执行此操作例如您可以手动使用PreparedStatementCache或定义自己的缓存实现。 无论您的船浮在水上。 您现在已经到了这篇简短文章的结尾希望它实际上包含了足够有用的信息…… 在本文中我们介绍了如何使用CachedPreparedStatementCreator创建和将Prepared Statements放入高速缓存中以便在以后更快地执行。 使用Spring Data提供的类我们可以减少需要编写的代码量。 这篇文章中使用的代码可以在我的GitHub上找到 。 如果您认为这篇文章有帮助可以在Twitter上LankyDanDev关注我以跟上我的新文章。 翻译自: https://www.javacodegeeks.com/2018/10/cached-prepared-statements-cassandra.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/89209.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

宁波搭建网站公司海淘直邮购物网站

钉钉在企业中的广泛应用,聊天审计软件也日益受到关注。这类软件主要针对企业微信、钉钉等即时通讯工具,对其中的聊天记录进行审计,以便企业能够更好地管理员工的在线行为,并保障信息安全。 一、聊天审计软件的作用 1、监管员工行…

网站logo设计创意小程序推广怎么赚钱

【1】题目: 给定一个无序数组,找到最长的单调自增子序列(不一定连续,但是顺序不能乱)的长度; 【2】看个荔枝:给定数组 [10, 9, 2, 5, 3, 7, 101, 18] 输出结果为 [2, 3, 7, 101]。。算法时间…

鹤岗网站建设sqlite3做网站数据库

本文实例为大家分享了python如何删除文件中重复字段的具体代码,供大家参考,具体内容如下原文件内容放在list中,新文件内容按行查找,如果没有出现在list中则写入第三个文件中。import csvfiletxt1 E:/gg/log/log1.txtfilecsv1 E:…

网站开发总结摄影设计说明怎么写

*头图来源:东方IC来源:虎嗅APP虎嗅注:在微信上下游诞生了无数的生态企业,他们关注着微信的一举一动,以便在其中掘金。6月15日,微盟集团CEO孙涛勇在华映资本WE来大会上,分享了对微信生态商业进化…

网站开发工程师岗位要求推广赚钱吗

“LOG”就是我们生产出来的产品的品牌.可以是单一的字组成;可以是图案组成;也可以由字与图案一起组成。一种是我们用模具生产出来的,通过模具上加工的字体生产出来的“LOG”,从而表现在产品上。而用模具直接生产出来的“LOG”,模具上有把做“LOG”字体做…

建站步骤图由wordpress强力驱动

前言 输入一个手机号18333333333,你是怎么知道这串数字是手机号呢,假如现在你用python写一段代码,类似: phone_number input(please input your phone number:) 你怎么判断这个phone_number是合法的呢?…

wap类网站企业免费网站注册

说在前面:有粉丝提问说自己并不确定学前端,因为自己还没有工作,想做程序员,想问问做哪个方向比较有前途; 有两三个小伙伴这么问的,感觉很有意义,拿出来单独说说比较好。 目录 程序员有哪些选择&…

做博客网站怎么赚钱吗网站群建设情况

目录 写在开头1.简单回顾2. 时间周期和区间2.1 处理时间周期2.2 时间区间的处理2.3 实际场景案例2.4 复杂周期的处理2.5 区间计算中的时区考虑3. 时间格式本地化3.1 解释多地区的本地化支持3.2 演示国际化灵活性3.3 处理不同语言和习惯4. 时间迭代4.1 Pendulum的时间迭代方法4.…

2020站群seo系统wordpress 文章推荐一篇

12月14日晚9点才到无锡,棉袄都湿透了,到公寓那已经无力,天黑什么都看不清,到一个摆摊的阿姨买了根火腿肠,问了下路。买了点日用品,打扫了宿舍,折腾的很晚。12月15日,6点多就醒了&…

全站flash网站珠海哪个建设网站建设好

Hello,很有缘在这篇文章上我们相遇了,那么我就用题目巩固我们多级指针的知识,当然这里的题目是比较有点难度的,我们需要有点基础呀,如果你能轻松理解题目那说明你对指针的了解已经很有基础了呢,那废话不多说…

石家庄建网站挣钱优帮云php 网站版面素材

类别类名说明Visual Basic 数据类型C# 数据类型C 托管扩展数据类型JScript 数据类型整数Byte8 位的无符号整数。BytebytecharByteDZX7¢&dot [url]www.cnntec.com[/url]…gT‚sSByte8 位的有符号整数。 不符合 CLS。DZX7¢&dot [url]www.cnntec.com[/url]…gT‚…

如何查网站的百度快照张店网站建设价

目标检测和图像分类是计算机视觉领域的两个重要任务,它们有一些关键的区别: 1、任务目标 图像分类:图像分类的任务是将输入的图像分为不同的类别,通常是预定义的类别集合。在这种任务中,算法的目标是确定图像中包含的…

公司地址查询网站黄山网站建设电话

http://paste.ubuntu.org.cn 转载于:https://www.cnblogs.com/yuliyang/p/3658964.html

网站制作 中企动力公司外贸新品开发网站

WIN10的IE错误代码inet_e_resource_not_found解决办法 原创 候鸟307183846 最后发布于2019-08-27 13:31:54 阅读数 2413 收藏 展开 解决方案: 1、在Internet选项里,点《连接》标签,按下《局域网设置》按钮,在对话框里&#…

网站建设 市场规模四川省建设厅官方网站

最近在忙学校官网上的题,就借此记录分享一下有价值的题: 1.注意枚举角度 如果我们就对于不同的k常规的枚举,复杂度直接炸了。 于是我们考虑换一个角度,我们不妨从1开始枚举因子,我们记录下他的倍数的个数sum个&#…

江西做网站找谁注册过哪些网站

在许多编程语言中,接口(interface)是一种定义了一组规范的结构,用于指导实现类应该具有哪些方法。在接口中,方法的可见性是一个重要的话题,而有些语言中对于接口方法中是否需要显式添加 ‘public’ 修饰符存…

商丘网站公司设计公司简介范文

数据库管理211期 2024-06-23 数据库管理-第211期 记一次简单的SQL性能优化(20240623)1 起因2 变化3 排查问题4 优化方案1方案2方案3 5 效果总结 数据库管理-第211期 记一次简单的SQL性能优化(20240623) 作者:胖头鱼的鱼…

嘉兴网站排名公司uc信息流广告投放

一、组合问题 1.题目 Leetcode:第 77 题 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n 4, k 2 输出: [[2,4],[3,4],[2,3],[1,2],[1,3],[1,4…

北京平台网站建设深圳网站定制建设

在配置Django时,选择的是mysql数据库,要安装MySQLdb模块,不过安装过程中,遇到了很多errors,记录一下。 系统:ubuntu 11.10 mysql:直接apt-get安装的,version:5.1.62 到官方下载MySQL for Python 然后解压&a…

免备案网站wordpress 修改源码

题目: . - 力扣(LeetCode) 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 请注意 ,必须在不复制数组的情况下原地对数组进行操作。 示例 1: 输入: nums [0…