- 博客(16)
- 资源 (1)
- 收藏
- 关注
原创 Redisson切面加锁,并支持使用spel表达式读取方法参数中的变量作为锁
Redisson切面加锁,并支持使用spel表达式读取方法参数中的变量作为锁
2022-07-22 12:01:57
545
原创 SpringCloud使用feign调用错误
一、Method has too many Body parameters可能原因:方法内参数不止一个1、如果是例如:可以使用@RequestParam注解:2、使用对象:解决办法有两个:1、使用注解@SpringQueryMap 2、把这两个对象整合为一个,例如把User中相关属性写到PageRequest中,保证只有一个对象。...
2022-04-15 17:29:37
2694
原创 kettle从插入表中根据sql获取字段
kettle做一个简单的输入表,有这些字段:做一个简单的连接:输出表中可以选择字段:该字段是从输入表中来的,并且是根据输入表中的sql来的,输入表中SQL少写一个字段或者写错SQL都是没有的。 我要做的是在Springboot中集成kettle,由前端输入sql语句,便能获取到他sql语句中的所有字段。上网找了一下,并没有找到方法,今天早上来摸索了一下,终于是摸索出来了。 基于:SpringBoot集成Kettl...
2021-12-02 17:56:28
2566
原创 SpringBoot集成Kettle添加过滤记录
过滤记录可用于做增量添加,假设id是自增的,从源表中获取数据插入目标表,如果数据量过大,全表更新导致速度十分慢。这时候可以从源表查询数据,过滤掉id小于目标表最大id的数据,这样可以实现基于id的增量添加。 数据量过大可能导致最开始查询时速度过慢,业务中是把Kettle做成了WEB项目,通过前端来输入查询语句,一般会输入SELECT * FROM tableName,有可能加上WHERE来筛选一下。最好是在原语句中加入比较id大小的条件从而减少查询数据。但是:...
2021-11-30 10:47:16
3455
原创 ClickHouse获取主键字段的SQL
最近需求是需要获取到ClickHouse的主键字段,上网找了一圈就是没找到相关答案,根据表结构获取的不太现实,思前想后,于是决定考虑从表字段入手,果然发现了不一样的地方:获取字段:SELECT * FROM system.columns WHERE database = 'lwslwslws' AND table = 'menu'结果:拉到后面:发现这里有显示主键,值为1表示:是于是乎:把sql改一下:SELECT name FROM sy...
2021-11-24 14:02:11
1710
原创 java关流工具类
由于许多地方都需要设计关流,可以使用关流新方式,但是大部分情况下我们不能在try()中声明变量,因为作用域过小。所以需要手动关流,有时候要关的流很多,导致在finally里写很多个,其实大部分需要关闭的流已经实现了AutoClouseable接口,在多态情况下会执行子类的方法。可以使用可变参数来写一个工具类:public class CloseUtil { public static void close(AutoCloseable ...autoCloseable) { if
2021-11-23 15:20:56
814
原创 SpringBoot集成Kettle,并支持拓展插件
最近项目中需要用到kettle做数据库同步,kettle是拥有自己的可视化界面的。但是我们的需求是是把他集成到自己的项目中。首先kettle的依赖国内maven仓库好像没有(我没找到),我们可以去下载kettle的软件,从lib文件夹中获取我们需要的jar包官网地址:下载地址下载后可以解压,得到这样的文件目录:我们只是为了获取jar包,从lib文件夹下获取主要的核心jar在项目中新建一个lib文件夹,将这三个jar拷入并添加在pom文件里添加...
2021-11-23 14:41:24
6341
2
原创 Could not transfer artifact xxx from/to nexus (http://xx/repository/maven-public/):
我在idea的pom.xml中的配置是这样的:<!-- nexus 私服 --><repositories> <repository> <id>nexus</id> <name>Team Nexus Repository</name> <url>http://xxx/repository/maven-public/</url> &
2021-11-09 08:55:23
3944
原创 MySQL查询学生成绩表相关
最近面试问到了,其实很简单,只是很久没有这样查询过了,一下子给整不会了。。。数据库:附上SQL:SET NAMES utf8mb4;SET FOREIGN_KEY_CHECKS = 0;-- ------------------------------ Table structure for course-- ----------------------------DROP TABLE IF EXISTS `course`;CREATE TABLE `course` (
2021-11-02 23:09:41
2044
1
原创 统计一个字符串在另一个字符串中出现的次数(并将其去除)
/** * 统计一个字符串出现在另一个字符串中的次数 * */public class CountStringTest { /** * @param o 被统计的字符串 * @param c 需要统计的字符串 * @return 出现的次数 */ public static int startCount(String o, String c) { // 按照需要统计的字符串切割 String[] splitStr = o.split(c); StringBuil.
2021-11-02 22:10:07
642
原创 Security实现手机验证码注册登录
准备工作:<!-- 导入security依赖 --><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId></dependency>登录流程:SecurityContextPersistenceFilter:是整个程序执行
2021-10-21 00:04:19
1888
原创 将ArrayList集合中重复元素,用最简单的方式去重,必须保证原有顺序。
@Test public void testName() throws Exception { // 先创建一个ArrayList ArrayList<String> list = new ArrayList<String>(); // 并加入值 list.add("原"); list.add("原"); list.add("有"); list.add("有"); list.add("顺"); list.add("顺"); list.ad..
2021-10-20 23:03:39
983
原创 冒泡排序 + 二分法
数组的排序有很多种,这里使用的是很经典的冒泡排序。冒泡排序在每次遍历时会将最大值找出,并移动至最右边,最终得到一个由小到大排序的数组。/** * 冒泡排序法 * @param arr */ private static void maoPao(int[] arr) { // 空的或没元素,不用继续 if (arr == null || arr.length == 0) { return; } // 第一、定义临时变量 int t; // 第四、是否排序完成.
2021-10-20 22:46:07
509
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人