JUST DO IT


  • 首页

  • 归档

  • 分类

  • 标签

  • 关于

  • 搜索

Java Stream常见用法

发表于 2023-08-05 | 分类于 Java基础

概述

Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来对 Java 集合运算和表达的高阶抽象。

这种风格将要处理的元素集合看作一种流, 流在管道中传输, 并且可以在管道的节点上进行处理, 比如筛选, 排序,聚合等。

阅读全文 »

CompletableFuture示例

发表于 2023-08-05 | 分类于 Java深入

原文链接01

原文链接02

CompletableFuture实现了CompletionStage接口和Future接口,前者是对后者的一个扩展,增加了异步回调、流式处理、多个Future组合处理的能力,使Java在处理多任务的协同工作时更加顺畅便利。

  • 创建异步任务

    Future.submit、supplyAsync / runAsync

  • 异步回调

    thenApply / thenApplyAsync、thenAccept / thenRun、exceptionally、whenComplete、handle

  • 组合处理

    thenCombine / thenAcceptBoth / runAfterBoth、applyToEither / acceptEither / runAfterEither、thenCompose、allOf / anyOf

阅读全文 »

Spring中事务的嵌套

发表于 2023-08-05 | 分类于 Spring

原文链接

事务传播属性

  1. propagation_requierd:如果当前没有事务,就新建一个事务,如果已存在一个事务中,加入到这个事务中,这是最常见的选择。

  2. propagation_supports:支持当前事务,如果没有当前事务,就以非事务方法执行。

  3. propagation_mandatory:使用当前事务,如果没有当前事务,就抛出异常。

  4. propagation_required_new:新建事务,如果当前存在事务,把当前事务挂起。

  5. propagation_not_supported:以非事务方式执行操作,如果当前存在事务,就把当前事务挂起。

  6. propagation_never:以非事务方式执行操作,如果当前事务存在则抛出异常。

  7. propagation_nested:如果当前存在事务,则在嵌套事务内执行。如果当前没有事务,则执行与propagation_required类似的操作

阅读全文 »

如何保证每个循环体是单独事务

发表于 2023-08-05 | 分类于 Spring
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
@Component
public class OrderTimer {

@Autowired
private OrderService orderService;

@Autowired
private OrderMapper orderMapper;

/**
* 每隔1分钟执行未付款订单的关闭的操作
*/
@Scheduled(cron = "0 0/1 * * * ?")
public void closeOrders() {

//获取所有超时未付款的订单,这个需要根据你自己的实际情况编写,此处只是举例
List<Order> list= orderMapper.listCloseOrder();
if(list==null||list.size()<1){
return ;
}

for (Order order : list) {
orderService.closeOrder(order);
}
}
}
阅读全文 »

Spring多线程事务一致性

发表于 2023-08-05 | 分类于 Java并发

原文链接

业务场景

  • 希望将步骤 1 和步骤 2 并行执行,

  • 然后确保步骤 1 和步骤 2 执行成功后,再执行步骤 3,

  • 等到步骤 3 执行完毕后,再提交全部事务

1
2
3
4
5
6
7
8
public void removeAuthorityModuleSeq(Integer authorityModuleId, IAuthorityService iAuthorityService, IRoleAuthorityService iRoleAuthorityService) {
//1.查询出当前资源模块下所有资源,查询出来后进行删除
deleteAuthoritiesOfCurrentAuthorityModule(authorityModuleId, iAuthorityService, iRoleAuthorityService);
//2.查询出当前资源模块下所有子模块,递归查询,当删除完所有子模块下的资源后,再删除所有子模块,最终删除当前资源模块
deleteSonAuthorityModuleUnderCurrentAuthorityModule(authorityModuleId, iAuthorityService, iRoleAuthorityService);
//3.删除当前资源模块
removeById(authorityModuleId);
}
阅读全文 »

枚举使用

发表于 2023-08-05 | 分类于 Java基础

定义

1
2
3
4
5
public enum Week {
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY
}
// 枚举类对象不能通过 new 出来,引用的时候直接类.实例名
Week w = Week.MONDAY;
阅读全文 »

Linux压测

发表于 2022-08-27 | 分类于 Linux

LoadRunner执行脚本慢问题

win7专业版、loadrunner11

解决方法更改.net安装目录中一个配置文件machine.config。

该文件位于.net安装目录下v2.0.50727\CONFIG(如C:\Windows\http://Microsoft.NET\Framework\v2.0.50727\CONFIG)

使用文本编辑配置文件,配置文件runtime节点。

默认为空:

1
<runtime/>

我们加上:

1
2
3
<runtime>
    <generatePublisherEvidence enabled="false"/>
</runtime>
阅读全文 »

Linux运维

发表于 2022-07-29 | 分类于 Linux

软件清单

Mariadb 10.3.17-MariaDB MariaDB Server
Redis redis-3.2.12-2.el7.x86_64.rpm
Nacos nacos-1.4.2-1.el7.x86_64.rpm
Nginx nginx-1.20.1-1.el7.ngx.x86_64.rpm
阅读全文 »
12…13
Try.Catch

Try.Catch

孤单而灿烂

102 日志
16 分类
26 标签
© 2017 — 2023 Try.Catch
由 Hexo 强力驱动
|
主题 — NexT.Gemini v5.1.4
本站访客数 人次 本站总访问量 次
0%