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

聊城网站推广动态wordpress 移动端不显示

聊城网站推广动态,wordpress 移动端不显示,个人网站如何获得流量,广东建设信息网三库一平台官网java流写入数据库在本文中#xff0c;您将学习如何编写纯Java应用程序#xff0c;这些应用程序能够使用现有数据库中的数据#xff0c;而无需编写一行SQL#xff08;或类似的语言#xff0c;如HQL#xff09;#xff0c;而无需花费数小时将所有内容放在一起。 准备好应用… java流写入数据库 在本文中您将学习如何编写纯Java应用程序这些应用程序能够使用现有数据库中的数据而无需编写一行SQL或类似的语言如HQL而无需花费数小时将所有内容放在一起。 准备好应用程序之后您将通过仅添加两行代码来学习如何使用JVM内加速功能将延迟性能提高1000倍以上。 在本文中我们将使用Speedment它是一个Java流ORM可以直接从数据库模式生成代码并且可以自动将Java Streams直接呈现为SQL从而允许您使用纯Java编写代码。 您还将发现通过直接在RAM中运行流的JVM内存技术数据访问性能可以大大提高。 示例数据库 我们将使用来自MySQL的示例数据库Sakila。 它具有称为电影演员类别等的表格可以在此处免费下载。 步骤1连接到数据库 我们将开始使用可以在此处找到的Speedment Initializer配置pom.xml文件。 按“下载”您将获得带有自动生成的Main.java文件的项目文件夹。 接下来解压缩项目文件夹的zip文件打开命令行转到解压缩的文件夹pom.xml文件所在的文件夹 然后输入以下命令 mvn speedment:tool 这将启动Speedment工具并提示您输入许可证密钥。 选择“开始免费”您将自动免费获得许可证。 现在您可以连接到数据库并开始使用 步骤2产生程式码 从数据库中加载模式数据后可以通过按“生成”按钮来生成完整的Java域模型。 这只需要一两秒钟。 步骤3编写应用程序代码 与步骤2中的域模型一起自动生成了Speedment实例的构建器。 打开Main.java文件并使用以下代码段替换main()方法中的代码 SakilaApplication app new SakilaApplicationBuilder().withPassword(sakila-password) // Replace with your own password.build(); 接下来我们将编写一个可以打印所有电影的应用程序。 诚然这是一个很小的应用程序但是我们将在本文中对其进行改进。 // Obtains a FilmManager that allows us to // work with the film table FilmManager films app.getOrThrow(FilmManager.class);// Create a stream of all films and print // each and every film films.stream().forEach(System.out::println); 这不是很简单吗 运行时Java流将在后台自动呈现为SQL。 为了真正看到呈现SQL代码请修改我们的应用程序构建器并使用 STREAM日志类型 SakilaApplication app new SakilaApplicationBuilder().withPassword(sakila-password).withLogging(ApplicationBuilder.LogType.STREAM).build(); 这是运行应用程序时SQL代码的样子 SELECT film_id,title,description,release_year, language_id,original_language_id,rental_duration,rental_rate,length,replacement_cost,rating,special_features,last_updateFROMsakila.film, values:[] 根据您选择的数据库类型例如MySQLMariaDBPostgreSQLOracleMS SQL ServerDB2AS400等呈现SQL代码可能有所不同。 这些变化是自动的。 上面的代码将产生以下输出为简便起见以下简称 FilmImpl { filmId 1, title ACADEMY DINOSAUR, …, length 86, ... } FilmImpl { filmId 2, title ACE GOLDFINGER, ..., length 48, ...} FilmImpl { filmId 3, title ADAPTATION HOLES, ..., length 50, ...} ...步骤4使用筛选器 Speedment流支持所有Stream操作包括过滤器。 假设我们只想过滤那些长于60分钟的电影。 这可以通过将以下代码行添加到我们的应用程序中来完成 films.stream().filter(Film.LENGTH.greaterThan(60)) .forEach(System.out::println); 呈现SQL SELECT film_id,title,description,release_year,language_id,original_language_id,rental_duration,rental_rate,length,replacement_cost,rating,special_features,last_update FROM sakila.film WHERE (length ?),values:[60] 生成的输出 FilmImpl { filmId 1, title ACADEMY DINOSAUR, ..., length 86, ... } FilmImpl { filmId 4, title AFFAIR PREJUDICE, ..., length 117, ...} FilmImpl { filmId 5, title AFRICAN EGG, ... length 130, ...} 过滤器可以组合以创建更复杂的表达式如下所示 films.stream().filter(Film.LENGTH.greaterThan(60).or(Film.LENGTH.lessThan(30))).forEach(System.out::println); 这将返回所有短于30分钟或长于1小时的电影。 检查您的日志文件您还将看到此Stream也呈现为SQL。 步骤5定义元素的顺序 默认情况下元素在流中出现的顺序是不确定的。 要定义特定的订单您可以应用 对这样的流sorted()操作 films.stream().filter(Film.LENGTH.greaterThan(60)).sorted(Film.TITLE).forEach(System.out::println); 呈现SQL SELECT film_id,title,description,release_year,language_id,original_language_id,rental_duration,rental_rate,length,replacement_cost,rating,special_features,last_update FROM sakila.film WHERE (length ?) ORDER BY length ASC, values:[60] 生成的输出 FilmImpl { filmId 77, title BIRDS PERDITION,..., length 61,...} FilmImpl { filmId 106, title BULWORTH COMMANDMENTS,..., length 61,} FilmImpl { filmId 114, title CAMELOT VACATION,..., length 61,..} ... 您还可以组成多个排序器来定义主要顺序次要顺序等。 films.stream().filter(Film.LENGTH.greaterThan(60)).sorted(Film.LENGTH.thenComparing(Film.TITLE.reversed())).forEach(System.out::println); 这将按LENGTH顺序升序然后按TITLE顺序降序对影片元素进行排序。 您可以组成任意数量的字段。 注意如果要按升序组成两个或多个字段则应使用该字段的方法 .comparator() 。 即 sorted(Film.LENGTH.thenComparing(Film.TITLE.comparator()))而不是 sorted(Film.LENGTH.thenComparing(Film.TITLE)) 步骤6分页并避免大对象块 通常人们希望分页结果以避免使用不必要的大对象块。 假设我们希望每页看到50个元素我们可以编写以下通用方法 private static final int PAGE_SIZE 50;public static T StreamT page(ManagerT manager,Predicate? super T predicate,Comparator? super T comparator,int pageNo ) {return manager.stream().filter(predicate).sorted(comparator).skip(pageNo * PAGE_SIZE).limit(PAGE_SIZE); } 此实用程序方法可以使用ANY过滤器来分页ANY表并按ANY顺序对其进行排序。 例如调用 page(films, Film.LENGTH.greaterThan(60), Film.TITLE, 3) 将返回长度超过60分钟的电影流并按标题显示第三页即跳过150部电影并显示以下50部电影。 呈现SQL SELECT film_id,title,description,release_year,language_id,original_language_id,rental_duration,rental_rate,length,replacement_cost,rating,special_features,last_update FROM sakila.film WHERE(length ?) ORDER BYtitle ASC LIMIT ? OFFSET ?, values:[60, 50, 150] 生成的输出 FilmImpl { filmId 165, title COLDBLOODED DARLING, ... length 70,...} FilmImpl { filmId 166, title COLOR PHILADELPHIA, ..., length 149... } FilmImpl { filmId 167, title COMA HEAD, ... length 109,...} ... 同样如果我们使用其他数据库类型则SQL代码将略有不同。 步骤7JVM中的内存加速 由于您在初始化器中使用了标准配置因此在pom.xml文件中启用了In-JVM内存加速。 要在应用程序中激活加速只需修改初始化代码如下所示 SakilaApplication app new SakilaApplicationBuilder().withPassword(sakila-password).withBundle(InMemoryBundle.class).build();// Load data from the database into an in-memory snapshotapp.getOrThrow(DataStoreComponent.class).load(); 现在表流将直接从RAM提供而不是呈现SQL查询。 内存索引也将加快筛选排序和跳过。 内存中的表和索引都存储在堆外因此它们不会增加垃圾回收的复杂性。 在我的笔记本电脑Mac Book Pro15英寸2015年中16 GBi7 2.2 GHz上对于我计算与过滤器匹配的电影和经过分类的电影流与对在本地计算机上运行MySQL数据库版本5.7.16的标准安装。 摘要 在本文中您了解了使用纯Java流查询现有数据库有多么容易。 您还了解了如何使用JVM内存流技术加快对数据的访问。 Sakila数据库和Speedment均可免费下载和使用请自己尝试。 翻译自: https://www.javacodegeeks.com/2018/09/query-databases-using-java-streams.htmljava流写入数据库
http://www.zqtcl.cn/news/469959/

相关文章:

  • 深圳网站建设软件定制公司房地产开发公司注册资金要求
  • 个人如何在企业网站做实名认证房地产平面设计主要做什么
  • 网站做字工具WordPress搜索功能增强
  • 慢慢来做网站多少钱wordpress优化搜索引擎
  • 网页 网站 区别现在装宽带要多少钱
  • 黄金网站下载免费建设个人网站需要什么条件
  • 网站开发人员岗位职责网站维护报价单
  • 免费正能量不良网站推荐自建网站视频教程
  • 厦门物流网站建设南京宜电的网站谁做的
  • vps 网站备案手机界面设计素材
  • seo排名影响因素主要有灯塔seo
  • 济南哪家做网站小勇cms网站管理系统
  • sns社交网站注册做网站 提交源码 论坛
  • wordpress网站编辑semir是什么牌子
  • 做区块链的网站教育培训机构平台
  • 系统网站怎么做的seo竞争对手分析
  • 菏泽网站建设菏泽众皓网页开发工资
  • 网站建设需求分析酒类群晖wordpress 映射
  • 呼和浩特网站建设宣传wordpress淘宝客插件开发
  • 如何建网站赚钱做淘宝网店需要多少钱
  • 做个企业网站 优帮云移动商城个人中心手机卡进度查询
  • 深圳建设网站哪家最好国外互联网裁员
  • 网站重新建设的请示wordpress get_terms 排序
  • 建站模板免费下载wordpress 管理地址
  • 静安企业网站制作wordpress文章列表显示缩略图
  • html前端网站开发先做网站还是先解析
  • 怎么通过域名访问网站elision wordpress
  • 做邮轮的网站做游戏的软件app
  • 做网站用php还是python家装十大品牌排行榜
  • 湛江网站建设招聘创作者服务平台