Is this you? As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.
Claim your profile
Articles by Long uid
Java8函数式编程应用 - 红文 - 博客园
我们经常提到,Java8是革命性的一个版本,原因就是正式引入了函数式编程,那Java的函数式编程在实际应用中到底有什么用呢?结合实际的应用,我整理出了函数式在Java的几个经典用途。 惰性求值(Lazy evaluation)是在需要时才进行求值的计算方式。惰性求值自然地在数据结构中包含递归,可以以简单的方式表示无限的概念,这种方式有利于程序的模块化。 在Java这种Strict语言中,我们定义了临时变量代码块就会立即运算并且取得结果,而实际上很多结果未必会使用到,就存在不必要的计算,如下面的代码 /** * 是否是标准或默认工作台 * 理论上仅判断默认工作台即可(因为标准就是默认),此处是兜底一下历史逻辑 * * @param context * @return */ public boolean isStandardOrDefaultWorkbench(SchemaContext context) { Supplier<Boolean> isDefaultWorkbench = () ->...
微信支付v2_waterkid0的博客-CSDN博客
文档: https://pay.weixin.qq.com/wiki/doc/api/index.html 微信小程序:https://pay.weixin.qq.com/wiki/doc/api/jsapi.php?chapter=11_1 需要一个微信认证后的小程序,,还需要一个,在微信商户平台,,开通的商户,,将商户和小程序绑定到一起,, 用户在微信小程序上下单: 需要知道是哪个用户下的单,,也就是openid 需要知道小程序id,,商户id,,根据商户的秘钥key,生成一个签名 签名是为了防止数据别篡改,,, 怎么获取openid: @PostMapping("/login") public Map<String,String> login(@RequestBody @Valid WxLoginForm loginForm){ String url = "https://api.weixin.qq.com/sns/jscode2session"; HashMap<String, Object> map = new HashMap<>();...
转转游戏的账号订单流程重构之路-51CTO.COM
随着需求的不断迭代,项目代码的复杂度也会越来越高,“屎山”也一天一天慢慢的堆积起来,对于游戏业务的账号订单流程也是如此。游戏订单类型由原来的俩种增加到了现在的七种,早就已经到了需要重构的地步。但是由于牵涉流程长、影响范围大、平时需求排期也比较紧张,所以便无法抽出大量的时间去进行重构。因为一开始就设计的不够规范、合理,所以之前整个账号订单流程存在以下主要问题: 1.1 核心代码分布散乱 除了按照原子层、服务层划分之外,还有一个服务用于接收订单mq进行大量的处理操作,订单相关的接口分布于多个类甚至是一些名称与订单毫不相关的类当中。 1.2 缺少设计模式 缺少设计模式,各种节点、不同订单类型的逻辑基本都是通过各种if-else进行处理,耦合度较高,可读性、可扩展性和可维护性都较差,甚至会出现修改一种订单流程反而影响到了其它订单流程的情况。 1.3 影响交付效率 代码分布在多个服务当中,开发一个相关需求时经常需要拉4、5个项目分支。由于容易修改到了其它订单模式的代码,所以在测试的时候往往又需要回归其它模式的订单流程是否有受影响。这些都大大影响了开发测试以及最终交付的效率。...
微服务架构+创建微服务工程(商品/订单)_IT光的博客-CSDN博客
目录 1.微服务架构 1.1.单体应用架构 1.2.微服务应用 1.3 微服务架构的优势 1.4.微服务架构的缺点(挑战) 1.5. SpringCloud与微服务关系 1.6.SpringBoot和SpringCloud关系 2.
这个线上事故,直接把年终奖给干没了。。_凯迪网资讯
程序员鱼皮 2023-01-20 11:30 天津 1522 0 0 大家好,我是鱼皮。 前些日子,一位朋友负责的产品线上出现了一个比较严重的故障,经过排查发现这个故障是多线程使用不当引起的。这个问题挺有代表性的,所以分享给大家,希望能帮大家避坑。 问题简述 先简单介绍一下问题产生的背景,有个返利业务,其中有个搜索场景,这个场景是用户在 app 输入搜索关键词,然后 server 会根据这个关键词到各个平台(如淘宝,京东,拼多多等)调一下搜索接口,聚合这些搜索结果后再返回给用户,最开始这个搜索场景处理是单线程的,但随着接入的平台越来越多,搜索请求耗时也越来越长,由于每个平台的搜索请求都是独立的,很显然,单线程是可以优化为多线程的,如下 这样的话,搜索请求的耗时就只取决于搜索接口耗时最长的那个平台,所以使用多线程显然对接口性能是一个极大的优化,但使用多线程改造上线后,短时间内社群中有多名用户反馈前台展示「APP 需要升级的提示」,经定位后发现是因为在多线程中无法获取客户端信息,由于客户端信息缺失,导致返回给用户需要升级的提示,伪代码如下 // 开启多线程处理new...
Mybatis-Plus使用_mybatisplus xml_栀铭、辞花洛的博客-CSDN博客
官网地址:mybatis-plus官网 1.1 pom.xml依赖引入 <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> </dependency> <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.5.2</version> </dependency> <dependency> <groupId>org.projectlombok</groupId>...
Show More
loading
Actions
Is this you?
As a journalist, you can create a free Muck Rack account to customize your profile, list your contact preferences, and upload a portfolio of your best work.Get in touch with Long
Contact Long, search articles and posts on X, monitor coverage, and track replies from one place.
Learn more about Muck Rack