- 博客(29)
- 收藏
- 关注
原创 jdk动态代理和cglib动态代理的原理及区别
在Java中实现代理的方式主要有两种,一种是静态代理,另一种是动态代理。本文重点主要讲动态代理的方式。1.实现MethodInterceptor接口,重写intercept()1.实现InvocationHandler接口,重写invoke()2.使用Proxy.newProxyInstance()产生代理对象。以上就是JDK动态代理的全部代码,接下来我们看cglib的代码。2.使用Enhancer对象.create()产生代理对象。要实现的接口:SmsService。3.被代理的对象必须要实现接口。
2023-04-07 10:57:01
229
原创 docker 配置mysql时外部挂载配置文件配置server-id未生效
docker 配置mysql时外部挂载配置文件配置server-id未生效
2023-02-10 14:50:01
1109
原创 ElasticSearch 整合SpringBoot 使用RestHighLevelClient 常见的工具类
整合的csdn上常见的api ,具体的原文链接找不到了,如果侵权,可联系我删除
2022-09-21 14:51:17
1124
原创 关于react antd中下拉框联动没有清除上一次选择的内容
关于react antd中下拉框联动没有清除上一次选择的内容问题描述:在选择云厂商的时候 后面的共享包应该也动态的清除。当选择腾讯的时候 共享包是bwp-1t8hnlyu当换成阿里的时候 共享包依然是上一次选择的内容没有清除上一次的数据尝试解决:第一次尝试:在select中设置他的value值为当前的exampleOption当云厂商改变的时候也确实改变了,但是当进行选中的时候显示异常,这是因为在共享包下还有一个地域联动,地域是根据选中的共享包进行查找的,共享包是一个值,如果解决
2022-02-09 11:43:28
2298
原创 关于react 中的proFormSelect 在onChange事件中设置uesState值不会变的问题
笔者原本想的是在ProFormSelect中对temp设置值,在使用setTemp之后发现useState中的值并没有发生变化 const [temp,setTemp] = useState(0) const unitChanage = (value) =>{ console.log("++++++"); setTemp(1) console.log(temp); } <ProFormSelect defaultValu
2022-01-24 12:28:42
3959
2
原创 关于react useState不能动态监听某一个属性变化的问题
业务需求1.使用echarts动态展示数据时可以动态的切换单位我开始的实现思路是:获取已经存放数据的option,将里面的数据一个一个取出来进行计算之后,重新放入option,以下是代码:const [option,setOption] = useState({});const series = option.series.map(item =>{ let temp = [] item.data.map(item =>{
2022-01-21 15:30:11
1500
原创 Redis的config配置类
@Configuration@EnableCachingpublic class RedisConfig extends CachingConfigurerSupport { @Bean public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory factory) { RedisTemplate<String, Object> template = new Re
2021-08-26 09:43:28
1308
1
原创 RandomUtils类的固定写法
public class RandomUtils{ private static final Random random = new Random(); private static final DecimalFormat fourdf = new DecimalFormat("0000"); private static final DecimalFormat sixdf = new DecimalFormat("000000"); public static String getFourB
2021-08-26 09:40:45
106
原创 logback的配置文件
<?xml version="1.0" encoding="UTF-8"?><configuration scan="true" scanPeriod="10 seconds"> <!-- 日志级别从低到高分为TRACE < DEBUG < INFO < WARN < ERROR < FATAL,如果设置为WARN,则低于WARN的信息都不会输出 --> <!-- scan:当此属性设置为true时,配置文件如果发生
2021-08-26 09:38:56
184
原创 jwt工具类的固定写法
public class JwtUtils { public static final long EXPIRE = 1000 * 60 * 60 * 24;//token过期时间 public static final String APP_SECRET = "ukc8BDbRigUDaY6pZFfWus2jZWLPHO"; //密钥 //生成token字符串的方法 public static String getJwtToken(String id, String nic
2021-08-26 09:37:35
175
原创 计算内存字节的问题
题目:编写一个编译器,结算内存所需要的字节数请输入一个字符串,编译出代码所需要的字节数,如:int a[10][10][10],k,m;int 类型所占4个字节long 类型所占8个字节char 类型所占1个字节输入描述:int a[10][10][10],k,m;输出描述:输入格式为 变量类型+一个空格+变量;输出结果:4008(10 x 10 x 10 + 1 + 1) x 4 = 4008public static void main(String[] args) {
2021-08-19 10:14:00
201
原创 力扣第88题 合并两个有序数组
给你两个按 非递减顺序 排列的整数数组 nums1 和 nums2,另有两个整数 m 和 n ,分别表示 nums1 和 nums2 中的元素数目。请你 合并 nums2 到 nums1 中,使合并后的数组同样按 非递减顺序 排列。注意:最终,合并后数组不应由函数返回,而是存储在数组 nums1 中。为了应对这种情况,nums1 的初始长度为 m + n,其中前 m 个元素表示应合并的元素,后 n 个元素为 0 ,应忽略。nums2 的长度为 n 。示例 1:输入:nums1 = [1,2,3,0,
2021-08-18 10:12:33
811
原创 力扣第7题 整数反转 详解
给你一个 32 位的有符号整数 x ,返回将 x 中的数字部分反转后的结果。如果反转后整数超过 32 位的有符号整数的范围 [−231, 231 − 1] ,就返回 0。假设环境不允许存储 64 位整数(有符号或无符号)。示例 1:输入:x = 123输出:321示例 2:输入:x = -123输出:-321示例 3:输入:x = 120输出:21示例 4:输入:x = 0输出:0提示:-231 <= x <= 231 - 1主要是用String中的resve
2021-08-13 15:38:45
69
原创 力扣第1题 两数之和 详解
给定一个整数数组 nums 和一个整数目标值 target,请你在该数组中找出 和为目标值 target 的那 两个 整数,并返回它们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素在答案里不能重复出现。你可以按任意顺序返回答案。示例 1:输入:nums = [2,7,11,15], target = 9输出:[0,1]解释:因为 nums[0] + nums[1] == 9 ,返回 [0, 1] 。示例 2:输入:nums = [3,2,4], target = 6
2021-08-13 15:11:33
181
原创 力扣第67题 二进制求和 详解
给你两个二进制字符串,返回它们的和(用二进制表示)。输入为 非空 字符串且只包含数字 1 和 0。示例 1:输入: a = “11”, b = “1”输出: “100”示例 2:输入: a = “1010”, b = “1011”输出: “10101”提示:每个字符串仅由字符 ‘0’ 或 ‘1’ 组成。1 <= a.length, b.length <= 10^4字符串如果不是 “0” ,就都不含前导零。public String addBinary(String a,
2021-08-13 15:02:31
144
原创 微信支付的实现
controller层@RestController@RequestMapping("/order/log")@Api(description = "二维码操作")public class TPayLogController { @Autowired private TPayLogService tPayLogService; @ApiOperation(value = "生成微信支付二维码") @GetMapping("/createNative/{orderNo
2021-05-27 15:36:37
212
原创 微信登录的方式
登录和注册的controller层@ApiOperation(value = "登录") @PostMapping("/login") public Msg login(@RequestBody UcenterMember member){ String token =ucenterMemberService.login(member); return Msg.success().data("token",token); } @ApiOpe
2021-05-27 15:33:21
348
原创 aliyun整合视频上传功能和删除云端视频功能
1.引入依赖<dependencies> <dependency> <groupId>com.aliyun</groupId> <artifactId>aliyun-java-sdk-core</artifactId> </dependency> <dependency> <groupI
2021-05-27 14:41:54
349
原创 EasyExcel 的使用方法
1.引入依赖 <!-- https://mvnrepository.com/artifact/com.alibaba/easyexcel --> <dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <ve
2021-05-27 10:39:06
279
原创 aliyun实现上传oss 的步骤
1.引入依赖 <!-- 阿里云oss依赖 --> <dependency> <groupId>com.aliyun.oss</groupId> <artifactId>aliyun-sdk-oss</artifactId> <version>3.1.0</version> </dependency>
2021-05-27 10:09:50
1864
原创 运行nuxt 报Cannot find module ‘@babel/preset-env/lib/utils‘
**Cannot find module ‘@babel/preset-env/lib/utils’ **表示不能找到一个moudule 只需要先执行npm i @babel/preset-env@7.12.17之后再执行 npm run dev即可
2021-05-14 20:36:55
1419
原创 Spring boot的运行流程
1、创建SpringApplication对象1.创建SpringApplication对象,把参数sources设置到SpringApplication属性中2.判断当前是不是一个web应用,设置到webEnvironment属性中3.找到初始化器,默认有5个,设置到initializers属性4.从类路径中找到ETA-INF/Spring.Factories找到监听器,设置到initializers中5.找到运行的主类mianinitialize(sources);private void
2021-04-13 10:33:56
2540
原创 关于SpringMVC中pathVariable与pathParam的区别
pathparm:是从request中来获取值pathVariable:是从URL中获取值例如: @pathparam 请求接口时 将变量URI路径片段映射到方法调用中http:///userId?user=1@pathVariable 请求接口时 将占位符参数(Restful风格)映射到方法调用中http:///userId/2...
2021-03-25 14:45:06
835
原创 SpringSecurity的基本使用
SpringSecurity:1.WebSecurityConfigurereAdapter 自定义Security策略2.AutherticationManagerBuilder 自定义认证策略3.@EnableWebSecutity 开始交给Spring托管 开启WebSecurity模式SpringSecurity的两个主要目标是认证和授权认证:Authentication授权:AuthorizationSpringSecurity主要是横切 AOP思想@EnableWebSe
2021-03-25 14:38:14
162
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人