工作中遇到的问题
文章平均质量分 55
工作中遇到的小问题 会记录下来
战战的坚果
这个作者很懒,什么都没留下…
展开
-
java解决跨域问题
例如:file://d://test.html页面(file协议)中通过ajax访问服务器api.test.com的接口(http协议),由于协议不同,此时会出现浏览器访问不了后台接口的问题。浏览器js在访问服务器中的资源时,会出现同一页面或者不同域名(协议,IP,端口)不可访问。此时需要在服务器接口的请求头配置好,当浏览器访问时就会根据请求头判断是否可以访问。再次请求,可以正常得到结果。原创 2024-03-26 11:18:27 · 190 阅读 · 0 评论 -
@Async注解的坑
一个方法调用另一个方法(该方法使用@Async注解)在同一个类文件中,该注解会失效!将@Async注解的方法放在一个新的类文件中即可。此时看到一位前辈的帖子,觉得很好的解释了。可以看出@Async注解开启新的子线程。问题原因需要各位大佬们帮忙解答!可以看出是全部使用的主线程。原创 2023-11-13 20:28:12 · 474 阅读 · 1 评论 -
CountDownLatch使用
常用于多线程场景,待多线程都结束后方可继续主线程逻辑处理。原创 2023-11-13 20:16:31 · 137 阅读 · 0 评论 -
springboot定时服务
上一篇文章【】 是定时任务与功能项目共用一个;我目前所在公司的定时服务是专门有一个项目处理,然后定时查询库里面的定时信息配置。话不多说,上程序。原创 2023-11-10 16:26:50 · 166 阅读 · 0 评论 -
springboot中如何同时操作同一功能
springboot中某一功能同时操作如何处理?原创 2023-11-08 23:11:45 · 220 阅读 · 0 评论 -
Springboot项目的多数据源配置
spring boot项目配置多个数据源很常见!话不多说,上代码。首先先在system账号下创建了一个用户test1,并授予权限接下来登录test1用户,创建一个表student项目目录如下:修改之前的配置文件。原创 2023-11-07 17:00:15 · 155 阅读 · 0 评论 -
sql逻辑优化
最近接触的项目,若是数据量很大时,则限制查询日期为一个月;或者定期将数据进行备份到另一个数据库,后查询该库;但是当数据量特别大的时候,查询速度会减慢很多,limit 10000,10 查询速度较慢。于是,在查询下一页数据时 将上一页的最大值当成参数作为查询条件进行查询。1.分页 通常使用每页条数及第一页作为参数 开发接口。当数据量特别大的话,查询的速度 还是比较稳定的。有好的建议,欢迎大家评论!原创 2023-11-06 21:51:11 · 417 阅读 · 0 评论 -
java开发规范
java开发规范原创 2023-11-05 18:12:38 · 104 阅读 · 0 评论 -
周记录总结2
java,oracle,idea原创 2023-11-05 16:51:25 · 103 阅读 · 0 评论 -
成员变量为动态数据时不可轻易使用
成员变量为动态数据时不可轻易使用原创 2023-11-04 23:24:22 · 681 阅读 · 0 评论 -
程序数据备份
程序备份,保留50个工作日原创 2023-04-05 11:53:54 · 188 阅读 · 0 评论 -
周记录总结1
oracle,mybatis原创 2023-04-05 11:35:28 · 295 阅读 · 1 评论 -
kafka推送及消费2
springboot项目集成kafka并进行生产及消费原创 2023-01-14 22:23:08 · 366 阅读 · 0 评论 -
list中parallelStream流慎用
list流常用原创 2022-07-23 21:42:42 · 1682 阅读 · 2 评论 -
Oracle常用语句
Oracle常用语句原创 2022-07-03 23:05:02 · 617 阅读 · 0 评论 -
Mybatis
Mybatis的常见问题原创 2022-07-03 23:06:14 · 288 阅读 · 0 评论 -
centos7安装kafka及简单使用
【启动kafka前,需要调整这个配置文件(/opt/kafka-2.1.0/config/server.properties)的一处ip地址】因为每次虚拟机的ip地址可能会有所不同,这和所在网络有关,也可将ip固定,这样不需要调整配置文件安装并使用centos7安装kafka1.解压2.修改配置文件3.创建启动文件4.启动文件赋予权限5.直接启动kafka的启动文件即可6.命令行简单测试安装kafka-tool客户端java程序调用生产者pom.xml文件引入依赖application.yml文件配置k原创 2022-03-27 17:20:58 · 2566 阅读 · 0 评论 -
Integer类型数据比较大小可以用==吗?
在开发的时候,使用==进行比较的时候,然后在自测的时候,发现==有时会出现问题。。。发现Integer有的数据比较有的对,有的错,于是想到了Integer类型的数据大小范围是-128~+127;于是细看,这个范围比较大小正好是对的!在看idea在"=="黄色部分,它就提示“Number objects are compared using '==', not 'equals()'”,"==",对于基本数据类型,比较的是它们的值。对于非基本类型,比较的是它们在内存中的存放地址,或者说是比较两原创 2022-01-13 21:37:10 · 1987 阅读 · 0 评论 -
springboot使用aop记录接口日志信息
之前写过一篇进行日志记录的文章springboot拦截器记录接口日志信息该文章是通过流进行获取请求数据,然后再将流的信息copy一份进行补充,因为流只能读取一次嘛!但是在此之前 我使用不是很好方式解决的,由于请求方式不固定及上送的参数有的是RequestParam,有的是RequestBody,所以使用的不同方式进行获取参数的直接上代码,拦截器package com.bigdata.bigdata.aop;import com.alibaba.fastjson.JSON;import..原创 2022-01-13 18:44:17 · 1034 阅读 · 0 评论 -
spring boot默认单线程如何破解?
spring boot默认是单线程的,当有多个定时需要跑的时候,他会等到上一个定时跑完再跑下一个定时,而下一个定时一直处于等待状态,若定时很多的话,严重会引起雪崩。。。由上面可以看到我有两个定时,但是用的是一个线程。方法一:添加@Async注解后发现不再是同一个线程,而是使用多个线程了。因为这个@Async注解,就相当于new Thread().start(); 所以可以看到现在是两个线程在跑。方法二:写一个ThreadPoolTaskScheduler注入到容器,则定时任务默认原创 2022-01-08 18:20:47 · 10943 阅读 · 0 评论 -
yyyy-MM-dd格式与YYYY-MM-dd格式的区别
SimpleDateFormat simpleDateFormat=new SimpleDateFormat("yyyy-MM-dd");SimpleDateFormat simpleDateFormat1=new SimpleDateFormat("YYYY-MM-dd");Calendar calendar=Calendar.getInstance();calendar.set(Calendar.YEAR,2021);calendar.set(Calendar.MONTH,11);calen.原创 2022-01-08 15:55:50 · 886 阅读 · 0 评论 -
比较String类型的数字大小
只有相同位数的字符串可以使用compareTo方法进行比较,否则需要将其转换为long/int/BigDecimal类型进行比较String mm1="100";String mm2="2";//输出结果:-1 (X)System.out.println(mm1.compareTo(mm2));原创 2022-01-08 15:39:29 · 9078 阅读 · 0 评论 -
java 模糊查询树
今天,终于有时间整理一下 最近的问题 一张表中存放父id及路径等字段,现在需要提供一个接口 支持模糊查询 将父信息及当前模糊的子信息查询出来。可能说起来复杂,话不多说,上代码创建表DROP TABLE IF EXISTS `organization`;CREATE TABLE `organization` ( `id` int(20) NOT NULL AUTO_INCREMENT COMMENT '自增主键id', `org_code` varchar(255) COLLAT...原创 2021-05-18 13:39:18 · 1064 阅读 · 4 评论 -
springboot整合redis后整合es,报错Failed to instantiate [org.elasticsearch.client.transport.TransportClient]
之前springboot项目整合了redis,现在整个es,启动项目后 发现报这个错误[ERROR]Failed to instantiate [org.elasticsearch.client.transport.TransportClient]: Factory method ‘elasticsearchClient’ threw exception; nested exception is java.lang.IllegalStateException: availableProcessors原创 2021-05-18 11:32:59 · 998 阅读 · 0 评论 -
threadpool导致CPU过高
近期 项目中的CPU占用很大,排查原因得知 线程太多导致的,因为代码是这样写的,几乎有10个接口都是这样调用的【threadPool.addTask()】,并且当时是高并发情况下执行的,一段时间之后,还是会导致CPU过高。具体原因尚不清楚,若是有前辈了解的,望指点一二。由于出现这个问题,我们便修改为使用 基于spring使用的异步。代码如下:import org.springframework.context.annotation.Bean;import org.springframewor原创 2021-05-07 11:21:22 · 2265 阅读 · 1 评论 -
springboot拦截器记录接口日志信息
继上一篇文章springboot 切点@Pointcut 过滤某个目录的类我又使用拦截器来记录日志信息。spring拦截器 一般有两种继承HandlerInterceptorAdapter 实现HandlerInterceptor一般用作日志记录和登录校验使用。主要有三种方法preHandle:拦截于请求刚进入时,进行判断,需要boolean返回值,如果返回true将继续执行,如果返回false,将不进行执行。一般用于登录校验。 postHandle:拦截于方法成功返回后,视图渲..原创 2021-04-22 16:06:33 · 2221 阅读 · 0 评论 -
springboot 切点@Pointcut 过滤某个目录的类
继上一篇 springboot日志切面与拦截器这里补充一点 切点是怎么写的@Pointcut("execution(public * com.bigdata.bigdata.controller..*(..))")切点 定义拦截的点 [ public * ] [ com.bigdata.bigdata.controller ] . .* (..) 公共部分 ...原创 2021-04-21 13:49:58 · 3493 阅读 · 0 评论 -
springboot添加本地jar包
有些第三方jar包需要在springboot项目中引用,并且通过maven进行打包部署。话不多说,开始干!1.将jar放在resources目录下2.在pom.xml文件中 引用该jar包 【${project.basedir}是系统自带的常量,直接使用即可】3.若是需要maven打包部署 还需要在pom.xml文件中添加一行大功告成!即可打包部署 !...原创 2021-04-18 22:00:55 · 309 阅读 · 0 评论 -
java freemarker 导出富文本到Word文档
最近一直在加班 导致看到代码就想吐 今天抽出时间来记录一下 用freemaker导出富文本信息之前使用freemaker导出图片等信息时 使用的是xml方式,不明白的 可以看freemaker生成Word文档(图片、超链接)由于xml方式 不识别<p><b>等这种HTML标签,所以只能使用mht方式来解决,话不多说 干起来!我是看到前辈的文章才 有所启发!1.准备好模板这里我要强调一下 模板里面插入图片时 不要使用插入->上传图片,这样会是超链接的形...原创 2021-04-14 12:17:21 · 13524 阅读 · 0 评论 -
MySQL 写SQL语句的几个习惯
1.设计表时 加注释及字段编码格式、排序规则及主键、创建时间、更新时间CREATE TABLE `attribution_home` (`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键id',`attribution_home` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL COMMENT '归属地',`create_time` datetime DEFAULT CURRENT_T...原创 2021-02-20 22:31:29 · 83 阅读 · 0 评论 -
系统A调用第三方系统B的jar包等 需要同步更新系统
近日,线上出现了一个问题,是通过调用第三方接口,由于第三方接口系统未升级,导致调用第三方接口失败,所以系统需要同时更新,或者做一下判断也可。禁止线上出现问题。后来又看到公众号java版web项目的帖子提及到,有两个系统 系统A和系统B,系统A提供了二方库的某一个接口的返回值中有一个参数类型是枚举类型。而B系统也依赖这个二方库,当系统A和系统B依赖的是同一个二方库时,那么不会出现一个问题,但是当系统A的二方库进行系统升级,而B系统未及时进行系统更新,导致调用A系统的枚举类型发生错误。...原创 2021-02-20 18:55:33 · 241 阅读 · 0 评论 -
api对外开放安全性验证:token,签名,时间戳
近日,对调用第三方接口的安全性调用进行了调整,于是对自己调用接口也进行了验证,看到公众号 程序员闪充包的文章,于是自己测试了一下。流程说一下:1.首先第一次登陆,服务器会返回token,服务器端对token进行验证;2.将调用接口的参数及token生成一个签名sign,作为请求头发给服务器,服务器端用同样方法生成sign对传送过来的sign进行验证;3.但这样会出现被无限制访问,于是再加一个时间戳的校验,sign是参数、token及时间戳生成sign,进行验证;4.服务端需要对toke.原创 2021-02-19 23:08:33 · 1852 阅读 · 0 评论 -
springboot中报这个错A bean with that name has already been defined in class path resource
记录一下这个错误D:\java\jdk8\bin\java.exe -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:63104,suspend=y,server=n -XX:TieredStopAtLevel=1 -noverify -Dspring.output.ansi.enabled=always -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=6310原创 2021-02-18 01:51:41 · 1419 阅读 · 0 评论 -
springboot接口限制访问次数
对接口访问次数的限制 是从java版web项目公众号中看到 于是百度结合自己现有项目写了一下首先需要定义一个注解import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;/** * @Auther: lirui * @Date: 2原创 2021-02-17 18:21:45 · 3723 阅读 · 1 评论 -
Lambda常用表达式
常用表达式:collect(Collectors.toList()) 将流转换为list。还有toSet(),toMap()等 filter 过滤筛选 max和min 在集合中求最大或最小值 count 统计,结合filter使用 import com.bigdata.bigdata.entity.User;import java.util.ArrayList;import java.util.Comparator;import java.util.List...原创 2021-02-17 17:00:28 · 203 阅读 · 0 评论 -
vue中el-select 选中后获取对象 value-key
近日原创 2021-02-10 23:10:46 · 6931 阅读 · 0 评论 -
vue前端懒加载--添加一个子节点 重新加载树
近日有个需求,需要用懒加载树来实现。同时,新增一个节点后需要重新刷新树的信息。懒加载树在饿了么官网就可以看到相应组件的使用,话不多说,上代码首先在最初懒加载树时 将node节点及resolve进行保存下来,然后在添加一个子机构后重新加载1、初始化树时 节点信息保存/////懒加载机构树loadNode: function (node, resolve) { var vue=this; if (node.level === 0) { var p = vue.$get('/orga原创 2021-02-09 00:00:49 · 2046 阅读 · 0 评论 -
RestTemplate添加拦截
近日 有一需求,需要将全部调用第三方接口的请求头调整一下,然而为了不修改之前接口调用,需要在restTemplate加一个拦截来执行。原创 2021-02-06 21:32:19 · 1350 阅读 · 0 评论 -
mysql查询语句
1.近日有需求是 查询用户表(user)信息倒叙排序,且对某几个用户信息优先显示在最上面下面是对 用户id为1和407优先显示在上面 倒叙排序select u.uid,u.name,u.login_number,u.mobile,u.email from user uorder by uid in(1,407)desc2.统计一张表中各个字段的 总条数【注意】case里面不可为0 因为select count(0) from bpmn_event_basic 条数为1 ...原创 2021-01-23 12:45:51 · 157 阅读 · 0 评论 -
vue 瀑布流组件的添加
近日,有个前端需求是 对下拉框数据不允许初始化全部数据,因为线上数据量是几千条 全部加载 影响用户体验,于是 项目经理提出,点击组件时再触发后台查询前10条数据,向下滑动加载10条,直到最后加载完成。话不多说,上代码load-select.vue组件<template> <el-select value-key="id" :value="value" v-loadmore="loadMore" @focus="focus" @cle原创 2021-01-18 00:26:11 · 255 阅读 · 0 评论