- 博客(42)
- 收藏
- 关注
原创 JAVA并发编程的艺术-读书笔记
1、并发编程的挑战多线程并不一定能带来性能提升,相反过多的线程导致线程创建和上下文切换有时会比单线程性能更低无锁并发编程:根据数据id进行取模,不同的线程处理不同段的数据死锁:资源互相等待,线程因为一些异常没有释放锁避免死锁:避免一个线程同时获取多个锁、lock.tryLock(timeOut)、避免一个线程在锁内获取多个资源、数据库加解锁必须在同一个数据库连接里2、java并发机制的底层实现原理volatile:volatile是轻量级的sychronized,使用恰当的话他比sy
2022-01-29 21:37:31 1125
原创 Redis深度历险-读书笔记
Redis基础数据结构String可以用来缓存json转换后的用户信息mset mget进行批量操作减少网络开销list相当于java中的linkedList,插入和删除非常快O(1),但是查询慢O(n),常用作异步队列,底层有quickList结构,因为普通的linkedList每个元素都需要两个指针prev/next,增加了内存碎片和内存空间,所以使用了由连续zipList组合起来形成quickListhash相当于hashMap,数组+链表,当hash过大时,使用渐进式
2022-01-29 21:36:54 1373
原创 Redis设计与实现-读书笔记
一:数据结构和对象SDS:动态字符串 包含len free bufSDS可以用作AOF缓冲区、客户端状态的输入缓冲区len:记录buf数组中已使用字节的数量,等于SDS字符串长度free:记录buf数组中未使用字节的数量buf:保存字符串结尾\0,遵循了C字符串的惯例,目的是为了重用部分C字符串的函数对于C字符串,本身不存储字符串长度,m获取长度需要遍历字符串,复杂度O(n),而访问len属性,复杂度O(1)杜绝缓冲区溢出:SDS需要修改时,会先检查长度,如果不满足则会扩
2022-01-20 19:52:43 969
原创 httpclient连接池
package com.junbo.salecard.service.yunxin.impl;import com.winnerlook.service.https.MyVerifyHostname;import com.winnerlook.service.https.MyX509TrustManager;import org.apache.commons.lang3.concurrent.BasicThreadFactory;import org.apache.http.HttpEntity.
2022-01-15 21:53:33 1072
原创 seata1.4.2异常:feign远程调用时,服务提供方全局事务未生效(不回滚)
https://note.youdao.com/s/P9mL0BKi
2021-08-21 16:14:17 3260
原创 eureka nacos 多注册中心时ribbon报错
2021-08-20 21:56:14.012 ERROR 221336 --- [nio-8081-exec-1] o.a.c.c.C.[.[.[/].[dispatcherServlet] : Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Handler dispatch failed; nested exception is java.lang.Abstract..
2021-08-20 22:00:22 477 1
原创 shardingjdbc踩坑记录
1.数据源和druid数据源冲突在改造公司日志服务时,原来的数据源配置是druid连接池,在加上shardingjdbc的数据源后,无法走sharding分表配置,会报table xxx doesn't exist错误。解决:将启动类的@SpringBootApplication加上(exclude = {DruidDataSourceAutoConfigure.class})...
2021-05-13 16:53:43 3669
原创 sharding jdbc3.x+mybatis plus实现根据年月分库分表功能
需求场景:日志量过大,需要进行按年月份分表存储,用定时任务每月动态创建下个月的表,目前只是分表,单库性能不足时可以考虑分库,读写分离。1.导入依赖<!--mysql--><dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope>runtime</scope>&
2021-05-12 14:45:33 954 2
原创 SpringBoot实现定时任务的三种方式
主要有三种方式1.注解(@Scheduled)2.接口(SchedulingConfigurer)使用场景:从数据库读取指定时间动态执行定时任务3.基于注解设定多线程定时任务1.注解实现@Service@Slf4j@EnableSchedulingpublic class ScheduleService {/** * 基于注解的定时任务 */ //隔两秒执行一次// @Scheduled(fixedRate = 2000) @Scheduled(
2021-01-05 22:54:41 239 1
原创 Spring事务 笔记
1、事务传播机制2、事务隔离机制3、只读4、事务超时5、回滚规则Spring事务传播机制事务的特性:A原子性:要么全部成功,要么全部失败C一致性:一旦事务完成,就必须保证业务处于一致的状态,不能部分成功部分失败,确保完整性I隔离性:很多事务处理相同数据时,应该隔离开,防止数据被破坏D永久性:一旦事务完成,就会被永久保存到数据库,及时系统损坏,也不会丢失数据...
2020-03-18 00:00:16 116
原创 solr安装配置
安装:解压solr-4.10.3.zip1. 把D:\Tomcat\solr\solr-4.10.3\example\webapps目录下的solr.war 部署到tomcat(tomcat要启动),然后删除solr.war文件(关掉tomcat再删除)2. 把D:\Tomcat\solr\solr-4.10.3\example\lib\ext 之下的.jar复制到 D:\To...
2019-08-23 09:52:46 111
原创 springboot中通过zuul访问资源出错(由wifi共享引发的大坑)
前端页面:Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.Thu Aug 22 09:36:01 CST 2019There was an unexpected error (type=Internal Ser...
2019-08-22 09:46:34 518
原创 spring boot 访问controller报错:视图解析异常
控制台:would dispatch back to the current handler URL [/findAllNews] again. Check your ViewResolver setup!页面:Circular view path [findAllNews]: would dispatch back to the current handler URL [/findAllNe...
2019-08-13 20:33:44 595
原创 springboot + thymleaf 日期格式转换问题
需要一个converter类 + 前端格式转换表达式DateConverter:import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import org.springframework.core.convert.converter.Converter;...
2019-07-31 21:33:21 186
原创 springboot + thymleaf + js 实现批量删除 (controller获得checkbox数据)
思路:checkbox选中的id以String数组形式发送给controller,controller获得数组元素调用service进行数据操作前端:checkbox和actioncontroller: 获得前端传来的String数组@RequestMapping("/deleteItems") public String deleteItems(String[...
2019-07-31 21:24:17 1975 3
原创 springBoot分页查询
1.pom.xml添加pageHelper启动器<!--pagehelper --> <dependency> <groupId>com.github.pagehelper</groupId> <artifactId>pagehelper-spring-boot-starter</artifactId>...
2019-07-31 15:55:13 290
原创 springBoot和Mybatis整合,文件配置
1、pom.xml配置所需启动器:<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.1.0.RELEASE</versio...
2019-07-31 15:44:31 95
转载 springboot报错 attribute [items] does not accept any expressions
exception : /WEB-INF/jsp/list.jsp (line: [29], column: [24]) According to TLD or attribute directive in tag file, attribute [items] does not accept any expressions是jsp出现了问题将 <%@taglib uri...
2019-07-30 19:49:24 151
原创 Maven 安装并在sping tool suit (sts)中配置
Maven的主要作用,就是对模块化开发的支持,例如,开发人员的A机器上可以只有工程A,开发人员的B机器上只有工程B,其中工程B依赖工程A,只要工程A已经deploy(部署)到了远程仓库(私服),那么工程B就可以在本地构建,不需要有工程A的代码。也就是说,每个开发人员本地,都只需要check out自己负责的工程。Maven提供了一种思想让团队更科学的管理、构建项目。用配置文...
2019-07-30 12:46:47 181
原创 activiti (根据当前任务节点)动态生成出口按钮
应用场景:由于流程各节点的出口各不相同,需要在前端动态显示该流程的出口按钮。思路:在service层通过activiti的方法获得流程节点的出口名字,放到集合中返回controller层,在通过modeAndView展示到前端页面WorkflowServiceImpl:负责获取所有出口的name// 根据taskId查找当前任务出口 @Override public ...
2019-07-26 12:22:13 1256 1
原创 ssm+activiti+shiro OA项目登录模块
包含流程图+各个模块代码+配置文件+jar包流程图EmployeeController 中的方法:// 登录校验 @RequestMapping("/login") public String main(Model model, HttpServletRequest request) throws Exception { // 从request域获得customReal...
2019-07-24 11:12:17 870 1
原创 shiro整合ssm框架报错: No bean named 'shiroFilter' is defined
百度了许久,一开始以为是tomcat的问题,因为在webapps下没看到项目,重新移除项目设置了tomcat的deploy path后重启还是没有解决然后发现是配置文件路径写错了:修改后...
2019-07-19 20:30:43 328
原创 activiti和ssm整合
首先导入jar包activiti+spring包链接:https://pan.baidu.com/s/1XC93_YdRg85dbgZIeGekOQ提取码:nrp0ssm_all包链接:https://pan.baidu.com/s/1gyKeZfun5vUINDmBljugWQ提取码:n5tn右击项目名:然后next创建完jar包文件夹后,...
2019-07-18 20:23:34 301
原创 activiti报错: Duplicate entry 'leaveProcess:3:9204-leaveProcess.30' for key 'ACT_UNIQ_RU_B
ACT_UNIQ_RU_B中的只是唯一的不可重复,这句错误的意思是导入该表的数据出现了重复第一种原因在applicationContext.xml中的配置:第二种是我自己的代码错误。。。检查代码发现启动流程的代码跑了两遍,所以产生了两次key导致插入数据失败...
2019-07-17 21:12:21 1006
原创 activiti流程节点变量的设置与获取
变量传递有三种方法:1.手动设置2.表达式3.监听程序1.手动设置变量同理获取变量的方法:2.表达式传递变量(流程启动时传递)3.监听程序:然后在bpmn的properties中设置listener然后将bpmn文件和png文件复制并且压缩成.zip文件部署流程,启动流程实例,刷新act_ru_task表中即可发现...
2019-07-15 20:58:50 3429 1
原创 activiti流程实例操作(部署流程、启动流程实例、查询个人任务、流程推进/结束、查看流程状态、查看历史任务、查看历史流程实例)
在config下创建diagram的文件,新建activiti diagram命名为HelloworldProcess,然后自己画流程图流程图配置:切记要在main config下配置文件的assignee!!!部署流程:ProcessEngine processEngine = ProcessEngines.getDefaultProcessEngine(...
2019-07-15 20:02:19 675
原创 activiti 安装JBPM插件以及流程数据库
1. 下载解压Activiti Designer.zip链接:https://pan.baidu.com/s/1fJU33yzspQadbROIh6YH9w提取码:mm0r2. jar目录中的 jar包复制到Eclipse安装目录中的plugin目录中3. 在eclipse中使用activiti-designer-5.14.1.zip 归档文件安装插件...
2019-07-15 19:12:19 245
原创 springMVC注解优化
1 、用:<mvc:annotation-driven/>代替下面两行: <!-- 读取注解 --> <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> <bean class="org.springf...
2019-07-04 20:56:06 124
原创 springMVC 使用超链接和ajax请求返回json数据
springMVC可以使用@ResponseBody注解对json解析配置文件:<!--在springMVC.xml 处理请求返回json字符串的乱码问题 --> <mvc:annotation-driven> <mvc:message-converters> <bean class="org.sprin...
2019-07-04 20:45:04 483
原创 springMVC进行文件上传、多文件上传、配置文件
配置文件放在springMVC.xml中<!-- 文件上传: 配置multipartResolver --> <bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver"> <property...
2019-07-04 20:03:05 174
原创 springMVC数据校验:处理日期转换问题
1 需要joda-time-2.4.jar支持2 在获得日期的方法上使用@DateTimeFormat注解
2019-07-04 19:48:23 650
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人