自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Day24T31用户系统权限实现

2021-11-29 23:13:04 2818

原创 Day22T31单元测试与系统安全规约

一、单元测试规约软件测试指的就是通过手工对被测对象进行测试操作。以此来验证实际结果与预期之间是否存在差异。软件测试目的: 验证软件的正确性 找出软件中的bug1.单元测试的AIR原则A:Automatic 自动化I:Idependent 独立性R:Repeatable 可重复性2.BCDE原则B:Border 边界值测试C:Correct 正确的输入,并得到预期的结果D:Design 与设计文档相结合E:Error 证明程序有错...

2021-11-26 23:51:02 2486

原创 21/11/24工作学习总结

跨域条件: 跨Ip,跨端口,跨协议:Http->HttpsSpring框架,对象复制方法:BeanUtils.copyProperties(source,target);idea快捷使用: 寻找断点:代码编辑窗口下方debug的操作栏点击下两个断点符号,可显示当前项目所有断点。 禁用断点:代码编辑窗口下方debug的操作栏点击下断点加斜杠,可切换断点是否生效...

2021-11-25 05:11:20 504

原创 T31Day21一周学习总结

T31课程学习到第三周了,学习到后面听的大多是懵懵懂懂,这大概就是知道的越多就越觉得自己无知吧。这周主要学习的课程有Java开发避坑指南、集合与并发编程以及懵懵懂懂的Oath2。这周Java开发避坑指南,还是教会了我很多开发方面的注意事项,比如:浮点数的转化以及在二进制中的存储;日期对象格式的发展从Date、SimpleDateFormat、Calendar到LocalDate、LocalTime、LocalDateTime、Instant等,在现在的高并发编程中线程安全是一个非常重要的保障

2021-11-21 22:24:46 605

原创 一周工作总结

1、Idea使用时无故自动关闭或者被迫强制结束进程,导致已开启的服务器未能断开连接,占用端口号,导致再启动服务时显示端口号被占用。解:打开cmd窗口执行 netstat -ano | findstr 被占用的端口号,得到Pid;然后执行taskkill /f /t /im可杀死该程序,使被占用端口解放。2.String.format的使用。(仅列举常用的) %s,%S 占位一个字符串 %c,%C 占位一个字符

2021-11-20 14:38:51 351

原创 每日发现 21/11/16

git的新建文件使用revert可以去掉add的绿色属性。

2021-11-16 10:01:11 214

原创 T31Day19Oath2

一、Oath2是什么?Oath2是目前最流行的授权协议,用来授权第三方应用,获取用户数据。Oauth2授权模式: 授权码模式:最完整和严谨的授权码模式,第三方平台登陆都是此模式;安全性最高; 简化模式:省略授权码阶段,客户端是纯静态页面采用此模式;安全性高; 密码模式:把用户名和密码告诉客户端,对客户端高度信任,比如客户单和认证服务器是同一公司;安全性一般; 客户端模式:直接以客户端名义申请令牌,很少用,安全性最差;二、为什...

2021-11-15 23:55:04 237

原创 T31Day17集合与并发编程

一、集合规约数据结构:指逻辑意义上的数据组织方式及其相应的处理方式。大致分为: 线性结构 树结构 图结构 哈希结构HashMap: 分为哈希槽(slot)和哈希桶(bucket),大致存储结构为数组加链表,链表在数据比较多的时候会进化成红黑树。 在执行steam流编程过程中想要使用Collectors.toMap()时,要注意如果键值可能重复需要一个BinaryOperator参数类型的参...

2021-11-15 23:34:47 691

原创 T31Day15Java开发避坑指南

一、浮点数据的处理上节课孤尽老师给我们讲了浮点数为什么会出现精度损失的问题以及浮点数在二进制中存储的一个形式,这节课更加详细的讲述了浮点数由10进制转换到2进制的一个计算过程例:5..2F 该数字的整数部分为101,小数部分应为0011001100110011001100110011...,因为尾数位置的有效位数只有23位,所以只能取到红色部分,黑色部分省略,这就是为什么浮点数会存在精度损失,所以暂时可表示为101.00110011001100110011001;然后将该数使用科学计数法计数得:1.

2021-11-11 00:35:53 379

原创 T31Day14一周学习总结

这周主要学习了工程结构规约,技术架构选型,以及编码规约。一、工程结构规约这节课主要学到了项目分层,MVC框架的发展,以及现在java工程应用最广泛的包管理发工具Meavn,Meavn可以帮助我们更高效的开发Java项目,主要功能包括依赖管理,打包,主要是帮我们统一了目录格式,是代码的维护成本变得更低了。二、技术架构选型这节课学到了微服务框架的一个发展历史,由最早的单体应用到SOA架构在到现在的微服务,更多的是学到了一个各个分层开源项目的一个技术选型,及功能对比,如数据库连接池的主流技术有Dr

2021-11-10 23:52:38 953

原创 T31Day12编码规约

一、为什么要有编码规约?熵增定律:只要我们没有外力干预代码规范,我们的代码总有一天会无可救药。熵增定理:任何系统在没有外力有序干预下,一定会往混乱无序的方向发展。代码规范不一致带来的最直接的后果就是代码的生产力损耗。1.好的代码规约带来的效益:减少代码维护成本。改善可读性提高团队开发的合作效率锻炼出更加严谨的思维身心愉快二、代码格式与命名风格1.命名体现代码元素特征 ...

2021-11-08 00:10:23 307

原创 T31Day10技术架构选型

一、关于技术选型为什么要进行技术选型: 降低研发成本,提高研发效率。1.微服务架构的诞生单体应用:所有的模块打包到一起部署运行;例如打包一个War包放到一个Tomcat下运行,这种架构也叫巨石型应用架构,在开发小型项目上有独特优势: 易于调试、部署,运维方便。缺点:1、不可靠。任何模块的一个bug,可能拖垮整个应用 2、单维扩展。只能通过运行更多的服务器水平扩展,而不同的应用服务对资源的需求不同 ...

2021-11-07 23:19:13 197

原创 T31Day08工程结构规约

一、应用分层为什么要分层?可扩展性、可维护性。计算机领域的任何问题都可以通过加一个中间层来解决推荐分层结构:分层的异常处理:DAO层:异常类型很多,不需要打日志。Service层:必须记录出错日志到磁盘,尽可能带上参数信息,保护案发现场。Web层:绝不能往上抛异常,应跳转到友好错误页面,友好的提示错误信息。开放接口层:将异常处理成错误码和错误信息方式返回。分层领域模型:DO(Date Object):此对象与数据库表结构一一对应,通过DAO层向上传输数据源对象

2021-11-02 23:40:06 191

原创 T31Day07一周学习总结

回顾上一周所学的内容,主要有架构设计、数据库建库建表规约、异常与日志设计规约等等更偏向开始写代码前的规划工作,正所谓磨刀不误砍柴工,在拿到项目需求后,做一个需求分析设计,再做一个整体的规划,一个好的架构设计对软件制作过程绝对会起到事半功倍的效果。这一周的学习对我个人来说,收获还是比较大的。收获: 对于我一个刚入行业没多久的软件开发工程师来说,架构设计一节课无疑是扩宽了我对整个软件开发行业的视角,我曾简单的以为架构就是简简单单的做一个技术选型,比如数据库用xxx?亦或者是使用SSM框...

2021-11-02 00:14:35 223

原创 T31Day05异常处理和日志

一、Java异常机制1.Java异常处理流程2.Java异常处理机制3.Java异常体系二、异常处理设计与实践1.异常抛出与捕获的原则 非必要不使用异常 使用描述性消息抛出异常 力所能及的异常一定要处理 异常忽略要有理有据2. 特殊NPE场景及其处理对策①级联调用时容易产生NPM(NullPointException)String name=university.getColleage().g...

2021-11-01 00:09:18 180

原创 T31Day03Mysql规约

首先,什么是规约?规约经过相互协议规定下来的共同遵守的条款。为什么要制订规约?为了方便多人合作,及降低沟通成本。一、建表规约作用:解决数据库相关名称的纠结,选择合适的数据类型及长度。1.表和字段命名:必须使用小写字母或数字 禁止出现数字开头 禁止两个下划线中间只出现数字 不使用复数名词 禁用保留字 是与否概念的字段,必须使用 is_xxx 的方式命名注:对应的在...

2021-10-30 16:04:41 206

原创 T31项目Day01架构设计

一、需求分析理解和挖掘用户的诉求,以及背后的逻辑,转化成可行性的分析结果。从非结构化到结构化,确定系统的职责、模块的过程。1.需求边界2.用户故事3.用户路径问题的分层:用户问题:业务问题:产品问题:技术问题:二、七大设计原则1.单一职责高内聚、低耦合模块的名字非常重要...

2021-10-27 00:23:28 200

原创 2021-10-13

javainstanceof的用法 右边不能为null 左边为null时,一定返回FALSE。在判断时,比较的是构造时的类型。比如List list= new ArrayList<>();判断时用的是arraylist的类型。但因为arraylist实现list,所以list instanceof List 同样返回true。使用时,感觉上大多数时间可以理解为中文“是”的意思。比如Arraylist是一个listlinkedlist是一个listarraylist是一个Obje

2021-10-13 09:24:29 63

原创 续上篇继续在centos中安装docker和MySQL,redis等

点击进入docker官网:https://www.docker.com/get-started选择doc选择手册依次选择回到centos系统执行: sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-..

2021-08-29 16:57:20 89

原创 虚拟机centos/7环境搭建

萌新一枚,如有说错的地方,欢迎大佬批评指正,以下基本还原个人安装虚拟机遇到的问题。首先安装virtualBox,官方网址:https://www.virtualbox.org/选择自己电脑+对应的系统下载完成后,next默认安装就好。然后安装vagrant,官方网址:https://www.vagrantup.com/选择自己电脑+对应的系统下载完成后,默认安装就好。然后来到命令行窗口输入vagrant,提示一大堆命令,则安装成功。然后去这个网站查...

2021-08-29 13:58:44 182

原创 2021-08-27

参数类型为Long类型时,无法直接传入-1这类数字因为默认的是int类型,需先转化为long类型才能自动装箱。

2021-08-27 09:04:15 67

原创 springboot 自己遇到的问题

问题:拉同事的代码遇到build程序包不存在解决:使用meavn的命令mvn idea:idea

2021-07-06 17:45:07 73

空空如也

空空如也

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

TA关注的人

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