- 博客(223)
- 收藏
- 关注
原创 idea报错Malformed \uxxxx encoding.报错解决
突然报错Malformed \uxxxx encoding。idea点击红圈中的按钮,
2025-01-08 19:46:06
473
原创 spring事务管理,for循环删除数据时,如果有一条失败则回滚一条数据
场景:单个删除时,需要提示具体删除失败的原因;批量删除时,需要提示删除失败总数。单个删除A和批量删除B都调用同一个方法C,区别是单个删除时传入的业务id放到list中再调用删除方法,这样后续删除如果有改动只需要改删除方法C就行,不需要改动A和B。为了保持事务一致,需要在A和B方法上添加注解@Transactional。C方法上可以不添加。经过上述操作,可以在使用for循环删除数据时,如果有一条删除失败,会回滚失败的数据,并且不影响已经删除成功的数据和未删除的数据。
2024-10-09 17:29:04
423
原创 获取list中的数据使用多线程执行入库
以上就是对已获取到的list数据量很大时,先分割大小然后使用多线程入库,由于list中可能存在相同的数据,这时需要达到第一条数据新增,第二条数据更新的效果,使用了ReentrantLock,保证的数据的一致性。对比上述两种保证多线程数据一致性的方法,使用ReentrantLock的效率稍微高点。1.将list分割并用多线程处理。2.多线程实际执行的类。
2024-08-26 19:13:57
324
原创 springboot集成quartz实现配置化定时任务
注意,如果定时任务是只执行一次,配置cron表达式时指定到时分秒,此时定时任务会立即执行,如果定时任务是重复执行,比如每隔一小时执行一次,此时定时任务不会立即执行。注意,实现定时任务时第9步和第10步都需要,第10步是具体需要执行的业务逻辑,第9步是quartz执行定时任务的逻辑。4.在mysql8中执行sql生成记录定时任务和执行的表。quartz_job:保存需要执行的定时任务;quartz_log:保存定时任务执行的结果;10.定时任务执行类2。2.配置文件添加配置。9.定时任务执行类1。
2024-08-26 18:58:43
380
原创 在非spring项目中获取项目环境配置参数
3.外部项目引入SDK依赖后,需要在启动类添加注解@Import(SpringContextHolder.class)场景:部分接口需要包装成SDK对外暴露,SDK需要获取外部项目的配置文件来判断是否重试以及打印日志等情况。2.在SDK中获取外部项目中配置的是否开启日志参数,如果外部项目不配置该参数,默认不打印。通过上述操作,外部项目配置SDK所需参数后,SDK可以通过环境变量判断是否打印日志。1.在SDK中添加配置类SpringContextHolder。
2024-07-24 16:59:43
327
原创 PL/SQL执行.sql文件
2.打开plsql选择命令窗口,即选择File->New->Command Window;3.输入@然后按回车键,在弹出来的文件选择框中选择需要执行的.sql文件,最后点击打开。注意:一定记得最后一步,提交后,才能查询到更新后的数据。--更新表中所有人的年龄。
2024-02-27 15:30:30
3721
3
原创 Linux环境报错:OutOfMemoryError:Failed to create a thread
解决方案:1.查看内存空间是否够用,使用df -k命令查看内存空间使用情况,如果使用超过90%,需要清理下无用文件,然后重启项目;2.判断是否限制线程数,使用ulimit -u命令查看具体值,如果很低,可以使用ulimiet -u unlimited。3.通过使用-Xmx选项,降低java堆的大小来增加本机可用的内存量;
2023-12-06 14:10:10
676
原创 记录一次项目启动报异常CacheEcception:java.long.IOException:权限不够
经报错代码提示:发现是系统初始化的时候加载缓存信息报错,即,初始化的时候,加载根据常量类中的常量获取缓存失败。解决方案:查看Linux系统中的java配置,可能未配置java中的环境变量,配置后重新加载文件即可解决问题。
2023-09-18 11:12:46
228
原创 oracle提高执行更新或新增的SQL效率
在使用oracle数据库的过程中,有时候会需要批量更新或者新增数万条数据。如果本身表中的数据就很大,这时候执行SQL速度会很慢。为了提高执行效率,可以使用并发。/*parallel(4)*/中的4代表并发数,可以修改为5甚至更多或者更少。
2023-09-14 09:15:25
818
原创 oracle获取字段值的长度
2.使用lengthb获取的是字节的长度,即,字母a是一个字符,返回的长度是1,汉字“我”在UTF-8编码中是3个字符,返回的长度是3。1.使用length方法获取的是字符的长度,即,不管是一个字母a还是数字1还是汉字“我”,使用该方法查询的时候返回的长度都是1。
2023-08-07 08:48:02
4185
原创 oracle使用命令导入导出文件
例:imp user/123456@10.10.10.10/testdb file=/opt/app/springcloud/sys_user.dmp. tables=sys_user buffer = 50000 commit=y ignore=y log=sys_user.log。例:exp user/123456@10.10.10.10/testdb file=/opt/app/springcloud/sys_user.dmp. tables=sys_user。
2023-06-19 15:18:26
849
原创 NoSuchMethodError: com.baomidou.mybatisplus.core.MybatisConfiguration.getLanguageDriver
mybatis的jar包冲突
2022-06-10 16:53:25
755
原创 Java使用反射获取类的属性
获取类对应的所有的属性Field[] fields = 类名.getDeclaredFields();for(Field field:fields){field.setAccessible(true);//允许通过反射访问该字段}
2022-04-14 15:14:58
585
原创 mysql主表一条数据对应从表多条数据需要只显示一条
场景,在关联表查询时,主表的一条数据查询时对应了从表中的多条数据,但是需求要求只显示主表对应的一条从表数据。解决方案:在查询最后加上GROUP BY去重原来的SQL:select * from a left join b on a.id = b.aid修改后的SQL:select * from a left join b on a.id = b.aid group by a.id去重成功!...
2022-03-30 11:24:40
5189
4
原创 activiti中提交报错${its} didn`t resolve a Collection
出现这个报错的场景有多种,根据不同情况有不同处理。1.给变量赋值的时候赋的不是集合是数组,这时候需要把数组转换成集合后再赋值;2.给变量赋值的对象是集合,但是集合是空的,这时候需要判断集合是否为空,如果为空则不赋值,如果不为空,再赋值。...
2022-03-30 09:40:02
1560
原创 mybatis判断集合非空
List<xx> getList(@Param("list")List<String> list); <select id="getList" resultType="xx"> select * from t_xx where 1=1 <if test="list != null and list.size() > 0 "> and xxxx in <foreach...
2022-02-25 10:41:28
3871
原创 快速判断list是否为空
List<String> list = new ArrayList(); list.add("1"); if(CollectionUtil.isNotEmpty()){ System.out.print(list); }
2022-02-11 09:58:53
746
原创 使用Objects判断对象是否为空,并返回对应信息
Student stu =studentMapper.selectById(1); Objects.requireNonNull(stu,"该学生信息不存在");
2022-02-11 09:39:24
331
原创 activiti候选人的多个场景应用
1.如果配置多个候选人后,该节点不是多实例节点,那么候选人任何一个完成后该任务都会消失; 图1.1请求接口:2.如果配置多个候选人后,该节点是多实例节点,那么候选人必须都处理后该任务才会消失。 图2.1 ...
2022-01-21 11:30:59
687
原创 activiti实现跳转节点的方法
1.通过代码实现,即获取到当前节点,然后退回到已走过的指定节点。代码如下: @RequestMapping("/returnNode") public String returnNode(String taskId) { // 取得当前任务.当前任务节点 HistoricTaskInstance currTask = historyService.createHistoricTaskInstanceQuery().taskId(taskId).single
2021-10-09 16:18:28
3039
原创 activiti配置实现用户多实例
1.在BPMN文件中的设置如下1.11.22.在完成five节点时,设置后面节点和线路所需的参数,代码如下: @RequestMapping("/completeTwo")public String completeTwo(String taskId, Integer one, Integer two, Integer three,@RequestParam(value = "list" ,required=false) List<String> lis..
2021-10-09 09:55:45
577
原创 activiti入门的一些简单方法
package com.it.springboot_activiti.controller;import org.activiti.engine.RepositoryService;import org.activiti.engine.RuntimeService;import org.activiti.engine.TaskService;import org.activiti.engine.repository.Deployment;import org.activiti.en...
2021-10-08 15:54:02
109
原创 关于activiti中的三类网关
1.排他网关:可以单独使用,使用后多个线路只走一条;如上图,执行到排他网关市,流程可能退回到one节点,也可能结束,这个是根据two节点提交的判断条件决定。2.并行网关:可以单独使用,使用后必须多个条件都满足才可以往下走;如上图,two节点和three节点都完成后才能到达并行网关然后生成four节点的任务。3.包含网关:必须成对使用,使用后有一个条件符合就可以往下走。如上图,包含网关是成对出现的,如果只出现一个是不生效的,上图并行的三条线只要有一条被满足都可以往...
2021-10-08 15:45:43
1595
原创 Java报错InvalidDefinitionExceptio
场景:springcloud+seata微服务之间调用传参数时出现这个错误。A服务有上传文件的功能,B服务需要调用A服务的上传文件接口,A和B之间有共同的父类引用C。在C中di
2021-06-17 10:01:48
382
原创 jpa报错No property found for column ‘first_time‘ mapped to field ‘first_time‘
如题所示,数据库设置的字段名和实体类中设置的列名一模一样,另外数据库中字段属性和实体类中字段属性也是一样,但是报错。数据库:实体类:观察数据库和实体类中的红圈,也没找打差别。最后多次观察发现实体类中列名前面有个空格,导致实体类和数据库字段对不上,把空格去掉,问题解决了。正确的实体类属性如下:...
2021-02-26 11:54:46
446
原创 java实现接收字符串对象并在后台代码中转成list对象
代码如下: @PostMapping("/submitTest")public Result submitTest(@NotBlank String params) { try { List<TUserAnswer> userAnswers = JSONArray.parseArray(params, TUserAnswer.class); return Result.ok(map); } catch
2021-02-25 16:36:23
1053
原创 mybatis-plus设置查询返回的类型是map
1.在mapper.java文件中 List<Map<String, Object>> getPaperList(String dwmc); 2.在mapper.xml文件中 <select id="getPaperList" resultType="java.util.Map"> SELECT p.`id`, c.`company` companyName, p.`paper_num` paperNum
2021-02-25 09:31:28
3019
1
原创 spring boot+jpa+MySQL格式化返回数据中实体对象对应的日期格式
在controller中设置返回参数中的日期格式有三种:1.在配置文件application.yml中设置整个项目关于日期的格式: spring: jackson: time-zone:GMT+8 date-format: yyyy-MM-dd 这样设置后,项目中所有关于日期的参数除非特定设置,都会按照yyyy-MM-dd格式返回2.在controller中设置返回参数的格式: public static ...
2021-02-25 08:48:42
1736
2
原创 springboot使用EntityManager执行自定义SQL
1.在代码中注入 EntityManager import javax.persistence.EntityManager;@AutowiredEntityManager entityManager; 2.在方法中具体使用EntityManager public List<DefColumn> findAllColumns(String table) { Query query = entityManager.createNativeQue.
2021-02-19 16:07:49
3067
3
原创 spring boot实现druid监控功能
1.在配置文件中配置数据库连接池(使用的spring boot自带的数据库连接池,不需要在pom中添加别的数据库连接池的依赖) spring: main: allow-bean-definition-overriding: true datasource: url: jdbc:mysql://localhost:3306/car?autoReconnect=false&useUnicode=true&characterEncoding=utf8&a
2021-02-02 15:33:09
296
原创 MySQL查询连接数
1.查看连接的客户端的链接数selectclient_ip,count(client_ip)asclient_numfrom(selectsubstring_index(host,':',1)asclient_ipfrominformation_schema.processlist )asconnect_infogroupbyclient_iporderbyclient_numdesc; 2.查看正在执行的进程select*frominformati...
2021-02-02 09:11:18
651
原创 Java实现提现到微信的功能
1.添加依赖 <dependency> <groupId>com.github.wxpay</groupId> <artifactId>WXPay-SDK-Java</artifactId> <version>0.0.4</version></dependency> 2.配置参数3.实现方法 @ApiOperation(value = "企业.
2020-12-08 16:08:17
4553
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人