- 博客(171)
- 资源 (6)
- 收藏
- 关注
原创 es or查询
//跨索引查询SearchRequest request = new SearchRequest(index1,index2);想实现类似于 select * from table where (a != 1 and b != 1) or (startTime> “2022-05-20” and (a == 1 or b == 1)) 废话不多说,直接上代码@Autowired private RestHighLevelClient client; public List<
2022-05-20 17:11:58
2965
原创 Es Java多字段分组查询
es按照多个字段分组查询GET /你的索引/_search{ "size": 0, "aggregations": { "字段一的结果命名": { "terms": { "field": "startTime.keyword" }, "aggregations": { "字段二的结果命名": { "terms": { "field": "aa.keyword" } } } } }}java 代码实现:
2022-05-12 10:38:03
5883
原创 ES java 查询指定列
@Autowired private RestHighLevelClient client;public List<Map<String,Object>> search(String index) { List<Map<String,Object>> hitList = new ArrayList(); try { //搜索请求 SearchRequest request = new
2022-05-12 10:04:27
2582
原创 Es java分页查询列表数据
@Autowired private RestHighLevelClient client;public List<Map<String,Object>> searchList(String index,String fuzzySearchStr,int pageNum,int pageSize) { List<Map<String,Object>> hitList = new ArrayList(); try {
2022-05-12 09:04:22
1433
原创 ES java 根据条件查询总数
public long countSearch(String index,Map<String,Object> paramMap,Map<String, Object> notParamMap, String startTime,String endTime,String fuzzySearchStr) throws IOException { CountRequest countRequest = new Co
2022-05-12 08:50:04
3475
原创 ES Java分组查询,类似于MySQL的group by
public Map<String, Object> getCountGroup(String index,String startTime,String endTime,String groupFiled) throws IOException { Map<String, Object> resultMap = new HashMap<String, Object>(16); SearchRequest searchRequest = n
2022-05-10 14:57:28
1397
原创 Java获取两个时间里的所有月份集合
背景:有两个时间,获取这两个时间里的所有月份集合话不多说,上代码AlarmDateUtil.java public static List<String> getMonthBetween(String minDate, String maxDate) throws Exception { ArrayList<String> result = new ArrayList<String>(); SimpleDateFormat sd.
2022-05-10 14:49:10
546
原创 mysql数据多,多线程分页查询
业务:定时从MySQL数据库中读取数据保存到ES中,但MySQL数据量很大,单sql查询非常耗时,同时用List接收处理也有问题。刚开始想到直接分页处理,但发现处理效率很慢。最终想到使用多线程+分页形式处理,效率真的提高了很多。@Component@Slf4jpublic class TestHandler { private static ThreadFactory namedFactory = new ThreadFactoryBuilder().setNameFormat("test-th.
2022-04-29 09:25:37
1652
原创 springboot+mybatisplus动态数据源
1.pom.xml,引入 <dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-boot-starter</artifactId> <version>3.3.2</version> </dependency>
2022-04-29 09:11:40
561
原创 CompletableFuture取多个任务结果
public class DemoTest { @Test public void test(){ long start = System.currentTimeMillis(); CompletableFuture<List<Integer>> future1 = CompletableFuture.supplyAsync(() -> { List<Integer> ipPmPortFlow
2022-04-26 13:38:33
2072
1
原创 mysql查询以逗号分隔数据
<select id="" parameterType="" resultMap=""> SELECT user_name,user_type FROM user <where> 1=1 <if test="userTypeList != null and userTypeList.size() >0"> <foreach collection="userTypeList" open="and
2022-03-31 14:06:49
2428
原创 Aviator表达式
1.正则表达式-匹配 Map<String,Object> map = new HashMap<>(); map.put("aa","SDGG:.pppp"); Expression expression = AviatorEvaluator.compile("aa =~ /'SDGG:.*'/", true); Boolean result = (Boolean) expression.execute(map); System.out.println("结果"+resu
2022-03-23 18:38:39
2576
原创 es 更新延迟
es在更新之后并不是立即可见(可查询)的,会有1s的延迟,可以通过设置refresh_interval参数来修改刷新的间隔。但是在实际应用中,1s的延迟已经算是很久了,在java high level client中,为index、insert、update、bulk 提供了setRefreshPolicy方法,用于设置数据更改后的刷新策略。主要是三个参数IMMEDIATE、NONE、WAIT_UNTIL:NONE:这是默认的一种方式,调用request修改以后,并不进行强制刷新,刷新的时间间隔为r
2022-03-23 17:31:33
3734
原创 从数据库中获取需要监听的Kafka topic
背景:Kafka监听数据库中配置topic数据,并将数据转换后进行kafka数据转发1.application.ymltest: kafka: bootstrapServers: 192.168.11.1:9092,192.168.11.2:9092 consumer: group.id: group-id auto.offset.reset: latest enable.auto.commit: true producer:
2022-03-09 11:44:44
2162
原创 SpringBoot的ApplicationRunner
场景:在开发过程中,需要在容器启动的时候查询数据库,将数据加载到程序中代码:@Component@Slf4j@RequiredArgsConstructorpublic class InitAppRunner implements ApplicationRunner { public static Map<String, Object> map; @Override public void run(ApplicationArguments args) throws Exce
2022-03-09 11:18:03
1186
原创 Java 版本storm-demo
1.创建maven项目,并引入storm的依赖<dependency> <groupId>org.apache.storm</groupId> <artifactId>storm-core</artifactId> <version>1.1.0</version> </dependency>2.新建NumberSpout.javapublic cla
2022-03-01 18:51:16
299
1
原创 Linux下nacos报unknown system variable ‘tx_read_only‘
说明:我这边linux上使用的时mysql8.0.23,nacos是1.1.3 这个问题是因为mysql-connector-java驱动包与数据库的版本不一致导致的,所以需要下载对应的mysql连接驱动包官方下载地址:https://mvnrepository.com/artifact/mysql/mysql-connector-java/8.0.232.进入到nacos目录下创建plugins目录,在进入plugins目录中创建mysql目录,将下载好的mysql驱动连接包放到这个目录下3.
2022-01-12 09:57:57
833
原创 Linux 下unable to load authentication plugin ‘caching_sha2_password‘
1.登录mysql ,mysql -uroot -p 输入密码登录2.use mysql3.执行 ALTER USER ‘root’@’%’ IDENTIFIED WITH mysql_native_password BY ‘123456’;
2022-01-12 09:51:33
597
原创 Linux下 mysql8大小写敏感问题
说明:已经在linux上安装过了mysql,通过以下步骤解决:1 先查看mysql的运行状态,service mysql status,如果为运行状态,则停止:service mysql stop2 修改/etc/my.cnf文件,添加lower_case_table_names=13.将mysql数据备份出来4初始化mysql,需要删除data下面的数据/usr/local/mysql/bin/mysqld --user=mysql --lower-case-table-nam
2022-01-12 09:49:00
1073
原创 Linux上安装Mysql8
Mysql安装包官方下载地址:https://downloads.mysql.com/archives/community/2.通过Xshell登录linux服务器,并通过xftp将下载的安装包上传到服务器上3.解压 tar -xzvf mysql-8.0.23-linux-glibc2.12-x86_64.tar.xz -C /usr/local/4.创建用户和用户组[root@localhost ~]# groupadd mysql[root@localhost ~]#..
2022-01-07 14:01:38
1279
原创 Java获取部门组织树
本文章记录两种方式获取部门树型结构一、使用mybatis,因循环查库,比较耗时,二、递归查询一、使用mybatis实现1.编写实体类,TreeVO.java@Datapublic class TreeVO { private String value; private String label; private List<TreeVO> children = new ArrayList<>();}2.编写sql 语句,Commo.
2021-12-15 11:59:46
2428
原创 解决liquibase.exception.LockException: Could not acquire change log lock. Currently locked by XXXX
项目启动后报liquibase.exception.LockException: Could not acquire change log lock。解决方案,执行下面语句:use job(job为你的数据库);select * from DATABASECHANGELOGLOCK;update DATABASECHANGELOGLOCK set LOCKED="", LOCKGRANTED=null, LOCKEDBY=null where ID=1;select * from DATAB
2021-12-01 09:02:16
1719
原创 SpringBoot+Kafka+策略模式
1.pom引入依赖 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> </dependency>2.yml文件增加配置spring: kafka: # bootstrap-servers: 19
2021-10-14 19:30:13
452
1
原创 命令方式启动kafka
cmd进入到kafka解压目录(到bin层)启动kafka内置的zk命令:bin\windows\zookeeper-server-start.bat config\zookeeper.properties启动kafka命令:bin\windows\kafka-server-start.bat config\server.properties
2021-08-04 17:20:17
440
原创 java判断对象所属类型
使用instanceof 关键字List<String> list = new ArrayList();System.out.println(list instanceof Collection);//true
2021-07-26 10:47:03
794
原创 mybatis向动态表名,动态属性表中插入数据
XXMapper.java /** * * * @param tableName 表名 * @param tableFiledList 表字段集合 * @param formDataValueList 表字段值集合 */ int saveData(@Param("tableName")String tableName, @Param("tableFiledList")List<String>
2021-07-26 10:44:08
579
原创 Java+Aspose.diagram,导出数据到Visio
Java+Aspose.diagram,导出数据到VisioJava+Aspose.diagram,导出数据到VisioJava+Aspose.diagram,导出数据到VisioJava+Aspose.diagram,导出数据到Visio
2021-07-09 10:23:00
949
1
原创 Springboot+aspose.diagram java去水印
1.下载aspose.diagram jar包,这个是未去除水印的https://pan.baidu.com/s/1nbGKDdKkgovBBFaNag-ukA zett2.去除水印后的jar包https://pan.baidu.com/s/1Ti9uLq904GlthNraYsoQxg gvs63.过程第一步:修改License类,并重新生成class文件第二步:将META-INF下面的.RSA文件替换为空文件或者删除第三步:将新的jar包放到项目中第四步:新建license.x
2021-07-09 10:03:28
1368
10
原创 SpringBoot项目引入jar包到本地
1.在resources下面创建lib文件夹,并将jar放置下面2.打开pom文件,groupId、artifactId、version可以随便写,只要scope和systemPath写对即可;在plugin标签中,加上 <configuration> <includeSystemScope>true</includeSystemScope> </configuration>
2021-07-08 15:43:10
168
原创 com.aspose.diagram.afr: Unexcepted eof.
背景:SpringBoot项目,使用aspose.diagram操作Visio,并且使用了模具文件,并将其放在了resource下面代码://读取resource下面的文件,这种方法在linux环境上面依然可以使用Resource resource1 = new ClassPathResource("basic.vss");InputStream stream = resource1.getInputStream();Diagram diagram = new Diagram(stream);
2021-07-08 15:35:48
235
原创 SVG转为Png
1.pom中引入maven依赖<!-- svg 生成png格式图片 --> <dependency> <groupId>batik</groupId> <artifactId>batik-transcoder</artifactId> <version>1.6</version> </dependenc
2021-07-08 15:22:03
891
原创 使用javassist生成class文件
public static void changeMethod() throws Exception { ClassPool.getDefault().insertClassPath( "本地jar包地址"); //com.aspose.diagram.License需要操作的类 CtClass ctclass = ClassPool.getDefault() .getCtClas.
2021-07-05 18:07:49
693
原创 jar包替换class文件
1.需要替换的class文件已经生成好,不再赘述2.复制jar包到D:\dd,确认好需要替换的class文件的包路径,在dd文件夹下面依次创建如:License.class的包:com.aspose.diagram则需要创建com\aspose\diagram目录3.执行jar -uvf aspose-diagram-20.4-jdk16.jar com\aspose\diagram\License.class4.使用jd-gui进行查看,确认是否已经替换成功...
2021-07-05 18:00:24
796
原创 jd-gui反编译工具
1.下载jar包地址:https://pan.baidu.com/s/1gm0ly8QlIzKrCnjmd8QPSA 密码:v1eq2.下载后放到磁盘中3.cmd进入命令窗口,执行java -jar jd-gui-1.4.0.jar命令后会打开界面窗口4.选择file-Open file,上传jar包
2021-07-05 17:54:36
1087
原创 java导入json文件
需求:前后端分离项目,后端springboot项目,导入学生信息json文件格式如下:StudentDto.javapublic class StudentDto { private Student student; private List<Subject> subjects;}StudentController.java@PostMapping("import/json") public void importJson(@Request
2021-07-02 14:44:09
2172
1
原创 Java导入xml文件
需求:前后端分离项目,后端Springboot框架,将学生信息通过xml文件格式导入。一个学生信息,以及该学生选择的学科。student.xml文件格式如下:StudentController.java @PostMapping("import/xml") public void importXml(@RequestBody MultipartFile file){ studentService.importXml(file); }Stude
2021-07-02 14:22:57
1229
原创 Java导出json文件
需求:前后端分离,Springboot项目,将学生数据导出为json格式StudentController.java@GetMapping("/getJson") public void studentJson(HttpServletRequest request, HttpServletResponse response){ studentService.studentJson(request,response); }StudentService.java
2021-07-02 13:55:32
1263
原创 Java将数据导出为xml格式
需求:前后端分离项目,Springboot项目。需要将学生信息导出为xml文件。StudentController.java @GetMapping("/getXml") public void studentXml(HttpServletRequest request, HttpServletResponse response){ studentService.getStudentXml(request, response, id); }Student
2021-07-02 13:49:49
3404
1
原创 通过Visio软件的宏编写Java代码
1.新建Visio文件并打开2.在“开发工具”选项卡上,单击“录制宏”3.操作Visio,如画图、画线等4.点击停止录制5.点击宏6.可以查看到VB窗口的代码可以一步步调试,根据宏代码尝试编写Java代码,一般情况下,宏中使用的代码和Java生成的Visio类方法基本一致,只是方法形式和参数形式不同。可以参考微软的文档进一步理解。Visio Visual Basic for Applications (VBA) 参考 | Microsoft Docs...
2021-07-02 11:43:28
798
原创 Visio二次开发Java-画图画线(java+com4j)
// 创建Visio对象 IVApplication visio = ClassFactory.createApplication(); //创建新的空白文档【创建一个不基于模板的新绘图】 IVDocument document = visio.documents().add(""); // 获取当前活动页 IVPage ivPage = visio.activePage(); //在页上...
2021-07-02 11:35:51
1014
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅