自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(172)
  • 收藏
  • 关注

原创 gradle打Jar包

build.gradle文件增加。

2023-04-24 10:38:51 1916

原创 报错 Illegal key size

目录(也就是对解密有限制的包,只支持 128位),也有一个。也就是让默认使用不限制的jar包。版本后,默认将采用无限制的加密算法,也就是使用。我们也可以通过 设置。在前面我们没有提及一个东西,就是在。目录(也就是没有限制的目录)。. 让默认使用的不限制的。的值来改变这个默认的值。

2023-04-20 19:17:13 433

原创 Git配置SSH步骤

(4)生成公钥、秘钥(填自己的邮箱,执行后需要按几次 enter 直到结束)(3)配置用户邮箱(填自己的邮箱)(2)配置用户名(填自己的姓名)公钥文件名:id_rsa.pub。(1)打开 git 命令窗口。二、gitlab 配置公钥。(1)打开生成公钥的文件夹。(5)配置 ssh 变量。(2)复制公钥文件内容。

2023-04-10 14:47:51 2951

原创 Windows下安装Redis服务

1要安装Redis,首先要获取安装包,Windows的Redis安装包需要到以下链接找到。

2022-11-22 10:06:03 983

原创 MySQL5.6修改编码为utf8

MySQL5.6修改编码为utf8

2022-10-09 15:54:12 350

原创 Maven仓库应用

1. clean - install: 可以在本地仓库生成jar包2. Idea-maven-Runner-VM Options:-DarchetypeCatalog=internal: 优先从本地仓库拉取jar包

2021-06-22 16:53:25 104

原创 项目管理常用的10张图表

1.甘特图:这可能是最知名的项目管理图表了,以提出者亨利·L·甘特(Henrry L. Ganntt)先生的名字命名,横轴表示时间,纵轴表示项目,线条表示期间计划和实际完成情况,直观表明计划何时进行,进展与要求的对比,便于管理者弄清项目的剩余人物,评估工作进度,通常我们用Project、Excel来制作;2.燃尽图:在项目完成之前,对需要完成的工作的一种可视化表示。燃尽图有一个Y轴(工作)和X轴(时间)。该图表是一个向下的曲线,随着剩余工作的完成,“烧尽”至零。互联网开发项目中通常情况下

2021-06-08 10:48:40 5017

原创 Spring Boot启动流程

2021-04-29 17:34:00 91

原创 Scrum敏捷开发过程

敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法。首先,我们要理解它不是一门技术,它是一种开发方法,也就是一种软件开发的流程,它会指导我们用规定的环节去一步一步完成项目的开发;而这种开发方式的主要驱动核心是人;它采用的是迭代式开发;我们大部分人都学过瀑布开发模型,它是以文档为驱动的,为什么呢?因为在瀑布的整个开发过程中,要写大量的文档,把需求文档写出来后,开发人员都是根据文档进行开发的,一切以文档为依据;而敏捷开发它只写有必要的文档,或尽量少写文档,敏捷开发注

2021-01-26 18:36:15 267

原创 用户故事

原型图的一个劣势时没有办法清晰的表达出用户目的,但是原型图在表达功能时却比用户故事要好。重要的是每个需求要清晰的表述出以下几个内容:做这个需求的目的,目标和价值 该需求解决了什么用户问题 该需求的主要用户是谁 用户在使用这个功能的时候遇到不同场景系统会给予什么样的反馈当需求获取到价值清晰的时候就停下来,不再追求必须完全细化——当故事传递到开发环节的时候,通过开发人员对故事的理解和提问,完善开发需要的细节,产生“拉动”需求的效果,这样避免了在需求获取和分析、设计阶段的时间消耗,从而达到“快”的

2021-01-26 10:18:42 132

原创 项目经理职责

项目经理职责:1、 基本职责就是确保项目目标的实现,领导项目团队准时、优质地完成全部工作。2、 与客户沟通,了解项目的整体需求。并与客户保持一定的联系,即时反馈阶段性的成果,和即时更改客户提出的合理需求。3、 制定项目开发计划文档,量化任务,并合理分配给相应的人员。4、 跟踪项目的进度,协调项目组成员之间的合作。5、 监督产生项目进展各阶段的文档,并与QA即时沟通,保证文档的完整和规范。6、 开发过程中的需求变更,项目经理需要跟客户了解需求,在无法判断新的需求对项目的整理影响程度的情况下,需同项

2020-10-10 15:59:33 1220

转载 Java锁

前言生活中用到的锁,用途都比较简单粗暴,上锁基本是为了防止外人进来、电动车被偷等等。但生活中也不是没有 BUG 的,比如加锁的电动车在「广西 - 窃·格瓦拉」面前,锁就是形同虚设,只要他愿意,他就可以轻轻松松地把你电动车给「顺走」,不然打工怎么会是他这辈子不可能的事情呢?牛逼之人,必有牛逼之处。那在编程世界里,「锁」更是五花八门,多种多样,每种锁的加锁开销以及应用场景也可能会不同。如何用好锁,也是程序员的基本素养之一了。高并发的场景下,如果选对了合适的锁,则会大大提高系统的性能,否则

2020-09-16 09:23:37 66

原创 HashMap和ConcurentHashMap的区别

HashMap和ConcurentHashMap的主要区别是HashMaP是线程不安全,ConcurentHashMap是线程安全1. JDK 1.7(1)HashMap的线程不安全主要是发生在扩容函数中,即根源是在transfer函数中,由于采用头插法,在多线程高并发环境下会造成死循环或数据丢失问题。(2)ConcurentHashMap采用分段锁,可重入锁Segment类,首先将数据分成一段一段的存储,然后给每一段数据配一把锁,当一个线程占用锁访问其中一个段数据的时候,其他段的数据也..

2020-09-10 15:07:30 831

原创 Java位移操作

1. 左位移: 位移一位乘以2,比如1<< 4为16,即1*2*2*2*2=162. 右位移:位移一位除以2,比如16 >>4为1,即16/2/2/2/2=1

2020-09-09 11:00:32 150

原创 Windows下后台静默运行jar包

1、Windows常规启动jar包(外置配置文件)#java -jar jar_path.jar --spring.config.location=config_pathjava -jar demo.jar --spring.config.location=application.properties启动后,命令框可以看到启动控制台信息,关闭命令框则程序也关闭。2、java和javaw的区别java命令运行的程序会有控制台输出信息,javaw不会出现控制台窗口,也不会输出任何信息。...

2020-08-28 15:46:33 2988 1

原创 Windows下实现mysql定时备份

1.MySQL备份bat处理:odls_auto_backup.batrem *******************************Code Start*****************************@echo offset "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"mysqldump --opt -u root --password=h3c.odls --default-character-set=utf8 odlsportal &gt...

2020-08-28 14:45:31 136

原创 Cron表达式

当前时间是:2020-08-22 17:17:001. 0(秒) 5(分) 0/1(时) * * ? *: 从0秒5分开始执行,每隔1小时执行一次(不会立即执行),执行如下2020-08-22 18:05:002020-08-22 19:05:002020-08-22 20:05:002. 0(秒) 0/30(分) *(时) * * ? *: 从0秒开始执行,每隔30分钟执行一次(不会立即执行),执行如下2020-08-22 17:30:002020-08-22 18:00:0...

2020-08-22 17:33:46 7090

原创 加密算法

1. 对称加密:AEC,需要秘钥2. 非对称加密:MD5 RSA加密:公钥加密,私钥解密

2020-08-13 14:22:54 106

原创 MySql数据文件

1. MySql的每个数据库都对应存放在一个与数据库同名的文件夹中,默认存在C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.6\data2. 文件类型:(1).frm文件:存储数据表的框架结构,文件名与表名相同,每个表对应一个同名frm文件,与操作系统和存储引擎无关,即不管 MySQL运行在何种操作系统上,使用何种存储引擎,都有这个文件(2).ibd文件:单表表空间文件,每个表使用一个表空间...

2020-08-10 14:44:13 304

原创 解决jvm GC过于频繁的问题

JVM配置是这样的: jre1.8, 堆的最大空间是3G,线程执行栈的大小是256K,新生代的大小是1G,老年代的大小是2G.如下图:结果在日志发现了这个错误:Caused by: java.lang.OutOfMemoryError: GC overhead limit exceeded这个错误产生的原因是,jvm在进行gc的时候, 使用大于98%以上的时间去释放小于2%的heap空间时,才会报这个异常。这其实是jvm预判将会发生OutOfMemery异常,就提早抛出这个...

2020-08-07 15:44:37 9925 1

原创 Visual GC 插件

Spaces窗口:Metaspace:方法区,如果JDK1.8之前的版本,就是Perm,JDK7和之前的版本都是以永久代(PermGen)来实现方法区的,JDK8之后改用元空间来实现(MetaSpace)。 Old:老年代 Eden: 新生代Eden区 S0和S1:新生代的两个 Survivor 区Graphs窗口:该窗口区域包含8个图标,以时间为横坐标动态展示各个指标的运行状态下面从上往下对上图中的各个图标表及其状态进行说明 Compile Time:编译情况24266

2020-08-07 15:11:13 148

原创 JVM老年代垃圾回收Full GC

老年代GC:FullGC 是老年代的GC,在新生代如果说存在的对象或者说新创建 出来的对象由于某些原因需要移动到老年代中,但是老年代中压根就没有这么大的内存空间去容纳这个对象, 那么就会引发一次FullGC,如果在执行完FullGC之后,还是没有办法给这些对象分配内存,那么凉了,该抛出异常了,异常类型就是OutOfMemoryError。而FullGC使用的是和MinorGC不一样的算法,它使用的是标记清除算法,听名字,挺好理解的,来波图示解析一波。深入了解JVM一书中的图示是这个样子的,看名.

2020-08-07 13:53:56 4184

原创 Java接口的幂等性

投资理财的案例,用户可以充值、投资、提现,使用第三方支付进行充值,过程如下:step1:用户网站中输入充值金额step2:后端创建充值订单入库,此时订单是待支付状态step3:跳转到第三方支付页面,输入银行卡,然后确认支付step4:第三方支付通过我方提供的回调接口异步将充值结果告知我方问题出在了step4,逻辑如下://返回通知处理结果,true:处理成功;false:处理失败,第三方会继续重试publicbooleanrechargeNotice(第三方支付充值结果){..

2020-07-20 10:57:16 1478

原创 IDEA 将项目打包war包

准备工作  IntelliJ IDEA开发工具  可以正常运行的Java项目打包步骤  1.打开Project Structure,如图所示操作  鼠标点击加号或通过右键add:  按个人习惯修改:  修改生成的war名字,也就是上图中WEB-INF上面的红框中的内容,此处不能直接修改,而应该使用快捷键修改与修改完成(快捷键鼠标右键Rename可看到)  上图都完成后  随后在上图配置所在路径下生成了mulit-dat...

2020-07-16 11:40:26 258

原创 项目经理经验(一)

1.请简要描述一下你自己,你的背景实际上,这是一个典型的求职面试问题。你不仅可以在项目经理面试中面对这个问题,还可以在任何面试中面对这个问题。将此问题视为自我推销的机会。因为,你将了解你的背景,你的教育,工作经历以及你已完成的项目。如果你是一位经验丰富的专业人士,求职者会在你的背景中寻找符合工作要求的关键词。例如,如果你是一名5年以上的专业人士寻找项目经理职位,那么在回答此项目经理面试问题时,描述你的出生地,你长大的地方以及你的大学教育。这些不应超过两三句话。然后,你应该突出显示背景中与你申请的

2020-07-09 10:11:38 741

原创 Axure设置Tab切换

一、制作Tab页面1、 拖入一个矩形去掉3个边,只留下下单边,如果你用的我的《快速原型组件库》,可以直接拖入“下单边矩形”,设置一下尺寸为100×40(尺寸这种东西,可以按自己需求来,下同),起个名字Tab1(给原件起名字这个习惯一定要养成,方便自己,也方便别人)2、 交互样式设置设置了鼠标悬停样式及选定样式,此处可根据你的需求自行调整样式3、设置选项组名称选项组的功能,一般用在表单的单选框上,相同的选项组,可以联动单选,此处,我们可以将普通元件编组,同样让其具有..

2020-07-02 15:42:20 797

原创 项目管理之项目推进

一、项目推进不了的原因公司内部资源缺失 技术骨干流失 项目执行者抵触 技术难度大导致进度停滞或者延迟 项目管理能力不足 团队成员疲劳工作,消极应付

2020-06-20 19:50:38 200

原创 项目经理注意事项

1. 在全面启动开发前,功能和原型图要进行细致的设计,切勿在开发过程中进行功能需求变更,这样会引起开发人员的强烈反感。例子1:安徽公安的注册与申请的需求变更,导致原型图变化,引起开发人员的反感...

2020-06-18 18:45:38 188

原创 MyBatis标签

1. foreach<foreach collection="resourceTypeList" item="resourceType" open="(" separator="," close=")" > #{resourceType}</foreach>item:集合中元素迭代时的别名,该参数为必选。 index:在list和数组中,index是元素的序号,在map中,index是元素的key,该参数可选 open:foreach代码的开始符号,一般是(

2020-06-15 16:49:28 238

原创 Mysql VARIABLES

1.SHOW VARIABLES:显示所有变量(1) show Variables like '%table_names'查看lower_case_table_names的值,0代表区分,1代表不区分

2020-06-15 11:08:14 140

原创 Axure设置弹出框

1、从libraries拉一个动态面板2、双击动态面板在双击state1,当你看到的虚线框就是弹出窗口的大小3、在弹出框中加入相应的元件4、回到page主界面,这时候的弹出框是显示出来的。5、选中动态面板,右键“设为隐藏”6、选中按钮->属性->鼠标单击时7、点击元件->显示/隐藏->显示,在配置动作时勾选动态面板...

2020-06-01 17:08:29 2016

原创 Redis基本操作

1. 增加查询String批量增加查询String2. 增加查询Hash增加查询Hash多个值3. 增加查询List:有序,可重复4. 增加查询Set:无序,不可重复5. 增加查询zset: 有序(会有个用来排序的分数字段,),不可重复6. 删除key: del stringtest37. 设置Key的过期时间:expire stringtest2 10(秒)...

2020-05-28 20:19:22 131

原创 Java List 排序

1. 对于普通类型(Stirng、Integer)升序:Collections.sort(arrayList),降序:Collections.reverse(arrayList) public void testSortData(){ ArrayList<String> arrayList = new ArrayList<String>(5); arrayList.add("AAAA"); arrayList.add("CC

2020-05-28 15:15:25 202

原创 SOA和微服务区别

1、SOA(面向服务架构)是一种架构设计模式,SOAP、REST、RPC是根据这种设计模式构建出来的规范,其中SOAP(Web Service)通俗理解就是http+xml的形式,REST就是http+json的形式,RPC是基于socket的形式。2、SOA和微服务区别(1)基于企业服务总线(ESB)的SOA(2)SOA应用:比如用户注册功能,主要是往数据库里插入一笔用户数据及相关角色数据,Java Web需要实现一套注册功能,安卓需要实现一套注册功能,IOS需要实现一套注册功能,代码工作

2020-05-27 16:38:07 5566

原创 Java注解

Java注解又称Java标注,Java语言中的类、方法、变量、参数和包等都可以被标注。和Javadoc不同,Java标注可以通过反射获取注解内容。在编译器生成类文件时,注解可以被嵌入到字节码中。Java虚拟机可以保留注解内容,在运行时可以获取到注解内容。1、内置注解Java 定义了一套内置注解,如下所示:(1)、作用在代码的注解是@Override- 检查该方法是否是重写方法。如果发现其父类,或者是引用的接口中并没有该方法时,会报编译错误。 @Deprecated- 标记过时方法。如果使..

2020-05-22 15:58:53 112

原创 Java反射

反射是指java语言在运行时,能够通过类名动态获取此类的构造体、字段、方法。(1)获取构造体 public static void getConstructor(){ try { Class clazz = Class.forName("reflected.Student");//Student.class; Constructor[] arrayCon = clazz.getConstructors(); for(Constructor c : arrayCon){

2020-05-22 11:37:29 91

原创 Mysql事务日志及MVCC

1. 事务日志可以帮助提高事务的效率。使用事务日志,存储引擎在修改表的数据时只需要修改其内存拷贝,再把该修改行为记录到持久在硬盘上的事务日志中,而不用每次都将修改的数据本身持久到磁盘。事务日志采用的是追加的方式,因此写日志的操作是磁盘上一小块区域内的顺序I/O,而不像随机I/O需要在磁盘的多个地方移动磁头,所以采用事务日志的方式相对来说要快得多。事务日志持久以后,内存中被修改的数据在后台可以慢慢地刷回到磁盘,通常称之为预写式日志(Write-Ahead Logging),修改数据需要写两次磁盘。MySQ

2020-05-19 15:36:39 169

原创 设计模式之模板模式

模板模式就是通过抽象类来定义一个逻辑模板,然后将无法决定的部分抽象成抽象类交由子类来实现,一般这些抽象类的调用逻辑还是在抽象类中完成的。模板就是定义一个框架,比如盖房子,我们定义一个模板:房子要封闭,有门,有窗等等,但是要什么样的门,什么样的窗,这些并不在模板中描述,这个交给子类来完善,比如门使用防盗门,窗使用北向的窗等等。...

2020-05-18 17:19:35 86

原创 Session和Cookie的区别

HTTP协议是无状态的协议。一旦数据交换完毕,客户端与服务器端的连接就会关闭,再次交换数据需要建立新的连接,这就意味着服务器无法从连接上跟踪会话。 会话,指用户登录网站后的一系列动作,比如浏览商品添加到购物车并购买。会话(Session)跟踪是Web程序中常用的技术,用来跟踪用户的整个会话。常用的会话跟踪技术是Cookie与Session,Cookie通过在客户端记录信息确定用户身份,Session通过在服务器端记录信息确定用户身份。1. Cookie实际上是一小段的文本信息。客...

2020-05-18 17:08:47 283 1

原创 Servlet

1. 简介:Java Servlet 是运行在 Web 服务器或应用服务器上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。使用 Servlet,您可以收集来自网页表单的用户输入,呈现来自数据库或者其他源的记录,还可以动态创建网页。2. 架构:下图显示了 Servlet 在 Web 应用程序中的位置。3. 用法:(1) web.xml中配置(2)servlet.Hello(3) Listener: tomcat.

2020-05-16 16:49:42 122

空空如也

空空如也

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

TA关注的人

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