摘要: 我们对于位运算可能既陌生又熟悉。知道其运算方法运算过程,但不能运用好它。   首先,我们还是回顾一下Java中位运算都包含那些操作: 一、与运算(&)   运算法则:将二进制数进行按位与运算。0&0=0;0&1=0;1&1=1 ; 如:0011 & 0010 = 0010;   二、或运算(|)   运算法则:将二进制数进行按位或运算。0|0 =0;1|0 = 1; 1|1=1   如:0011 & 0010 = 0011;   三、异或运算(^)   运算法则:将二进制数进行按位异或。 0^0 = 0; 1^1=0;1^0=1; 阅读全文
posted @ 2019-08-24 23:27 田野里的放牛娃 阅读(2914) 评论(0) 推荐(0) 编辑
摘要: 数据类型 字节长度 范围 包装类 int 4 -2147483648~2147483647 (-231~231-1) Integer short 2 -32768~32767 Short long 8 -9223372036854775808~9223372036854775807 (-263~26 阅读全文
posted @ 2019-07-13 01:43 田野里的放牛娃 阅读(1030) 评论(0) 推荐(0) 编辑
摘要: 问:Spring容器、SpringIOC是什么? 那么Spring容器到底是什么东西呢,长什么样子呢?为什么感觉像是哆啦A梦的百宝箱,什么东西都能拿出来? 所以本文针对以上问题对一个简单的说明, 1、首先我们整个过程中要保持一个概念,容器中的Bean要经历以下步骤带着这个思想去看就会好理解一些: 2 阅读全文
posted @ 2019-06-30 17:09 田野里的放牛娃 阅读(2099) 评论(0) 推荐(0) 编辑
摘要: 1.问题描述 需要对日常使用对接口进行出入参数、请求结果、请求耗时、请求关键信息等的记录 2.解决方案 利用注解标示出接口中的关键信息。利用AOP进行方法前后的拦截记录请求入参以及处理结果。利用SPEL解析参数中的关键信息 考虑点:1.各个接口的参数都不一致。自己想要的关键信息可能包含在入参中,也可 阅读全文
posted @ 2019-06-13 21:48 田野里的放牛娃 阅读(1365) 评论(0) 推荐(0) 编辑
摘要: 业务场景: 随着服务的模块化,软件架构中系统之间的接口调用也变得越来越多,由于网络抖动或者其他原因造成接口调用失败。没能达到理想效果。 解决方案: 鉴于上述问题,我们第一时间可能想到的就是“重试”,在重试的过程中,我们需要考虑: 1.重试的次数; 2.每次重试间隔的时间; 3.在达到最高重试次数后依 阅读全文
posted @ 2018-12-03 14:03 田野里的放牛娃 阅读(1608) 评论(0) 推荐(0) 编辑
摘要: 日常工作中经常会遇到需要数据库能够兼容 生僻字、emoji 的需求。 解决这中问题的办法一共有两步:1.修改字段的字符集为 utf8mb4 2.程序兼容生僻字或者 emoji 1、修改字符集 2、修改程序 这里需要提前说明一点,SpringBoot默认使用的是tomcat数据源,要使用druid数据 阅读全文
posted @ 2018-11-23 11:58 田野里的放牛娃 阅读(2158) 评论(0) 推荐(0) 编辑
摘要: 当前痛点 如上所示:痛点有二:1、对于开发测试来说,非常不友好。2、相对于SpringBoot来说,这种直接将配置写在代码中的也是不提倡的 SO,解决方案: 利用自定义注解,灵活的控制接口的权限。 直接上代码: controller: 注解: SpingBoot拦截器配置 拦截器: 上述代码通过注解 阅读全文
posted @ 2018-11-22 18:37 田野里的放牛娃 阅读(1168) 评论(0) 推荐(0) 编辑
摘要: 当前环境下,mybatis是使用很频繁的一个数据持久层框架。我们很多时候使用xml的方式来配置mybatis的sql,这种方式也称之为mybatis的动态SQL。but,本篇要说的是另一种方式。日常业务中我们可能会遇到很多有关于动态SQL的问题。我们就需要在代码中来编写SQL。 这个时候有的人可能就 阅读全文
posted @ 2018-11-09 12:05 田野里的放牛娃 阅读(4078) 评论(0) 推荐(0) 编辑
摘要: 一个简单的栗子,我们需要记录一个订单系统的订单状态流转日志。为了符合开闭原则,我们只能新加代码,随之引入AOP。AOP的引入是这个功能实现的基础。接着AOP的作用域是我们要思考的。最方便直观的当然是注解。所以我们要自定义一个注解。作用于需要记录日志的方法上。然后,问题又来了,不通的函数,可能接口参数 阅读全文
posted @ 2018-11-07 11:55 田野里的放牛娃 阅读(3976) 评论(0) 推荐(0) 编辑
摘要: 首先,能接触到多数据源的必定已经对多数据源有一定的了解了。目前常用的多数据源配置方式一共分为两种: 一种是多数据源与单数据源配置方式无异的做法,只是将mapper区分开来就可以。但是这种方式有他不可避免的弊端。如果两个数据源最终要使用同一套mapper.xml,mapper.java,或者业务逻辑。 阅读全文
posted @ 2018-11-07 11:23 田野里的放牛娃 阅读(1584) 评论(0) 推荐(0) 编辑