
项目开发
慕容潇湘
代码搬运工
展开
-
swagger 再也不用一个一个点开接口了,执行这个一键展开
【代码】swagger 再也不用一个一个点开接口了,执行这个一键展开。原创 2023-05-08 19:36:39 · 362 阅读 · 0 评论 -
系统性能指标
不同的指标其要求不同,比如现在进行接口优化,优化后的接口响应时间应该越来越小,吞吐量越来越大,以及qps值也是越大越好,错误率要保持在一个很小的范围。1.cpu使用率,不高于85%2.内存利用率,不高于85%3.网络利用率,不高于80%原创 2023-04-25 10:30:57 · 256 阅读 · 0 评论 -
代码开发一些小技巧
用代码修改linux服务器文件权限。原创 2023-04-14 09:32:35 · 109 阅读 · 0 评论 -
生成业务主键
第一种:日期+自增数值。原创 2022-08-09 23:46:33 · 166 阅读 · 0 评论 -
菜单-网盘-树形结构
@Data@ApiModel@Builder(toBuilder = true)@NoArgsConstructor@AllArgsConstructorpublic class KnowledgeBaseDTO implements Serializable { private static final long serialVersionUID = 1L; @ApiModelProperty(value = "主键id") private String id; .原创 2022-03-13 18:27:09 · 655 阅读 · 0 评论 -
kafka+elk(分布式解决方案之分布式日志采集)
最近项目中正在对日志进行收集与处理,接下来会记录完整的项目踩坑经历原创 2022-02-08 15:05:42 · 1024 阅读 · 0 评论 -
APM与SkyWalking
APM与SkyWalkingSpring Cloud SluethZipkin阿里鹰眼大众点评CatSkyWalkingAPM 即应用性能管理系统根本目的:对应用程序单点性能与整个分布式应用进行监控记录每一个环境程序执行情况通过图表与报表的形式让运维人员随时掌握系统的运行状况SkyWalking实现强大的链路追踪相比Zipkin,拥有更友好,更详细的监控项能自动生成可视化图表...原创 2022-01-20 14:27:13 · 894 阅读 · 0 评论 -
腾讯云cos下载地址,文件重命名
腾讯云cos 文件上传,为了放置文件被覆盖,使用了key作为唯一标识的策略。由于我们公司后端开发使用的是:时间戳—文件名上传是:ioc.pdf下载下来是:20220117165840-ioc.pdf期待是 上传:ioc.pdf 下载下来文件名还是 ioc.pdf另外,当用户下载的时候,中文名又会被浏览器进行编码,所以,下载到本地就是乱码解决方案:1.可以通过文件夹/文件名 来区分2.前端解析重命名(已经验证)/** * @param {String} url * @des原创 2022-01-18 09:56:02 · 1880 阅读 · 1 评论 -
springboot 读取网络资源
@Autowired private ApplicationContext applicationContext; @GetMapping("/download/{md5}") @ApiOperation(value = "导出配置") public void download(HttpServletResponse response, @PathVariable String md5) throws IOException { OutputStr...原创 2022-01-11 16:59:28 · 948 阅读 · 0 评论 -
mysql-死锁问题
时间:2022-01-06 00:00:33 ~ 2022-01-06 00:00:33持续时长:0 秒风险等级:致命概要:系统在 "2022-01-06 00:00:33" 时刻发生死锁现场描述:1.Transaction1Thread:6129118DELETE FROM t_device_status WHERE device_id IN ('*****2585fb0848' Status:Rollback2.Transaction2Thread:612905原创 2022-01-09 17:53:13 · 389 阅读 · 0 评论 -
AOP添加操作日志
@Aspect@Component@Slf4jpublic class SysLogAspect { @Resource UserTokenBean userTokenBean; @Autowired private SystemLogController systemLogController; @Autowired private CommonDictController commonDictController; @Pointcut(.原创 2021-12-31 10:38:45 · 548 阅读 · 0 评论 -
group:mapping-com.alibaba.cloud.dubbo.service.DubboMetadataService
//implementation 'com.alibaba.cloud:spring-cloud-starter-dubbo'implementation group: 'org.apache.dubbo', name: 'dubbo', version: '2.7.3'implementation group: 'org.apache.dubbo', name: 'dubbo-dependencies-bom', version: '2.7.3'implementation group:...原创 2021-08-18 18:04:56 · 1508 阅读 · 1 评论 -
/bin/bash: line 112: ./gradlew: Permission deniedERROR:
/bin/bash: line 112: ./gradlew: Permission deniedERROR: Job failed: command terminated with exit code 1解决方案:git update-index --chmod=+x gradlewgit add .git commit -m "修该执行脚本权限"git push原创 2021-08-09 15:59:07 · 548 阅读 · 0 评论 -
Gradle学习总结
Ant 2000年 编译测试Maven 2007年 编译测试/依赖管理Gradle 2012年 编译测试/依赖管理/DSL自定义拓展任务Gradle是什么一个开源的项目自动化构建工具,建立在Apache Ant和 Apache Maven 概念的基础上,并引入了基于Groovy的特定领域语言(DSL),而不再使用XML形式管理构建脚本Groovy是什么 Groovy是用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,...原创 2021-07-26 09:22:41 · 161 阅读 · 0 评论 -
springboot2.3.0集成gateway时候报错
直接升级springboot2.3.0到高版本就可以,我是升级到2.3.12.RELEASE原创 2021-06-24 18:04:53 · 419 阅读 · 0 评论 -
获取一天的开始和截止时间
LocalDate localDate = LocalDate.now();LocalDateTime today_start = LocalDateTime.of(localDate, LocalTime.MIN);LocalDateTime today_end = LocalDateTime.of(localDate, LocalTime.MAX);Date startDateTime = Date.from(today_start.atZone(ZoneId.systemDefault())..原创 2021-05-26 09:23:38 · 481 阅读 · 0 评论 -
日志学习汇总
日志规范(码出高效:阿里巴巴Java开发手册详解)1.【强制】应用中不可直接使用日志系统(Log4j、Logback)中的API,而应依赖使用日志框架SLF4J中的API,使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。import org.slf4j.Logger;import org.slf4j.LoggerFactory;private static final Logger logger = LoggerFactory.getLogger(Abc.class);2. 【强制原创 2021-04-22 14:15:22 · 220 阅读 · 0 评论 -
动态修改日志级别
@RequestMapping(value = "/global/logLevel/{logLevel}", method = RequestMethod.GET) public ApiResponse changeLogLevel(@ApiParam(name = "logLevel", value = "日志级别", example = "[debug,info,warn,error]") @PathVariable("logLevel") String logLevel) { ..原创 2021-03-12 11:06:44 · 441 阅读 · 0 评论 -
注册登陆学习总结
单点登陆三种常见方式第一种:session广播机制实现第二种:使用cookie+redis实现第三种:使用token实现1.session复制,致命缺点(资源极大消耗)2. 2.1在项目中任何一个模块进行登陆,登陆之后,会把数据放到两个地方 1.redis,key:生成唯一随机(ip,用户id等等),value:用户数据 2.cookie:把redis里面生成key放到cookie里面 2.2 访问项目中其他模块,发送请求带着cookie进行发送,获取cookie值,拿着co...原创 2020-08-19 13:55:33 · 476 阅读 · 0 评论 -
mybatis插入时间类型的数据
数据库indbTime字段类型:date实体中类型是:Datemybatis的插入类型应该设置成:#{indbTime,jdbcType=TIMESTAMP}mybatis的插入类型应该设置成: #{indbTime,jdbcType=DATE} insert into CDS_DATA_PLAT_TRANS_INFO <trim prefix=...原创 2019-12-20 15:50:22 · 5793 阅读 · 0 评论 -
jdbc批量插入几百万数据
插入大量数据:1.jdbc2.MyBatis的批量插入3.调用存储过程 long start = System.currentTimeMillis(); Class.forName("com.mysql.jdbc.Driver"); Connection connection = DriverManager.getConnect...原创 2019-12-03 16:39:46 · 513 阅读 · 0 评论 -
未预期的文件结尾
昨天我们项目组上线一个服务。在执行shell启动脚本的时候,提示的是第12行“未预期的文件结尾”。我们这个脚本只有明明只有11行,why?尝试解决方法:1.检查文件,一行行的看代码(未发现异常)2.有的说最后一行有回车或者不可见字符。。。(根本不行)3.复制其他项目可以用的脚本(依然不行)4.最后没办法了,找了两个同事看了依然没搞定最后,发现可能是使用了360上传文件...原创 2019-10-24 08:53:31 · 3006 阅读 · 0 评论 -
mysql查询-从表1中查询出来的结果重新插入到表1
原有表结构CREATE TABLE `t_card_user` ( `id` varchar(32) NOT NULL, `card_user_id` bigint(20) DEFAULT NULL COMMENT 'UserID受设备最大用户数影响,范围为1--最大用户数。', `card_no` bigint(20) DEFAULT NULL COMMENT 'CardNo最...原创 2019-05-28 18:18:29 · 825 阅读 · 0 评论 -
idea右键没有Run
今天遇到了idea 右键没有Run的bug,当时找了很多方法都不行,最后还是下了这个插件搞定的原创 2019-05-28 19:29:10 · 5365 阅读 · 0 评论 -
Excel导入大量数据,同时校验Excel中数据以及数据库是否存在重复数据
1.共享数据,减少数据查询 业务需求: 导入房屋信息,房屋信息包括项目编号,楼栋编号,楼层号,房屋号 如果系统中已存在深圳大区,金色家园,1栋,102房屋,Excel中刚好有深圳大区,金色家园,1栋102房屋这条记录,又或者Excel中的信息是这样子的--深圳大区,金色家园,1栋,102,仅仅是名字不一样了,或者信息不对。。。。 思维:将数据库...原创 2019-05-28 21:26:56 · 14136 阅读 · 4 评论 -
"ERROR" dispatch for GET "/error?thingName=lxy&requestId=123", parameters={masked}
控制台打印了我的请求地址:DefaultSavedRequest[http://localhost:18080/myiot/unLock?thingName=lxy&requestId=123]控制台却报这样的错误:2019-08-29 15:44:51.155 DEBUG 4324 --- [io-18080-exec-1] o.s.web.servlet.Dispat...原创 2019-08-29 15:58:21 · 14685 阅读 · 0 评论 -
单一窗口用了哪些技术,解决高并发问题的?
目前达到200票/秒,每天平均通关80W数据,长连接数50000+ ,等待处理连接数500+。答:首先 我们采用 微服务架构 – 去中心化(业务量大的系统扩容)。第二 我们运用Redi缓存,参数服务运用二级缓存。第三 我们数据库分库、分表。第四 业务系统项目前后端分离(有效减少后端请求,前端请求1500次,后端请求400次)。第五 图片、PDF等采用CDN加速。第...原创 2019-09-01 17:39:32 · 804 阅读 · 0 评论 -
运输工具-日志查询
去年在万科项目组,虽说项目并发量没有电商那么大,但用肉眼来看还是太快了!这里就说下万科的日志规范吧 通常我们不用debug级别的的日志的,主要是info和error,其中info日志主要用来打印一些入参出参值,或者其他一些方便定位错误的提示信息。error主要是报错或捕获的异常信息等!由于万科项目只是单纯物联网相关的项目,涉及安全,隐私信息减少,我们的输出日志信息特别多...原创 2019-09-06 08:52:15 · 263 阅读 · 0 评论 -
如何在开发中测试并发量
一.Apache-ab测试 https://blog.youkuaiyun.com/whynottrythis/article/details/46495309二.postman三.其它插件原创 2019-03-05 18:01:22 · 5044 阅读 · 0 评论 -
http发送post请求,却报Reqest Method:OPTIONS的错误
原来代码如下,报图一的错误:function cpuTest() { $.ajax({ url: "http://127.0.0.1:1010/ICC_tsi_api_multi", type: 'post', dataType: "json", co...原创 2019-01-17 00:33:31 · 8646 阅读 · 2 评论 -
java二维码之生成与解析
1.引入依赖 <dependency> <groupId>com.google.zxing</groupId> <artifactId>javase</artifactId> <version>3.0.0</version>...原创 2018-11-13 19:36:51 · 16504 阅读 · 0 评论 -
json字符数组转List+导出Excel表格
首先是json字符数组转List集合对象 String jsonString = custIcCardDubboService.getExcelFailData(keyName); List<CardExcelVo> excelVoList = JSON.parseArray(jsonString, CardExcelVo.class); /** * 导...原创 2018-11-03 15:47:54 · 916 阅读 · 0 评论 -
设置是否记录日志接口
这个接口可以来控制项目引入的日志注解是否生效(即是否打印日志) /** * 设置是否记录日志 * http://xxxxxxxxxxxx:8081/xxxxx/appi/busi/log/isWriteLog/true?sign=2d0e3c349dbf29470c1b89dfd895e2ae&timestamp=1539320912 * @param isWriteLo...原创 2018-11-03 18:50:29 · 432 阅读 · 0 评论 -
十六进制的字符串转十六进制
private static byte[] hexToBytes(String hexString) { if (TextUtils.isEmpty(hexString)) throw new IllegalArgumentException("this hexString must not be empty"); hexString ...原创 2018-09-28 21:01:10 · 3510 阅读 · 1 评论 -
分布式项目遇到的并发问题
acs-socket-app项目部署在两台服务器,暂时就是是28,29结尾的服务器当我远程开门的时候,采取的是轮询的机制:第一次下发指令随机下发到了28的服务器,然后从一个全局的map中获取设备id,结果没拿到,这时候就会报开门异常第二次下发指令随机下发到了29的服务器,然后从一个全局的map中获取设备id,结果拿到,这时候就会报开门正常问题就出在这里,这个全局map设计是不是不合...原创 2018-09-27 09:48:24 · 777 阅读 · 0 评论 -
发布项目到远程服务器报找不到文件的错误
明明本地都跑起来了,也没问题,为什么打包到服务器就报错了那?我也不是很明白,可能服务器发神经了解决方法: 1.原来文件为:conf/cache.properties 报错 2.新建文件:config/cache.properties 这样就不报错了(亲试有效)...原创 2018-09-26 10:04:09 · 1295 阅读 · 0 评论 -
FTP上传打包的项目到服务器
昨天,公司要求将最新的项目发布到开发环境去,由于开发环境服务器好久没用了,我使用FTP上传竟然传不上去,提示没权限。很郁闷,大家可以看看用户组权限就会明白:解决方法: 方法1.登陆ssh,将原来的项目文件移除掉了(命令:rm -rf acs*),就可以了 (备注:切换root用户,sudo su root)...原创 2018-09-26 09:43:06 · 1709 阅读 · 0 评论 -
使用ajax下载Excel报错,解决方法如下
一.开始的时候代码类似这种写法$.ajaxFileUpload({ url: '${root}/manage/custIcCard/uploadExcel?projectCode=' + projectCode + '&icType=' + icType, //用于文件上传的服务器端请求地址 secureuri: false, //是否需要安全协议,一般设置为false...原创 2018-09-20 11:44:11 · 1470 阅读 · 0 评论 -
使用HttpClient实现客户端(非浏览器)文件的上传下载
通过访问/busi/remote/getIcCardsFileByDevid接口,返回得到的是一个文件,我们可以接收还可以修改本地存储地址(localFileName)public static void main(String[] args) { String remoteFileName=""; String localFileName="E:\\te...原创 2018-09-30 20:54:48 · 616 阅读 · 0 评论 -
MySQL 5.7 忘记密码(免安装亲试)
MySQL 5.7 忘记Root密码用管理员身份运行cmd、然后使用命令进行:1、打开MySQL>bin文件夹》cd C:\mysql\mysql5.7.14\bin2、停止mysql 服务》net stop mysql3、设置跳过密码验证》mysqld -nt --skip-grant-tables*注意 如执行失败 去掉 -nt 试试4、重新打开...原创 2018-09-23 22:17:02 · 812 阅读 · 0 评论