自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(84)
  • 资源 (8)
  • 收藏
  • 关注

原创 java面试问题(一)

2、Redis数据结构的选取非常合适,采用全局的链式哈希表进行存储每一个key-value,同时,Redis对于哈希扩容的处理也很高效,查询时间非常快,是趋近于O(1)的,并且当哈希桶使用个数比较多时,会进行哈希表的扩容,避免时间复杂度的增高。7、在新版本中,redis引入了网络IO多线程,多个线程同时进行网络IO的处理,将网络IO的解析好的数据传递给主线程,主线程负责命令的执行。6、redis的网络IO是通过IO多路复用epoll来完成的,所以当网络数据到达时,能及时触发网络事件,进行数据的读取。

2023-04-25 08:56:49 738 1

原创 java Collectors 分组求和

***//*** @param 集合元素类型* @param 中间结果容器* @param 最终结果类型*/// T代表流中元素的类型,A是中间处理临时保存类型,R代表返回结果的类型CollectorImpl(Supplier supplier, // 产生结果容器BiConsumer accumulator, // 累加器。

2023-04-24 13:05:01 2081

原创 Java小特点

所以可以使用这个方法,对于一些数值类型的字符串,或者时间类型的字符串,是可以直接拿去使用的。在mysql中字符串日期可以直接和datetime类型之间比较,无需转换,Mysql会将字符串类型日期转换成长整型数字进行比较,当然你也可以转换为同一类型后再比较。注解@Override用在方法上,当我们想重写一个方法时,在方法上加@Override,当我们方法的名字出错时,编译器就会报错。返回 Field 对象的一个数组,该数组包含此 Class 对象所表示的类或接口所声明的所有字段(包括私有成员)。

2023-03-03 13:27:41 342

原创 sonarQube 扫描BUG处理

sonarQube 扫描出 可能会出现空指针问题。代码中 finally 不要包含 return;– 代码复现 YBT001Service。– 代码复现 DY001Service。

2023-01-17 13:17:19 628

原创 Java 序列化和反序列化,为什么要实现Serializable?

做服务化,需要把所有model包里的类都实现Serializable接口,同时还要显示指定serialVersionUID的值。听到这个需求,我脑海里突然出现了好几个问题,比如 说:什么时候需要用到序列化和反序列化呢?当我们只在本地JVM里运行下Java实例,这个时候是不需要什么序列化和反序列化的,但是我们需要将内存中的对象持久化到磁盘,数据库中时,当我们需要与浏览器进行交互时,当我们需要实现RPC时,这个时候就需要序列化和反序列化了。前两个需要用到序列化和反序列化的场景,是不是让我们有一个很大的疑问?我

2022-12-06 23:31:18 853 1

原创 PMP 2022-11-01

根据效益管理接话所获得的检测值,结合商业论证中终止退出的条款,来判断项目是否符合了组织的战略,必要的时候,可能会终止条款来保障组织的利益。114、 几个月来,某团队一直在开展一个项目,但何时完成仍不明朗,因为随着新情况的不断出现,项目范围经常变化不定,一些可交付成果已经完成,但当新相关方加入团队时,他们抱怨项目结果不符合业务目标。在项目评审会上,从事活动 AD 的项目团队成员通知项目经理,完成该活动还需要三天,组织的高级经理要求项目经理,即使需要额外的预算,也必须找到方法,按原定基准计划交付项目。

2022-12-01 20:27:17 2753

原创 PMP 2022-10-10 (每日一练)

1.经批准的项目章程指出必须釆用敏捷方法,在经验教训会议上,客户指出团队无法为该项目提供可靠的成本估算,应该在第一次迭代中分配更多的时间来定义范围。在经验教训资源库中应收集哪个经验教训?A. 客户应该提前接触敏捷方法以了解成本估算过程B. 如果客户需要可靠的成本估算,则不应使用敏捷方法C. 在项目的第一次迭代中,应分配时间来定义范围并确保执行可靠的成本估算D. 敏捷方法的沟通应纳入每日站会解析:​ 第一题 侧重点是 必须采用敏捷方法,客户指出团队无法给出可靠的。

2022-10-10 22:41:57 1734 1

原创 后端开发小技巧 (七)

后端开发小技巧 (七)1. 自动更新任务一、 启动程序 添加注解@EnableScheduling@SpringBootApplication@MapperScan("cn.piesat.sar.dao")public class MessageApplication { public static void main(String[] args) { SpringApplication.run(MessageApplication.class, args);

2022-04-14 13:00:00 389

原创 实习Day(二)

实习Day(二)1. OpenFeign 使用Feign 简介​ Feign 是一个声明式的Web Service客户端。它的出现使开发Web Service 客户端变得很简单。使用Feign只需要创建一个接口加上对应的注解,比如:FeignClient注解。Feign有可插拔的注解,包括Feign注解和JAX-RS注解。Feign也支持编码器和解码器,Spring Cloud Open Feign 对Feign进行增强支持Spring MVC注解,可以像Spring Web一样使用HttpM

2022-04-14 08:56:12 688

原创 实习Day(一)

实习Day(一)Gradle (一)Gradle是一个完全自动化的构建自动化系统,它使用您在Apache Maven和ApacheAnt上看到的概念。它使用基于编程语言Groovy的领域特定语言,这与ApacheMaven有所区别,后者使用XML进行项目配置。它还使用有向无环图来确定任务的运行顺序。几位开发人员创建了Gradle,并于2007年首次发布,并于2013年被Google用作Android项目的构建系统。它旨在支持预计将非常庞大的多项目构建。它也允许以增量方式添加到构建中,因为它知道项目

2022-04-14 08:55:47 418

原创 消息队列的学习 (一)

消息队列的学习 (一)MQ有哪些?如何选型?常见的:RabbitMQ,ActiveMQ,Kafka,RocketMQRabbitMQ 中小型公司,erlang语言天生具备高并发,开源易维护;RocketMQ 大公司,依赖于阿里,可能需要专人定制化开发;Kafka 大公司,若需要日志采集功能,首选kafka;1、MQ常用的使用场景异步:场景说明:用户注册后,需要发送注册邮件和注册短信流程:处理模式:引入中间件MQ,将消息写入消息队列,非必要的业务逻辑(注册邮件和注册短信)异步方式运行,加速响

2022-04-14 08:54:41 144

原创 后端开发小技巧(六)

后端开发小技巧(六)1. 多选删除的接口 - Controller @DeleteMapping("/remove") @ApiOperation("根据id删除标准产品按需生产") @ApiImplicitParams({ @ApiImplicitParam(name = "id", value = "ids(多个id以逗号分隔)", dataType = "String", required = true, paramType = "query")

2022-04-14 08:53:01 231

原创 后端开发小技巧 (五)

后端开发小技巧 (五)1. Mapper层 一些常用的SQL语句1.1查询当天的记录+条数 <select id="selectToday" resultType="java.lang.Integer"> SELECT * FROM 表 WHERE to_char(create_time, 'YYYY-MM-DD HH24:MI:SS') = to_char(NOW(), 'YYYY-MM-DD HH24:MI:SS') &lt

2022-03-18 18:15:26 172

原创 当服务为分布式的时候,你没有该数据库的情况,去访问另一个服务并获取图片

当服务为分布式的时候,你没有该数据库的情况,去访问另一个服务并获取缩略图获取缩略图模块ServiceImpl// 写入的这个类 为工具类 调用其他服务的接口 @Autowired private TaskUtil taskUtil;@Override public ServiceResult queryWorkflowThumb(Integer workFlowId) { ServiceResult result = new ServiceResult(f

2022-03-17 20:53:56 131

原创 一文看懂Java Worker 设计模式

一文看懂Java Worker 设计模式原文链接:http://www.cnblogs.com/Ti1077/p/9641011.htmlWorker 模式想解决的问题异步执行一些任务,有返回或无返回结果使用动机:有些时候像执行一个异步任务,如异步网络通信、daemon任务,但又不想去管理这任务的生命周。这个时候可以使用Worker模式,他会帮您管理与执行任务,并能非常方便的获取结果结构:很多人可能觉得这与executor很像,但executor是多线程的,他的作用更像是一个规划中心。而Wo

2022-03-17 14:00:00 668

原创 rabbitmq 常用配置

rabbitmq 常用配置# rabbitmq## 指定RabbitMQ host.默认为: localhost)spring.rabbitmq.host=rabbitmq.piecloud-infra.xx## 端口号 默认端口号5672spring.rabbitmq.port=5672spring.rabbitmq.username=adminspring.rabbitmq.password=admin## 指定Acknowledge的模式.spring.rabbitmq.listen

2022-03-17 13:30:00 3039 1

原创 对于数据库 多表(左)连接 出现重复数据Java解决办法

对于数据库 多表(左)连接 出现大量重复数据1. 解决办法 在ServiceImpl 中 去重// start sart java8 新特性 需要的话 可以解除注释 List<Map<String, Object>> unique = dataModelList.stream().distinct().collect(Collectors.toList()); System.out.println(unique.toString()

2022-03-17 11:20:51 2007

原创 JenKins

JenKins部署原理前端​ JenKins 会关联一个前端git仓库,每当git仓库有更新时,可以找到对应的仓库进行构建,构建完成后,可以通过运维发送的ip地址:端口号/dist/ 进行重新访问,即可实时更新。后端​ 将打包的xxx.jar 通过XShell 链接到虚拟机,然后找到服务器的位置,并书写配置文件,及时进行配置。部署完毕​ 前端发送请求,后端服务器上接收请求,数据库也部署在虚拟机上,进行连接。形成不在需要电脑(服务器/客户端)的情形。可以直

2022-03-17 09:07:54 902

原创 Utils工具类

1. UUID Utils本文链接:https://blog.csdn.net/pro_fan/article/details/892193852. UUID 是什么转载 https://www.jianshu.com/p/da6dae36c2903. UuidUtilspackage cn.piesat.sar.utils;import java.util.UUID;public class UuidUtils { public static String getUUID() {

2022-03-17 09:07:26 2474

原创 页面自动监听某个状态的VUE函数

页面自动监听某个状态的VUE函数mounted() { let that = this; // that.getTaskTableData(); this.setIntervalTime = window.setInterval(function () { setTimeout(() => { // search1方法 是 查询某个字段的状态 that.search1(); }, 0); }, 5000);

2022-03-15 17:48:48 1093

原创 重新传输的后端实现

重新传输的Controller实现 @RequestMapping(value = "/retransmissionByPlanId",method = RequestMethod.GET) @ApiOperation("通过计划id重新传输") public ServiceResult retransmissionByPlanId(String planId){ // 确认下流程 return planService.retransmissionB

2022-03-15 17:48:16 1028

原创 后端开发技巧(四)

后端开发技巧(四)1. 将数据库的时间 返回成 xx:xx:xx 添加以下配置spring.jackson.date-format=yyyy-MM-dd HH:mm:ssspring.jackson.time-zone=GMT+82. 使用Swagger注解时CUID 的注解规范 @PostMapping("/add") @ApiOperation("添加通知消息-标准产品生产任务表") public ServiceResult addTaskWorkflow(H

2022-03-14 09:40:40 260

原创 后端开发技巧(三)

后端开发技巧(三)1.在postgre SQL 中 如何对单列元素去重 <select id="selectSatellite" parameterType="java.util.Map" resultType="java.util.Map"> select distinct on (satellite) id, satellite from sar_satellite_image_dic where 1=1 </select>

2022-03-04 15:22:39 379

原创 后端 CUID 开发小技巧

后端 CUID 开发小技巧1.不在用HashMap存储条件 只需要一行代码 将传输对象存储转换成Map 进行查询 Map<String, Object> conditions = JSON.parseObject(JSON.toJSONString(dataReceiveNotify), Map.class);对象本身可以通过JSON函数编程 Map,Map 作为条件然后传入,然后进行查询2. 不再用 Collection、association 进行关联 操作如下

2022-03-03 15:07:49 228

原创 后端 CUID 开发小技巧

CUID开发小技巧

2022-02-24 15:53:26 380

原创 底层知识二

1. synchronized 与 Lock的区别及底层实现1).synchronized(以下用sync表示)与lcok区别?来源及用法:lock是一个接口,是java写的控制锁的代码,而synchronized是java的一个内置关键字,synchronized是托管JVM执行的。synchronized:在需要同步的对象中加入此控制,synchronized可以家在方法上,也可以加在特定代码块中,括号中标识需要锁的对象。lock:一般使用ReentrantLock类作为锁。在加锁和解锁处

2021-10-20 17:15:00 95

原创 底层知识零

JWT +Redis一、流程前端:前端拿到登录名和密码,使用JSEncrypt实现rsa将密码进行加密,然后传到后端后端:拿到密码通过后台的私钥进行解密,然后通过用户名查询到用户信息,通过用户信息的状态来判断登录结果前端:若后端验证成功则根据规则生成Token,并存入redis,且像前端返回token,前端将token和用户存到localstorage,客户端再次发送请求数据将携带token。后端:通过拦截器拦截请求,在请求头中拿到token,验证redis中是否由token,且是否过期,如果t

2021-10-20 12:58:39 276

原创 底层知识三

set ,map,list的区别map:hashmap:连地址法,大概思路:通过取key的hashCode值,高位运算,取模运算计算位置,插入位置是通过hashcode 和 equals方法判断key是否一致判断键值对数组table[i]是否为空或为null,否则执行resize()进行扩容根据键值key计算hash值得到插入的数组索引i,如果table[i]==null,直接新建节点添加,转向6,如果table[i]不为kong,转向3判断table[i]的首个元素是否和key一样,如果相同直

2021-10-20 12:56:54 148

原创 IDEA如何正确构建分布式项目

1. 首先要有自己的码云账号2. 下载本地的码云下载地址:git-scm.com3. 使用命令 创建自己的 密钥语言:ssh-keygen -t rsa -b 4096 -C “自己的邮箱”然后 选择三次 Y生成密钥然后 将 密钥 绑顶到 自己的gitee 的仓库上注意生成的密钥 不要有空格使用 ssh git@girhub.cm如果 successfully 则证明绑定成功本文链接:https://blog.csdn.net/m0_37852382/articl

2021-10-13 23:00:00 780

原创 docker下安装redis

docker 下 下载 redis1. 下载镜像docker pull redis (不写版本号就是最新版本)2. 创建实例并启动mkdir -p /mydata/redis/conftouch /mydata/redis/conf/redis.conf/-p 映射端口号/ -d 以 redis 启动/ -v 进行挂载docker run -p 6379:6379 --name redis -v /mydata/redis/data:/data \-v /mydata/redis/

2021-10-13 18:49:04 74

原创 session,cookie和token的区别

session,cookie和token的区别http 是一个无状态协议什么使无状态协议?就是这一次请求和上一次请求是没有关系的,互不认识的,没有关联的。这种无状态的好处是快速。cookie和session由于http的无状态性,为了使某个域名下的所有网页能够共享某些数据,session和cookie出现了。客户端访问服务器的流程如下首先,客户端会发送一个http请求到服务器端服务器端接受客户端请求后,建立了一个seesion,并发送一个http响应到客户端,这个响应头,其中就包含S

2021-10-12 13:32:09 158

原创 虚拟机VM VitualBox

1. 创建虚拟机安装 Oracle VM VitualBox安装 vagrant安装 镜像 CS/7vagrant init centos/7 //拉取镜像vargant up // 下载注意:Vagrant 爆出 UndefinedConversionError 错误参考原文链接:https://blog.csdn.net/weixin_44655599/article/details/1129132192. 在命令控制它使用 CTRL + C 中断使用 vagr

2021-10-12 13:04:23 218

原创 分布式基础概念

分布式基础概念1. 微服务​ 微服务是一种非常流行的架构风格,就像是一个单独的应用程序开发为一套小服务,每个小服务运行在自己的进程中,并使用轻量级机制通信,通常是HTTP API,这些服务围绕业务能力来构建,并且通过完全自动化部署机制来独立部署。这些服务使用不同的编成语言来书写,以及不同数据存储技术,并保持最低限度的集中式管理。微服务:拒绝大型单体应用,基于业务边界进行服务微化,拆分。独立部署运行的。不同服务之间 , 可以通过HTTP API发送请求,来实现。2. 集群 &分布式 &am

2021-09-30 13:10:02 74

原创 前后端提交问题

前后端 提交问题提交 和 后台接收对象没有嵌套 415报错axios.post(’/major/add’,qs.stringify(Major))把JSON对象转化为application/x-www-form-urlencoded俗称是form表单形式提交add(Major major)对象有嵌套axios.post(’/major/add’,Major) Major是JSON对象 后台无法直接处理,要加@RequestBodyadd(@RequestBody Major m

2021-09-18 11:04:17 127

原创 渐进式框架Vue

渐进式框架Vue1. 什么是vue?类似于一套构建用户界面的渐进式框架。与其他重量级框架不同,Vue采用自底向上增量开发设计。渐进式:就是阶梯式向前,vue是轻量级的,它有很多独立的功能或库,我们会根据我们的项目来选用vue的一些功能,我们开发项目时,只用到vue的声明式渲染,我就只用vue的声明渲染,而我们要用它的组件系统,我们可以使用它的组件系统。Vue的渐进式表现:声明式渲染----组件系统-----客户端路由------大数据装填管理-------构建工具2. vue中两个核心点响应

2021-09-18 11:00:28 3244

原创 Spring

1.SpringSpring是一系列框架Spring是一个轻量级控制反转(IoC)和面向切面(AOP)的容器框架。Spring核心,SpringMVC,Spring BootSpring核心:DI,IOC,AOP,容器contextSpringMVC代替了Servlet (SSM,Spring+SpringMVC+MyBatis)​ (SSH , Spring+Struts+Hibernate)Spr

2021-09-18 10:59:11 275

原创 # 1. 正则表达以及失去焦点验证的JS书写

1. 正则表达以及失去焦点验证的JS书写<script> function leave(a) { var reg = /^[ \u4e00-\u9fa5a-zA-Z0-9_-]{5,16}$/;//[ title: [/^[a-zA-Z0-9_-]{5,16}$/, '用户名是5-16不含空的字母'], if (reg.test(a.value) != true) { var username = a.value;

2021-09-18 10:56:30 327

原创 # Python 中特殊的内置函数

Python 中特殊的内置函数内置函数内置函数 BIF 是Python的内置对象类型之一,封装在标准库模块__builtins__中,可以直接在程序中使用,如 input()函数、print()函数、abs()函数数等为什么推荐使用?因为Python中内置函数使用c语言进行优化,运行速度快关键的内置函数range()函数range() 函数 返回一个整数序列的迭代对象。格式:range([start,]stop[,step])start为计数初始值,默认从0开始。sto为最终值,但不

2021-09-18 10:55:45 143

原创 Mybatis性能提升

MYyBatis性能提升主要思想:减少查询次数1. 合并SQL使用大量的左连接 起别名进行sql合并为什么?因为这样可以将多条查询结果合并成一条输出,提高了效率。selectById是一条结果一条的查询,消耗大量的性能。注意左连接 left join xxx on 可以多个添加 连续左连接 没有问题注意别名问题 避免出现二义性。所以尽量谁的属性就使用别名.属性select xxx from table1,table2 where t1.xx == t2.xx; <result

2021-09-18 10:54:28 526

原创 Servlet和JSP

导入外来项目maven的版本要一致resource 需要进行标记 标记成资源目录Maven 进行clean 在进行生成将Maven项目转换成Web项目ServletServlet 是什么?就是在web服务器上运行的Java程序JSPJava Server Pages运行在服务器上的页面支持Servelet 和JSP 需要引入Pom <dependency> <groupId>javax.servlet</group

2021-09-18 10:53:37 191

计算机科学与技术相关算法实验报告

1、将正整数n表示成一系列正整数之和: n=n1+n2+…+nk, 其中n1≥n2≥…≥nk≥1,k≥1。正整数n的这种表示称为正整数n的划分。求正整数n的不同划分个数。 2、设计一个递归算法生成n个元素{r1,r2,…,rn}的全排列。 3、Hanoi塔问题 设a,b,c是3个塔座。开始时,在塔座a上有一叠共n个圆盘,这些圆盘自下而上,由大到 小地叠在一起。各圆盘从小到大编号为1,2,…,n,现要求将塔座a上的圆盘移到塔座b上,并仍 按同样顺序叠置。在移动圆盘时应遵守以下移动规则: 规则1:每次只能移动1个圆盘; 规则2:任何时刻都不允许将较大的圆盘压在较小的圆盘之上; 规则3:在满足移动规则1和2的前提下,可将圆盘移至a,b,c中任一塔座上。

2020-08-05

计算机组成实验1-5,含有设计图

计算机运算器是以算术逻辑运算单元(ALU)为核心、通过CPU内部总线获取或发送数据、可以完成算数逻辑和位运算的数字电路部件。本实验要求设计实现运算器的ALU部分,可以使用74系列已有的算术逻辑芯片来实现,74系列芯片中已有的算术逻辑运算芯片有:7483(4位位全加器)、74181(四位算术逻辑单元)、74283(4位全加器)等,其中只有181具备完整的算术逻辑运算,因此本实验选用74181来实现ALU。

2020-08-05

# MySQL 面试题.md

SQL指结构化查询语言,全称是 Structured Query Language。SQL 是用于访问和处理数据库的可以与数据库 交互的计算机语言。 SQL 是一种 ANSI(American National Standards Institute 美国国家标准化组织)标准 的计算机语言。 SQL属于非过程化语言。

2020-08-04

jQuery 的知识.md

一个基于js的jQuery类库 ,简化了js,方便代码员使用,里面基本汇总了jQuery前端所需的知识,缺乏ajax,没有服务器与后台关联知识,不过对于前端还是比较全的,含有全选,反选,左右选择以及二级联动的代码案例以及思路

2020-07-24

Bootstrap4总结.md

关于网页自适应有详细的解释,以及Bootstrap的框架的使用,相关的语法,里面含有详细的例子以及解释,包括相关注意事项。代码可以直接复制运行。有重点,企业开发应该是足够了。

2020-07-16

控制器的基本组成与实现.md

是关于计算机组成中 控制器的实现,简单解释了什么是控制器,以及如何让实现硬件的功能。计算计组成中比不缺少硬件,与寄存器相辅相成,可以建议学习寄存器,以及运算器。最后组成一个微型pc机!

2020-07-16

组原课程设计报告.doc

是一个课程设计,有利于对小型网络深入了解,里面有详细的配置,以及布局图。 适合学生参考学习,并含有附录,里面有 设备名称,地址,以及端口链接,还有性能测试图。一份完整的课程设计!

2020-06-18

# HTML的总结.md

工作时 必备的HTML的知识,精华,干货,没有废话!并且是html的基本知识,简单易懂,适合初学者。

2020-05-28

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除