- 博客(548)
- 资源 (113)
- 收藏
- 关注

原创 Mybatis源码解析,运行原理以及面试要点
1、获取数据库源DataSource2、主要是层级结构里面的调用过程3、如何获取SQL语句的4、获取DDL ,执行SQL语句解析Mappers有几种方式,官网上主要是四种:源码里面是:解析mapper里面的数值参数:获取SQL的过程代码的流程主要是以下流程:6、主要是怎么样执行SQL的过程Mybatis 有...
2019-12-05 20:34:15
145
原创 实际工作场景中数据数初步清洗逻辑使用数据过滤系列-Aviator表达式过滤主要讲解实现主页,配置数据过滤规则有什么用怎么用
前言:目前我们业务场景是每分钟可以入库数据60000+数据,这些数据,很多都是毫无价值的数据,那么进一步就需要我们进行数据的清洗,目前在这里我只讲解我们初步的过滤阶段后续的清洗后续课程看时间,等我整理好了有时间了就再来加更!其实可以通诺JDK的自带的方法或者正则表达式进行过滤数据,可是实际的业务需求是可以自配的,也就是说可以动态的进行配置,不断地修改规则,进行满足业务需求。那么在技术实现上,最开始的是使用JDK的过滤开发实现的,效率也还可以,但是随着入库数据的不断增加,业务需要更为复杂的规则进行过滤,j
2021-01-16 01:30:26
72
1
原创 【java工具类】去除HTML的标签的java代码如下:
java工具类:去除HTML的标签的java代码如下:public class HtmlFilterTagUtils { private static final int subLength = 200; //截取字符串长度 private static final String regEx_script = "<script[^>]*?>[\\s\\S]*?<\\/script>";// 定义script的正则表达式 priva..
2021-01-15 14:36:47
52
原创 sql查询一个字段多列值合并为一列sql 多列合并成一列查询多列合并一列,group by合并一列查询,多列数据
1、针对1对多,查询合并多列的情况场景解决方案:SELECT t.news_id, t.sentiment_label AS '情感', ( CASE WHEN t.sentiment_label=1then '负面'WHEN t.sentiment_label=2then '中性'ELSE '正面'END) as '情感描述'FROM tbm_popular_feelings tWHERE t.sentiment_label IS NOT NULLAND
2021-01-14 14:20:03
41
原创 Mysql 执行效率 REGEXP 与 % 查询效率 比较 mysql 查询 中文,模糊查询中文标题进行效率对比结果显示%执行较为快一些,EXPLAIN监控的时间是一样的
1、查询语句如下EXPLAIN SELECT t.* from tbm_news_processing t where t.title like '%测试%' ;EXPLAIN SELECT t.* from tbm_news_processing t where t.title regexp '.*测试.*' ;SELECT t.* from tbm_news_processing t where t
2021-01-13 11:17:35
32
原创 LocalDateTime 计算前一天后天的java方法 2021-01-13 00:00:00 - 2021-01-13 23:59:59 模拟计算当天日期
public LocalDateTime plusSeconds(long seconds) { return plusWithOverflow(date, 0, 0, seconds, 0, 1);}2021-01-13 00:00:00 - 2021-01-13 23:59:59if (searchVo.getUpdateTimeEnd() != null) { qw.le("update_time", DateUtil.parse(searchVo.getUpdat..
2021-01-13 09:41:17
133
原创 MySQL 统计 查询 比值年终统计多表比值查询SQL,多表统计算出多个总数的比值
背景介绍:主要使用功能是年终了,需要多表进行查询,关联上查询统计出数据,然后进行数据的比值进行查询SQL。1、贡献率 单源公开量 / 总公开量对应的SQL示例,需要俩个表分别统计出来数据,然后进行关联出来获取这个比值。然后才可以达到效果!SELECT ds.ds_code, ds.ds_source_name, ds.ds_news_columns, a.`单源公开量`, b.`总公开量`, CASEWHEN a.`单源公开量` / b.`总公开量` IS N...
2021-01-08 17:18:26
48
2
原创 QueryWrapper.in几种查询方式QueryWrapper.in查询不准优化结果,如何使用QueryWrapper.in的SQL查询几种方式讲解
QueryWrapper查询方式案例in参考下面红色标注字段,其他查询参考下面public List<String> getNextNewsIdList(NewsSearchVo searchVo) throws ParseException { QueryWrapper<TbmNewsProcessing> qw = new QueryWrapper<>();if (searchVo.getCreateDate() != nu...
2021-01-08 14:47:15
673
2
原创 过滤aviator正则表达式规则aviator自定义正则表达式
1、自定义的表达式配置案例 patternfunction('李克强:抢到桥店强调我们要做好今天','title') 2、自定义AviatorObject实现的依赖配置 <!-- https://mvnrepository.com/artifact/com.googlecode.aviator/aviator --><dependency> <groupId>com.googlecode.aviator</groupId> ..
2021-01-08 09:57:45
59
原创 Incorrect table definition; there can be only one auto column and it must be defined as a key 解决办法
. ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___/=/_/_/_/:: Sp...
2021-01-07 20:45:33
17
原创 Specified key was too long; max key length is 767 bytes [Failed SQL: CREATE INDEX
1、liquibase 异常: . ____ _ __ _ _/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \\\/ ___)| |_)| | | | | || (_| | ) ) ) ) ' |____| .__|_| |_|_| |_\__, | / / / /=========|_|==============|___...
2021-01-07 20:38:26
26
原创 Mysql一些表结构字段是数据库关键字需要避开,如果发现了就需要解决
数据库关键字链接需要避开,如果发现了就需要解决https://dev.mysql.com/doc/refman/5.7/en/keywords.html2.解决办法:在字段前面`主要解决Sring集成的Mybatis插件查询,分库分表有问题导致查询异常...
2021-01-07 14:46:42
9
原创 强制登出所有用户,每次升级之前强制用户重新登录No SecurityManager accessible to the calling code, either bound to the org.ap
异常信息:2021-01-07 09:39:16.299|ERROR|main|212|c.h.j.rpc.t2.util.ServiceDefinitionUtil :解析接口方法异常: method:queryTagsByCategory2021-01-07 09:39:16.332|ERROR|main|212|c.h.j.rpc.t2.util.ServiceDefinitionUtil :解析接口方法异常: method:queryTagsByTagValue2021-01-07 09:
2021-01-07 09:43:16
77
原创 List中文进行排序
List<TbmDictVo> codeList = dService.tbmDictQuery(condition);if (SysConfig.DICT_CODE.equals(code)) { Comparator comparator = Collator.getInstance(Locale.CHINA); Collections.sort(codeList, new Comparator<TbmDictVo>() { @Ove...
2021-01-05 15:26:20
9
原创 怎么查询Mysql的数据库字段是不是AUTO_INCREMENT,查询主键是不是自增,怎么查询id是不是自增
1、查询办法:执行一句SQL:SHOW CREATE TABLE `tbm`.`tbm_news_view_config`;2.针对创建表的语句查询结果: `id` int(11) NOT NULL AUTO_INCREMENT, 可以确定是自增的!CREATE TABLE `tbm_news_view_config` ( `id` int(11) NOT NULL AUTO_INCREMENT, `column_name` varchar(100) DEF...
2020-12-29 14:43:26
47
原创 写博客 的根本原因你都忘记了
写博客 的根本原因你都忘记了写博客的初衷应该是1. 整理自己的知识体系2. 记录自己遇到的问题3. 找出自己的不足4. 提升自己
2020-12-22 10:54:56
22
原创 nested exception is java.sql.SQLException: Incorrect string value: ‘\xF0\x9F\x91\x89: ...‘ 解决办法,表情格式
报错信息:org.springframework.jdbc.UncategorizedSQLException: ### Error updating database. Cause: java.sql.SQLException: Incorrect string value: '\xF0\x9F\x91\x89: ...' for column 'summary' at row 1 ### The error may involve com.dao.mapper.middleground.TbmNew
2020-12-21 10:56:01
35
原创 【java工具类】Mapper配置正则匹配的SQL写法
SELECTtag_id,handler_timeFROMtbm_synonyms AS s1<where> <if test="categoryId != null and categoryId !=''"> AND s1.category_id REGEXP CONCAT('^',#{categoryId},'.*') </if> <if test="keyWord != null and keyWord !='.
2020-12-17 15:19:15
36
原创 Caused by: java.lang.OutOfMemoryError: Compressed class space 什么问题
2020-12-17 09:46:47.413 [http-nio-8080-exec-91] ERROR o.gil.three.admin.exception.GlobalExceptionHandler -未知异常org.springframework.web.util.NestedServletException: Handler dispatch failed; nested exception is java.lang.OutOfMemoryError: Compressed class sp
2020-12-17 13:51:54
76
原创 java正则匹配特别慢怎么优化,正则的替换方案,比正则更好用的方法java处理方案
1、场景描述:正则匹配的代码如下,效率极其低下,居然能够耗时3分钟。 Instant startTimeMark = Instant.now(); if (title.contains("申请医疗器械注册获受理") || title.contains("申报医疗器械注册获受理") || title.contains("申报医疗器械注册证变更获受理") || content.contains("申请医疗器械注册获受理") || co
2020-12-14 20:31:55
91
原创 难得一见的数据库事务异常 Deadlock found when trying to get lock解决办法dao.DeadlockLoserDataAccessException怎么办
{"type":"5","info":["","","","","2020-12-14 15:26:53.622","tbm-compose-provider","10.6.11.98","1","","","com.gildata.threebody.tbm.api.facade.PopularFeelingsFacade.saveBatch","jres-svr",""],"myPackage":{"error_no":"-1","error_info":" ### Error updating dat
2020-12-14 15:42:44
157
原创 liquibase 重命名表字段名称的配置说明
<changeSet id="201911121718" author="zy"> <renameColumn tableName="tbm_processing" oldColumnName="range" newColumnName="range_base" columnDataType="int"/></changeSet>
2020-12-13 14:14:24
143
原创 Mysql添加一列默认值0
ALTER TABLE usrQYBMB ADD identified TINYINT DEFAULT 0 NULL COMMENT '一键打标标志位1,默认0'
2020-12-11 21:12:20
119
原创 AviatorFunction局限性Expression .getName 获取表达式名称是无法获取到的Aviator的局限性
Aviator getNameAviatorEvaluator.compile(expression) 这个断点可以看到目前运行的表达式
2020-12-10 10:05:19
83
2
原创 怎么知道运行MySQL的时长,经常优化需要知道的Mysql的优化技巧
SELECT * FROM tbm_news_dup_filter WHERE dup_news_id ='1181776898656';show profiles;explain SELECT * FROM tbm_news_dup_filter WHERE dup_news_id ='1181776898656';
2020-12-09 22:59:31
24
原创 windows系统批量的变更名称,根据生成的MD5码值来命名的脚本
#!/bin/bashfor file in $(find ./* -iname "*.*" ! -name '*.sh')do base=`md5sum $file | awk '{print $1}'` if [ ! ${base} ] then exit 113 fi mv ./$file ./${base}.${file##*.} done
2020-12-09 18:22:09
29
原创 使用 SpringAOP和SpringIOC一个bean调用另一个bean耗时超过1分钟什么情况?获取一次请求流经方法的调用次数和调用耗时
前言描述:在一个Service的实现类里面,声明另一个bean如下:@Autowiredprivate NewsProcessingVo2NewsBusVo newsProcessingVo2NewsBusVo;然后添加日期时长监控:如图所示使用了JDK8版本的监控时长程序:Instant endTimeMark = Instant.now();Long period = Duration.between(startTimeMark, endTimeMark).toM.
2020-12-09 13:51:44
20
原创 @Transactional(rollbackFor = Exception.class) 在跨库的时候不能随便的添加注解
对于事务处理总喜欢添加注解,@Transactional(rollbackFor = Exception.class)管理一个事务,但是这个在跨库的时候会导致把跨库的操作,因为作为一个事务进行操作,导致指向同一个库,会导致问题的。导致该库的表不存在,这个要注意!...
2020-12-08 15:42:13
33
原创 SpringBoot项目怎么单元测试
1、最好写一个单元测试的实体类--作为基类@SpringBootTest(classes = { ApplicationTest.class })@ImportResource({"classpath*:spring/*.xml"})@ContextConfiguration({"classpath*:/*.properties"})public class BaseTest extends AbstractTestNGSpringContextTests { @Test pub
2020-12-08 14:44:14
145
原创 不能随便的调用mybatisplus的update(对象)会导致全部进行更新,如果调用要小心设置DTO的参数进行避免null更新
前言:今天业务那边发现调用只修改所属项目的单参数接口导致的一条数据里面的其他条数据进行清空了,导致下游获取不到数据,我查了查代码,一眼就发现有问题。问题场景:1、主要是调用了Mybatis的自带的update参数方法,这个是全量的更新类的参数,场景复现:同时写的代码: @Override public void updateByNewsId(TbmNewsProcessing tbmNewsProcessing) { LambdaQueryWrapper<
2020-12-08 13:57:00
58
1
原创 Java中正则匹配文本的效率不及String的自带方法String.indexOf(““) > 0效率高,解决怎么样匹配文字字符串的判断方法
业务办理的时候发现正则的匹配效率极其低下,耗时居然要1分钟,而jdk的String的index这个类居然耗时只有100分之一,至于具体的区别如下具体的代码逻辑如下:1、正则匹配耗时监控 //10、资讯主表、快讯表当【新闻来源】和【媒体出处】不等于 新华网/新华社/新华每日电讯/中国金融信息网/中国金融信息网(微博)/国家财经周刊/新华视点 时, // 内容里包含新华网/新华社/新华每日电讯/中国金融信息网/中国金融信息网(微博)/国家财经周刊/新华视点 时, /
2020-12-04 11:18:58
63
原创 数据过滤系列-Aviator表达式过滤+java实现总结篇,实际工作中过滤资讯案例展示
1、接口展示背景是,过滤抓取的资讯信息,通过四个维度进行过滤,过滤规则配置在表达式里面,通过抓取之后统一的表达式过滤入口,然后筛选数据入库!不符合的数据进行删除处理!"expressionList": [ "anyequalslist('$DSCODE$','#DSCODE20201124#')" ],------>匹配的表达式"expression": null,"resultFlag": true,"resultDesc": "无匹配关键字 标题不含主体(JDK).
2020-12-03 11:18:21
66
原创 诡异的一件事情,static的Map其他类调用为null
/*** * 优化不查询数据库本地缓存 */private final Map<Long, String> hwNewsTypeMap = ContantData.getHwNewsTypeMap();这样获取是直接为null,很诡异;
2020-11-21 15:25:03
44
原创 标题不符合正则表达式且标题符合正则表达式 * NOT (title REGEXP ‘政府补助‘ AND title NOT REGEXP ‘公告$‘)
标题,正则匹配标题 ,正则不匹配标题 同时满足主要要求是:* 标题不符合正则表达式或标题符合正则表达式* NOT (title REGEXP '政府补助' AND title NOT REGEXP '公告$')import com.googlecode.aviator.AviatorEvaluator;import com.googlecode.aviator.Expression;import com.googlecode.aviator.runtime.function.Abstra
2020-11-20 17:07:47
67
原创 主要实现一个上传Excel读取数据的Controller的实现java的代码逻辑
1、代码实现前端上传Excel文件的一个功能模块 @RequestMapping(value = "/uploadexcel", method = RequestMethod.POST) public CorResponse uploadExcel(@RequestParam("file") MultipartFile file, @RequestParam String eventCode) throws Exception { CorResponse response
2020-11-16 09:35:19
53
原创 效率性能测试-查找和替换的真是效率进行对比
<dependency><groupId>org.ahocorasick</groupId><artifactId>ahocorasick</artifactId><version>0.4.0</version></dependency>引入工具类:<dependency> <groupId>org.ahocorasick</groupId>.
2020-11-11 10:50:38
28
原创 系统上线前统计表字段以及表注释作为上线校对验证语句
1、经常使用的统计语句:MYSQLselect COLUMN_NAME,column_comment from INFORMATION_SCHEMA.Columns where table_name='popular' and table_schema="数据库名称";
2020-11-10 15:01:05
23
原创 优化自定义的Exception的日志打印,设置自定义使用的ApiException extends Exception日志打印不刷出堆栈信息配置代码ApiException类即可
1、ApiException extends Exception类的定义实现public class ApiException extends Exception { private static final long serialVersionUID = 1256016620875694495L; private int code; private String msg; public ApiException(int code, String msg){
2020-11-03 10:34:11
157
java全集资料共享网盘链接
2019-03-07
自测截图+验证码登录+改动脚本.zip
2020-10-23
简历模板-java工程师与web工程师.zip
2020-10-23
资讯中台9月份开发自测截图.zip
2020-09-28
aviator-master.zip
2020-09-21
MySQL-DB安装包linux版本的rpm以及Win10 的32版本和64版本.zip
2020-09-18
mysql-installer-community-5.6.19.0.msi
2020-09-18
php-MySQL.zip
2020-09-18
Maven课件操作演示笔记以及上课课件.zip
2020-09-16
jdk-8u131-windows-x64然后64位的.zip
2020-09-16
jdk-8u131-windows-x3232位的.zip
2020-09-16
EMS SQLmanage2007破解注册机 .zip
2014-10-26
Android 图像识别
2014-09-18
我整理 Android 经典项目 学习源码
2014-09-18
android 经典的界面设计源代码
2014-09-18
Android 下拉刷新
2014-09-18
百度地图 实时计程 轨迹涂鸦 参赛作品 Android源码
2014-08-23
Android百度地图二次开发资料
2014-08-23
百度地图俩点距离计算Android代码
2014-08-23
Android源码 参赛作品 摇一摇应用
2014-08-23
Android源码 参赛作品 大学生 课程表 资料
2014-08-23
Android源码 参赛作品 后台运行
2014-08-23
Android游戏 参赛作品 游戏源码 资料整理
2014-08-23
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝