日常开发注意问题

发布时间:2021-09-27 17:29:45

1.??Java中占位符and字符串拼接问题。


第一种:


public static final String xxx = "redis:rocky:";


String key = Main.xxx + "yyy"+":"+"zzz";


第二种:


public static final String xxx = "redis:rocky:{0}:{1}";


String key = MessageFormat.format(Main.xxx,"yyy","zzz");


----------------------------------------------------------------------------------------------------------------------------------------------------------------


2.CountDownLatch latch = new CountDownLatch(xxx);在开发中的应用


----------------------------------------------------------------------------------------------------------------------------------------------------------------


3.redis的序列化问题。Java打印一个hashmap,结果是这样的{map1=1,map2=2,map3=3},因为将数据存入到redis里面和从redis里面取数据时的序列化方式不一样,导致取出来的格式是这样的{"map1"=1,"map2"=2,"map3"=3},将序列化格式统一以后,数据格式就完美了。


----------------------------------------------------------------------------------------------------------------------------------------------------------------


4.业务开发中对redis做了复*,以下是在网上找到的学*资源:


----------------------------------------------------------------------------------------------------------------------------------------------------------------


(1)【转】RedisTemplate使用说明-opsForValue(一),https://blog.csdn.net/qq_39071667/article/details/88866038


(2)【转】RedisTemplate常用集合使用说明-opsForValue(二),https://blog.csdn.net/qq_39071667/article/details/88866059


(3)【转】RedisTemplate常用集合使用说明-opsForList(三),https://blog.csdn.net/qq_39071667/article/details/88866092


(4)【转】RedisTemplate常用集合使用说明-opsForHash(四),https://blog.csdn.net/qq_39071667/article/details/88867639


(5)【转】RedisTemplate常用集合使用说明-opsForSet(五),https://blog.csdn.net/qq_39071667/article/details/88867655


(6)【转】RedisTemplate常用集合使用说明-opsForZSet(六),https://blog.csdn.net/qq_39071667/article/details/88867677


(7)【转】RedisTemplate常用集合使用说明-boundHashOps(七),https://blog.csdn.net/qq_39071667/article/details/88871269


(8)【转】RedisTemplate常用集合使用说明-boundListOps(八),https://blog.csdn.net/qq_39071667/article/details/88871283


(9)【转】RedisTemplate常用集合使用说明-boundSetOps(九),https://blog.csdn.net/qq_39071667/article/details/88871306


(10)【转】RedisTemplate常用集合使用说明-boundValueOps(十),https://blog.csdn.net/qq_39071667/article/details/88871331


(11)【转】RedisTemplate常用集合使用说明-boundZSetOps(十一),https://blog.csdn.net/qq_39071667/article/details/88871353


----------------------------------------------------------------------------------------------------------------------------------------------------------------


(1)【转】RedisTemplate访问Redis数据结构(前言),https://blog.csdn.net/weixin_37490221/article/details/78134105


(2)【转】RedisTemplate访问Redis数据结构(一)??String,https://blog.csdn.net/weixin_37490221/article/details/78134521


(3)【转】RedisTemplate访问Redis数据结构(二)??List,https://blog.csdn.net/weixin_37490221/article/details/78134748


(4)【转】RedisTemplate访问Redis数据结构(二)??Hash,https://blog.csdn.net/weixin_37490221/article/details/78135036


(5)【转】RedisTemplate访问Redis数据结构(四)??Set,https://blog.csdn.net/weixin_37490221/article/details/78135202


(6)【转】RedisTemplate访问Redis数据结构(四)??Zset,https://blog.csdn.net/weixin_37490221/article/details/78135815


(7)【转】Redis??事务详解,https://blog.csdn.net/weixin_37490221/article/details/78197613


----------------------------------------------------------------------------------------------------------------------------------------------------------------


5.【转】RedisTemplate和StringRedisTemplate区别,https://blog.csdn.net/Abysscarry/article/details/80557347


----------------------------------------------------------------------------------------------------------------------------------------------------------------


6.【转】git merge和git rebase区别,https://blog.csdn.net/liuxiaoheng1992/article/details/79108233(还在消化中)


----------------------------------------------------------------------------------------------------------------------------------------------------------------


7.【转】对future.cancle();方法的理解,https://blog.csdn.net/z69183787/article/details/87932452


----------------------------------------------------------------------------------------------------------------------------------------------------------------


8.git commit --amend,应用场景,git commit提交到本地,但是发现注释写的不好,想重新写,使用该命令,进入到vim环境,进行编写即可。


----------------------------------------------------------------------------------------------------------------------------------------------------------------


9.对在阿里云上面打数据埋点的理解。例如:


public class RockyLog extends LogItem{


? ? ? ? private String actionMsg;


? ? ? ? public String getActionMsg(){


? ? ? ? ? ? ? ? ?return?actionMsg;


? ? ? ? }


? ? ? ? public void setActionMsg(String actionMsg){


? ? ? ? ? ? ? ? ?this.PushBack("action_msg",actionMsg);


? ? ? ? ? ? ? ? ?this.actionMsg =?actionMsg;


? ? ? ? }


}


在后面做数据埋点的时候,有actionMsg属性的时候,直接rockyLog.setActionMsg(actionMsg);即可,打点别的属性是RockyLog类中没有的,直接rockyLog.PushBack("actionCode","actionCode");即可。


----------------------------------------------------------------------------------------------------------------------------------------------------------------


11.埋点数据的时候,因为不同的业务会有一些公有的字段值,而这些公有字段一般会在封装好的方法里面set的,所以在数据埋点的时候,一定要把公有的字段避开,以免打点的字段出现两次的问题。数据埋点很重要。


----------------------------------------------------------------------------------------------------------------------------------------------------------------


10.在springboot项目中,在feign里面调用多个服务的接口,如果想对某个单独服务的接口设置响应超时时间,例如:


xx-xxx-xxxx:


? ?ribbon:


? ? ? ?ReadTimeout: 2000


? ? ? ?ConnectTimeout: 2000


----------------------------------------------------------------------------------------------------------------------------------------------------------------


11.在接触kafka的时候注意到了一个注解,就是@KafkaListener(topics="xxx"),这个起到一个监听的作用,去监听同一个topic下有没有生产者生产消息,所以在测试用例的时候,就会显示成生产一个消费一个这样的现象。去掉这个注解,则就是一直生产而不去消费。


----------------------------------------------------------------------------------------------------------------------------------------------------------------


12.SpringBoot中mongodb的MongoTemplate的应用


<1>.查询,Query query = new Query();


? ? ? ?query.addCriteria(Criteria.where("id").is(id));?


? ? ? ?return mongoTemplate.find(query,Entity.class);


<2>.插入,mongoTemplate.insert(list,Entity.class);


<3>.更新,Query query = new Query();


? ? ? ? ? ? ? ? ??query.addCriteria(Criteria.where("id").is(id));?


? ? ? ? ? ? ? ? ? Update update = new Update();


? ? ? ? ? ? ? ? ? update.set("name","rocky1996");


? ? ? ? ? ? ? ? ? mongoTemplate.updateFirst(query,update,Entity.class);


<4>.删除,Query query = new Query();


? ? ? ? ? ? ? ? ??query.addCriteria(Criteria.where("id").is(id));?


? ? ? ? ? ? ? ? ??mongoTemplate.remove(query,Entity.class);


----------------------------------------------------------------------------------------------------------------------------------------------------------------


13.StringUtils的isEmpty()和isBlank()方法的区别


isEmpty()方法:判断为空的标准是str==null或者str.length()==0,但是isEmpty()没有忽略空格参数


StringUtils.isEmpty("rocky1996") = false;


StringUtils.isEmpty("") = true;


StringUtils.isEmpty("? ? ?") = false;


isBlank()方法:isBlank()方法是在isEmpty()方法的基础上进行了为空的判断,有对空格进行判断,更为常用


StringUtils.isBlank("rocky1996") = false;


StringUtils.isBlank("") = true;


StringUtils.isBlank("? ? ?") = true;


----------------------------------------------------------------------------------------------------------------------------------------------------------------

相关文档

  • 淘宝已删除评价如何恢复
  • 大学生法律专业实习报告例文
  • 想要读懂大数据,你得先了解这些技术
  • 劳苦功高成语的简单造句
  • 星级酒店装饰设计作品图片
  • 宝宝补钾吃什么食物好?
  • 尊重生命高中作文(五篇)
  • 手机励志图片带文字图片素材
  • 科目三考试一把过技巧分享2016
  • 11的屏幕多大
  • 关于压力为话题的作文
  • 胡椒薄荷
  • 一年级小学生寒假计划表
  • 初中法制黑板报边框
  • 古代孝敬父母的故事 有关孝顺的故事
  • 励志的读后感范文精选
  • 给初中同学的毕业赠语
  • 爱粮食节约粮食作文范文
  • 印度十大复仇电影排行:《痛击》上榜,第二由真实故事改编
  • 能源消费调研统计方案
  • 华为机试编程题(一)
  • 关于小学安全教育演讲稿
  • invalid index of a 0-dim tensor. Use tensor.item() to convert a 0-dim tensor to a Python number
  • 吴江路小吃街具***置
  • 小学生庆元旦黑板报简单
  • 初入职场应该看的书
  • 瑶柱竹荪汤的做法瑶柱竹荪汤怎么做好吃瑶柱
  • (知识点补充一)聚合签名--Aggregating several signatures
  • struts2的拦截器的getInvocationContext()和使用ActionContext.getContext()有什么不同?
  • 新品怎么做推广
  • 猜你喜欢

  • 物业管理年终总结三篇
  • 设置Word 2007 文档左右页码
  • 山东的寺庙有那些啊
  • PDF打开后却不能编辑要怎么办?
  • 迪士尼公主化妆车视频
  • 华为荣耀手机老是内存不足怎么办
  • 自制中药退黄汤泡浴对湿热型新生儿病理性黄疸的影响
  • 深圳市家匠生活服务有限公司(企业信用报告)- 天眼查
  • 六年级作文写人:我和少先队_11113
  • 2013年兽医资格证考试大纲(全科)
  • 针刺董氏奇穴治疗腰椎间盘突出症35例
  • 2019-2020学年度小学英语四年级上册Unit 10 Around my home新版-牛津上海版复习特训五十六
  • 云计算在下一代数据中心建设中的应用及案例解析22
  • 结婚朋友祝贺句子
  • 2019学年广东普宁英才华侨中学高二下学期月考二语文试卷【含答案及解析】
  • 河北省石家庄市复兴中学高中语文第二单元6逍遥游限时练*题(无答案)新人教版必修5
  • 光纤通信课后*题解答 第9章参考答案
  • 【15篇】部编人教版一年级上册语文课外阅读专项练*题含答案
  • 安全周知卡-硫酸 - 副本
  • 2020年人教版小学数学二年级下册第5单元测试题2
  • 【免费下载】教学设计理念及说明
  • 怎么把电脑的保护软件关掉
  • 教师招聘考试复*题目及答案8
  • [精品]2019学年高一物理上学期第一次月考试题(3-13班)(新版)新人教 版
  • qq退出登录在哪里
  • 小学英语五年级上册- Unit 4 Jenny and Danny Come to China lesson 20 冀教版(三起) (15张PPT)ppt课件
  • 学校大家访活动实施方案
  • 文化艺术学院团总支工作总结
  • 浙江省杭州市塘栖中学2016_2017学年高一数学下学期期末复*试题一
  • 我国高校产学研合作利益分配机制研究
  • 艾叶青团的正宗做法
  • 蒽环类药物心脏毒性防治指南_2013年版_马军
  • 【优课】人教版初中数学人教初中数学七上《4.2 直线、射线、线段》PPT课件 (21)
  • 惠州市仲恺高新区海蓝家具厂(企业信用报告)- 天眼查
  • 2017-2023年中国运输船行业市场分析及投资可行性研究报告(目录)
  • MOOG伺服阀使用说明书
  • 强化县域民营经济管理加快南漳经济发展进程---发展南漳县民营经济之我见
  • 十月份黑鱼好钓吗?十月份怎么钓黑鱼?
  • 宁晋县盛邦割绒有限公司企业信用报告-天眼查
  • 我的家_三年级写人作文_4
  • 2018最新自查报告范本模板-公司消防安全检查报告范文
  • 无位置传感器无刷直流电机的控制策略
  • 电脑版