随笔分类 -  项目实战

在工作中使用的知识的记录
摘要:@BeforeEach @BeforeEach 是 JUnit 测试框架中的一个注解,用于在每个测试方法运行之前执行一段代码或初始化操作。当你在测试类中使用 @BeforeEach 注解修饰一个方法时,该方法会在每个测试方法执行之前被调用一次。它可以用来设置测试环境、初始化测试数据或执行其他必要的准 阅读全文
posted @ 2023-05-18 10:52 JustJavaIt 阅读(21) 评论(0) 推荐(0) 编辑
摘要:需求背景 在实际项目中,好比在一个简单的订单处理系统,其中订单有不同的状态(比如新建、已支付、已发货、已收货等),为了实现基于状态机的逻辑处理,我们可以通过switch(状态)去对应不同状态的处理逻辑。 1 public String process2() { 2 switch (status) { 阅读全文
posted @ 2023-05-05 13:59 JustJavaIt 阅读(147) 评论(0) 推荐(0) 编辑
摘要:需求分析 优化接口时,需要手动拼接sql去调取神策的接口获取数据。好比将List<String> = {"123","456"}集合转化为('123','456')。 1 public class test3 { 2 3 public static void main(String[] args) 阅读全文
posted @ 2022-09-22 19:55 JustJavaIt 阅读(254) 评论(0) 推荐(0) 编辑
摘要:需求分析 同一公司,同一产品可能有多条广告计划,每条广告计划的消耗不同,财务统计页面需要按天统计不同产品的消耗总和。 示例说明 处理前: [{"consumption":50,"date":"2022-09-21","deptName":"字节","productName":"飞书"},{"cons 阅读全文
posted @ 2022-09-22 14:44 JustJavaIt 阅读(56) 评论(0) 推荐(0) 编辑
摘要:关于盲盒开盒相关的流程介绍,请查阅我的另一篇文章 ——盲盒想中大奖?还不如去买彩票!!!——从程序的角度揭秘盲盒。 盲盒规则概率 实体类 1 /** 2 * 盲盒规则概率 实体 3 * @author JustJavaIt 4 * @date 2022/01/29 14:18 5 */ 6 @Dat 阅读全文
posted @ 2022-01-30 10:47 JustJavaIt 阅读(2199) 评论(1) 推荐(0) 编辑
摘要:订阅关系不一致会有什么问题吗? 阿里二面: 同一个消费组内的消费实例,如果订阅了相同的 topic,但是订阅的 tag 不一样,会有什么问题吗? 测试配置消费实例1 生产配置消费实例2 阿里云--消息队列 RocketMQ 版 会导致订阅关系不一致,导致消息丢失。 RocketMQ 要求同一个消费者 阅读全文
posted @ 2021-12-21 21:47 JustJavaIt 阅读(1463) 评论(0) 推荐(0) 编辑
摘要:项目中复杂多变的条件 需求介绍 公司通过在头条、快手,腾讯等媒体平台上投放APP的广告,以此来长期塑造品牌形象以及达成拉新,活跃,留存等目的,广告的投放方式丰富多彩的,广告主关心的是哪种投放方式投入产出比ROI最优,通过实现广告投放系统中的回传上报和点击归因所产生的数据,进行投放和运营各层面的有效优 阅读全文
posted @ 2021-10-07 21:07 JustJavaIt 阅读(1117) 评论(0) 推荐(0) 编辑
摘要:分区表的理论知识请查看我的另一篇博文,谢谢——分区-理论 需求说明 广告投放系统中监测链接表的数据以每天500w+的速度递增(用户每次点击广告生成),但是热点数据就10天左右,其余都是没用的历史数据。采用定时任务Delete的方式,只是做了逻辑上的标记删除,在磁盘上数据并没有被真正删除。同时通过De 阅读全文
posted @ 2021-09-05 21:40 JustJavaIt 阅读(484) 评论(0) 推荐(0) 编辑
摘要:实战1 通过SpringContextAware.getBean(“Bean名称”)方式 需求说明 广告投放中,当用户点击广告的时候,平台(头条,快手等)都会回调给我们监测链接数据(广告创意,广告计划,用户的设备信息androdid,imei,oaid,idfa等),然后我们需要把监测链接的数据保存 阅读全文
posted @ 2021-08-08 17:53 JustJavaIt 阅读(542) 评论(0) 推荐(0) 编辑
摘要:在使用新架构WebFlux + R2DBC做拉取广告报表数据需求时,新建了表来保存拉取数据,因为字段有80多个,为了方便,就把第三方文档的字段直接作为表字段取建表,然后在调用spring原生Repository.save(实体)方法时报错,BadSqlGrammarException: execut 阅读全文
posted @ 2021-05-23 17:53 JustJavaIt 阅读(101) 评论(0) 推荐(0) 编辑
摘要:为了偷懒,想用一个接口实现两个功能,一是用于定时任务,一天执行一次,拉取稳定的广告报表数据,二是用于拉取前面15天的历史数据。 用于定时任务 debug 当作补偿接口 debug 阅读全文
posted @ 2021-03-23 18:25 JustJavaIt 阅读(71) 评论(0) 推荐(0) 编辑
摘要:使用SQL中的UPDATE关键字更新多个字段值时,SET后面的更新字段应该使用逗号而不能用AND。虽然用AND不会报错,但会使更新结果错误,下面我将通过场景来分析当我们使用AND时SQL的执行过程和为什么更新结果只会是0/1/NULL; 场景示例 以下是场景更新前的原始查询数据如下: 更新场景1 更 阅读全文
posted @ 2021-01-24 22:42 JustJavaIt 阅读(1964) 评论(0) 推荐(0) 编辑
摘要:LinkedHashMap存储数据时会记录顺序,所以取出的的时候就是有序的。hashMap存储和取出都是无序的,hashMap键只能允许为一条为空,value可以允许为多条为空,键唯一,但值可以多个。 parallelStream提供了流的并行处理,它是Stream的另一重要特性,其底层使用Fork 阅读全文
posted @ 2021-01-23 07:25 JustJavaIt 阅读(134) 评论(0) 推荐(0) 编辑
摘要:示例分析 /** * 避坑 | Java8使用并行流(ParallelStream)注意事项 * * @author WH.L * @date 2020/12/26 17:14 */ public class TestParallelStream { public static void main( 阅读全文
posted @ 2020-12-27 17:24 JustJavaIt 阅读(8322) 评论(0) 推荐(0) 编辑
摘要:需求说明 WKD项目中导出使用到了策略模式,需要根据id导出不同订单的明细数据,其中订单类型有四种(直营返货调拨单/申请单,加盟返货调拨单/申请单),使用策略模式避免使用多重条件判断(if,else),美化代码的同时增加了扩展性。 策略接口 public interface IExportStrat 阅读全文
posted @ 2020-11-11 05:06 JustJavaIt 阅读(311) 评论(0) 推荐(0) 编辑
摘要:在JDK1.8中,Collection以及其子类新加入了removeIf方法。removeIf() 方法用于删除所有满足特定条件的数组元素。 注意,集合中如果有null,在执行 list.removeIf()时将会报空指针异常,可以通过流过滤调空后再处理。 错误使用 正确使用 阅读全文
posted @ 2020-11-10 12:23 JustJavaIt 阅读(2839) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示