自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 设计模式——总结简单工厂,工厂方法和抽象工厂

前言简单总结为什么会出现工厂,工厂方法与简单工厂还有抽象工厂之间有啥区别。

2020-03-31 21:47:36 13892 14

原创 原型图是什么

什么是原型图?简单来说,原型图就是产品成型前的简单框架,主要用于展示页面的布局和各个功能键的交互,让产品的初步构思有更直观的展现。它为开发相关的功能边界,需求细节和产品期望提供了非常具象化的展示。也是创意成为成熟产品之前非常重要的一步。原型是创造性思维过程和最终产品之间的桥梁。原型图的作用1、帮助设计师将抽象的界面具体地展现,辅助设计;2、帮助开发工程师了解界面在系统中的作用,辅助开发;3、辅助产品测试员制定产品测试计划;4、作为产品经理、设计师、开发工程师等群体在产品设计与开发的沟通工具;5

2022-05-16 16:06:05 4975

原创 E-R图验收规范

一、概念E-R图也称实体-联系图(Entity Relationship Diagram),提供了表示实体类型、属性和联系的方法,用来描述现实世界的概念模型举例:二、组成部分实体:一般认为,客观上可以相互区分的事物就是实体,实体可以是具体的人和物,也可以是抽象的概念与联系。使用矩形表示:属性:实体所具有的某一特性,一个实体可由若干个属性来刻画。属性不能脱离实体,属性是相对实体而言的。对于主属性名,则在其名称下划一下划线使用椭圆形来表示:联系:也成关系,信息世界中反映实体内部或实体之间的关

2022-05-16 15:10:06 1498

原创 类图的规范

1、样式类图的样式包括一下几种,接口:抽象类:类:接口一定有 <> 的标识,接口中的方法必须斜体(默认都是抽象方法)抽象类名和抽象方法必须斜体,非抽象方法不斜体注意访问控制符、返回值、参数等格式的正确性类中属性、方法要描述全面类中使用注解或者new的方式声明的其他类的成员变量也是该类的属性:原因一:对此类本身而言,此类的类内结构包括属性(成员变量)和方法(成员方法)原因二:对类间关系而言,虽然这个类与其他类(这个类声明其他类对象)之间有关联(或其他关系),但是这个关系

2022-05-16 15:00:39 788

原创 业务架构图规范

业务架构图是什么业务架构图是通过描绘业务上下层关系,梳理一整套完整、简单的业务视图,降低业务系统的复杂度,提高客户理解度,最终给客户最直观的业务体现的一个展现方式。下面我说一些画业务架构图的规范宏观出发1、 整体结构的上下顺序为上级依赖于下级。2、色彩搭配不要太唐突,最好有渐变性。2、 图形间宽松程度适宜,对称程度适宜。5、虚线框和实线框的结合,实线框表示的关系强烈程度高于虚线框,虚线框更重于逻辑上的关联。注意:架构图让读者看到的第一眼,应该给读者留个好印象,从色彩搭配上来看,颜色不超过5个,

2022-05-16 14:47:59 447

原创 软件产品设计的一些感悟

产品设计——按钮设计:软件页面的按钮的设计可以直接的体现出我们的软件产品设计原则,按钮的设计我们要全心全意的为人民服务,这样我们的产品才能活下去。下面几点是我对按钮的一些总结:1.某些按钮在没有必要的时候不显示出来,有必要的时候才展示出来;并且按钮跟着屏幕放大缩小自适应,位置跟着动2.页面展示类型-全部展示和分页展示按钮两个可以合为一个,选这个的时候显示另一个,这样可以是页面简洁欸,操作简单,体现我们为客户着想。3.页面展示类型-全部展示和分页展示按钮时隐时现:如果数据本来就不够一页,就不用展示这个

2022-05-03 08:57:46 392 1

原创 从软件产品设计体会你的老师每天都在你面前

我们产品设计的理念,全心全意为人们服务;如果你设计的软件猪不能使你就是猪;让我们每一个使用者都成为我们产品的设计者以及无处不按钮无处不入口等等这些理念,我们不能光是在口头上空喊,还要在开发过程中去落实。我们的身边有无数种这样好的例子值得我们去借鉴,我们要学会去发现。去跟成功者借鉴成功的经验。微软公司设计的很多产品我们平常都在用,比如Windows操作系统和Office,这些产品无疑都是非常非常成功的,从这些软件中我们就能发现很多符合我们设计理念的,成功的产品设计。比如Windows的文件资源管理器,无论点

2022-04-27 21:34:29 244

原创 积分池图标

2022-01-23 14:45:11 255 2

原创 思考思想总结

高效能人士的7个习惯习惯一:积极主动:机会总是留给有准备的人的,积极主动的人总是可以把握很多机会。习惯二:以始为终:终身学习的思想,学习是没有终点的。习惯三:要事第一:事情根据紧急与重要程度分为四个区域,要先做重要紧急的事情。习惯四:双赢思维:双方寻求获利,互相尊重。习惯五:知己知彼:己所不欲勿施于人,要像理解自己一样理解别人。习惯六:综合统效:统合综效的基础是尊重、赞赏甚至庆幸彼此间的差异,它是某种创造性的合作,1+1=3或者更多。习惯七:不断更新(磨刀不误砍柴工)高效能人士会不断在生活的

2021-12-31 19:36:20 437

原创 【mybaits基础使用】--什么是mybaits

前言: 在总结这边博客之前其实自己已经在使用mybatis了,但是对于mybatis只是停留在了一个简单的使用上面,那么我们为什么不使用JDBC?而要用Mybatis? 下面就来介绍一下 JDBC存在的问题: 数据库连接创建、释放频繁造成系统资源浪费从而影响系统性能,如果使用数据库连接池可解决此问题。Sql 语句在代码中硬编码,造成代码不易维护,实际应用 sql 变化的可能较大,sql 变动需要改变 java 代码。使用 preparedSt...

2021-12-31 17:13:18 711 1

原创 SpringData JPA 基本使用(Springboot集成)

什么是Spring Data:

2021-12-29 20:06:32 755 2

原创 Linux安装MySQL5.7----超级简单详细

转载一篇超级详细的linux安装mysql的教程,超级简单,一次就成功转载地址:https://blog.csdn.net/qq_37598011/article/details/93489404 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads   解压 tar -xvf mysql-5.7.26-linux-glibc2.12-x86_64.tar  

2021-12-29 10:24:24 578

原创 @Autowire和@Resource

注解@Autowire和@Resource,我们都知道都可以用来装配bean,将对象加载到容器之中,但是他们具体有什么区别,现在简单说明一下这俩个注解的区别。@Autowired@Autowired默认按照类型装配,默认情况下它要求依赖对象必须存在,如果允许为null,可以设置它required属性为falsee@Resource装配顺序如果同时指定name和type,则从容器中查找唯一匹配的bean装配,找不到则抛出异常如果指定name属性,则从容器中查找名称匹配的bean装配,找不到则抛出异常

2021-12-19 08:18:01 1325

原创 Java 将HasMap按照value进行排序

将HashMap按照value的数量从小到大进行排序,输出为LinkedHashMappublic static LinkedHashMap<String, Integer> sortMap(Map<String, Integer> map) { LinkedHashMap<String, Integer> linkedHashMap = new LinkedHashMap<>(); //将map.entrySet()转换成l

2021-11-29 11:33:05 4035

原创 linux常用命令-查看进程,端口号,防火墙等

常用的linux命令:• 查看 jar 是否启动 ,如已启动,会显示进程ps -ef|grep xxx.jar• 杀进程 kill -9 pid(pid为进程标识号)• 查看防火墙开启的端口firewall-cmd --permanent --zone=public --list-ports• 验证8080端口是否开启firewall-cmd --zone=public --query-port=8080/tcp• 移除防火墙端口firewall-cmd --permanent --re

2021-11-28 11:43:25 4246

原创 nginx报错no live upstreams while connecting to upstream

前端请求后端服务时一直报错 502 bad gateway,查看后端的服务是正常启动的。后来又查看nginx的错误日志,发现请求后端接口时 nginx报错no live upstreams while connecting to upstream,查看该错误的解释可以得到的结果是upstream中没有可以提供服务的server ,即nginx已经发现不了存活的后端了,但是,我直接访问后端的server确是可以使用的,证明server端可用.最后查找文档,发现问题出现在业务上要求保持会话,但是nginx到后

2021-11-27 11:01:26 27901

原创 sprint 周期总结

前言从进入godone项目组到转到AR项目组再到权限项目组10个sprint周期一共经历了三个项目的开发,在开发中进行学习,感觉成长收获非常大。下面说一下我在这些周期中的收获:一、自我总结经历了10个项目周期的开发,感觉各方面的成长收获都很大,在刚进入godone项目组时,我的开发能力非常薄弱,组长分配的任务也经常不能做完,遇到的困难也很多,在进行了一段时间的开发后,首先基础技术进步了很多,在前后端开发,运维部署等方面学到了很多,对sprint周期的整体也也更熟练,对时间的把握也有了提升。二、认识

2021-11-19 08:22:47 4638 2

转载 超详细MySQL安装及基本使用教程

一、下载MySQL 首先,去数据库的官网http://www.mysql.com下载MySQL。 点击进入后的首页如下:  然后点击downloads,community,选择MySQL Community Server。如下图:  滑到下面,找到Recommended Download,然后点击go to download page。如下图:  点击download进入下载页面选择No thanks, just start ...

2021-10-29 15:17:05 7340 2

原创 什么是xxjob

概述​ 什么是XXL-JOB?​ 官方简介:XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用​ XXL-JOB的优点特性:​ 1、简单:支持通过Web页面对任务进行CRUD操作,操作简单,一分钟上手;​ 2、动态:支持动态修改任务状态、启动/停止任务,以及终止运行中任务,即时生效;​ 3、调度中心HA(中心式):调度采用中心式设计,“调度中心”自研调度组件并支持集群部署,可保证调度中心HA;​

2021-10-29 15:09:43 10576 2

原创 Linux设置jar包开机自启动

首先编写一个启动jar包的脚本,位置随意,这里以/home/java为例,文件名叫startup.sh。export JAVA_HOME=/usr/local/java/jdk1.8.0_152export PATH=$JAVA_HOME/bin/:$PATHnohup java -jar /usr/local/sz/ar-plus.jar > /usr/local/sz/ar-plus.log 2>1&chmod 777 /home/java/ar-plus.logcd /

2021-10-29 15:05:22 6817 2

原创 2021年10月份自考感悟

自考学习方法和之前的一样,三遍读书法,快速阅读,思维导图,小组讨论。感觉小组讨论的学习效率是最高的,因为不会的同学们会教你,然后会督促你学习,比自己一个人好很多,强烈推荐。最好的学习时间就是考试后,现在学的内容多少都会对以后有帮助的,你学习的所有知识都会在生活中回馈你。所以考试之后看看书会对你有更大的帮助。...

2021-10-18 14:13:05 5222 6

转载 @RequestParam,@PathParam,@PathVariable等注解区别

@RequestParam 和 @PathVariable 注解是用于从request中接收请求的,两个都可以接收参数,关键点不同的是@RequestParam 是从request里面拿取值,而 @PathVariable 是从一个URI模板里面来填充@RequestParam看下面一段代码:http://localhost:8080/springmvc/hello/101?param1=10&param2=20根据上面的这个URL,你可以用这样的方式来进行获取public String

2021-09-26 16:51:17 4708 3

原创 Java 如何对List集合中的对象进行排序

一、要排序的类实现Comparable接口//一个实体类,根据creatTime进行排序public class UserInfoVo implements Comparable{ private Long id; private String name; private Long creatTime; //这里要重写Comparable<>中的compareTo()方法,设置排序标准 @Override public int compareTo(Userinfo

2021-09-26 15:11:10 5593 4

原创 Java中list排序

1.Collections排序1)基本类型的元素List demo_list = new ArrayList<>();Collections.sort(demo_list );2)实体类元素的排序:通过某个成员变量的值做比较方式一:Collections.sort(demo_list , (Bean b1, Bean b2) -> b2.getXxx().compareTo(b31.getXxx()));方式二:demo_list .sort(Comparator.compar

2021-09-26 14:55:06 4805 4

原创 Java中数组的定义与使用

Java 中定义数组的语法有两种:    type arrayName[];    type[] arrayName;type 为Java中的任意数据类型,包括基本类型和组合类型,arrayName为数组名,必须是一个合法的标识符,[ ] 指明该变量是一个数组类型变量。例如:int demoArray[];int[] demoArray;这两种形式没有区别,使用效果完全一样,读者可根据自己的编程习惯选择。与C、C++不同,Java在定义数组.

2021-09-26 14:52:00 7854 4

原创 nginx反向代理和负载均衡

什么是nginxnginx是一个基于C实现的自由的、开源的、高性能HTTP和反向代理服务器同时也是IMAP/POP3/SMTP代理服务器。Nginx以事件驱动方式编写,所以有很好的性能同时也是一个非常高效的反向代理、负载均衡服务器为什么使用nginx性能上:nginx占用极少的系统资源,能支持更多的并发连接,达到更高的访问效率;功能上:nginx是优秀的代理服务器和负载均衡服务器;安装配置上:nginx安装简单,配置灵活部署:nginx支持热部署,启动速度特别快,还可

2021-06-30 15:46:19 4660 4

原创 gitlab服务器基本命令

防火墙systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启动sudo systemctl status firewalld ##查看防火墙状态,是否是runningsudo lsof -i:9090 #查看占用的端口号Netstat -an | grep 9090 #查看端口号:yum install lsof #安

2021-06-30 15:26:10 5077 5

原创 gitlab服务器设置定时备份

手动备份:gitlab-rake gitlab:backups:create定时备份:sudo vim /etc/crontab重启crond服务sudo systemctl restart crond当前停止gitlab服务,然后重启sudo gitlab-ctl stopshutdown -r now设置定时清理即可sudo vim /etc/gitlab/gitlab.rb gitlab_rails['manage_backup_path'] = true

2021-06-30 15:13:02 4566 4

原创 gitlab搭建

查看和安装插件1.首先我们查看防火墙是否开启##查看防火墙状态,是否是runningsudo systemctl status firewalld 2.安装插件方便我们查看端口:##安装netstat:yum install net-tools##查看端口号:Netstat -an | grep 9090 ##安装lsof:yum install lsof##查看端口号: sudo lsof -i :8080安装服务1.1 安装SSH协议#安装SSH服务命令sudo

2021-06-30 15:05:10 4479 2

原创 【Javaweb】Cookie和Session

2021-05-31 20:26:08 4375 8

原创 【JavaWeb】Servlet和HTTP请求协议

2021-05-31 20:24:50 4175 7

原创 【JavaWeb】Tomcat基本操作

2021-05-31 20:23:38 4027 5

原创 MySQL多表查询语句

MySQL多表查询语句1.内连接查询1.隐式内连接:使用where条件消除无用数据 例子: --查询所有员工信息和对应的部门信息 SELECT * FROM emp,dept WHERE emp.dept_id=dept.id; --查询员工表的姓名,性别,部门表的名称 SELECT t1.name, -- 员工表姓名 t1.gender, -- 员工表性别 t2.name -- 部门表名称 FROM emp t1, dept t2

2021-05-30 09:02:56 8837 17

转载 深入理解 Java中的 流 (Stream)

首先,流是什么?流是个抽象的概念,是对输入输出设备的抽象,Java程序中,对于数据的输入/输出操作都是以“流”的方式进行。设备可以是文件,网络,内存等。流具有方向性,至于是输入流还是输出流则是一个相对的概念,一般以程序为参考,如果数据的流向是程序至设备,我们成为输出流,反之我们称为输入流。可以将流想象成一个“水流管道”,水流就在这管道中形成了,自然就出现了方向的概念。当程序需要从某个数据源读入数据的时候,就会开启一个输入流,数据源可以是文件、内存或网络等等。相反地,需要写出数据到某个数据源目的地

2021-04-30 16:00:39 4859 16

原创 【Java基础】StringUtils中isNotBlank和isNotEmpty的区别

isNotEmpty将空格也作为参数,isNotBlank则排除空格参数1,isNotEmpty(str)等价于 str != null && str.length > 0。2,isNotBlank(str) 等价于 str != null && str.length > 0 && str.trim().length > 0。同理:1,isEmpty 等价于 str == null || str.length == 0。2,isBl

2021-04-30 14:59:06 5777 16

原创 【Java基础】 Calendar类

Calendar 类是java.util包的一个抽象的日历类,Calendar类的功能要比Date类强大很多,而且在实现方式上也比Date类要复杂一些。Calendar类是一个抽象类,在实际使用时实现特定的子类的对象,创建对象的过程对程序员来说是透明的,只需要使用getInstance方法创建即可。创建对象Calendar c = Calendar.getInstance();//默认是当前日期//创建一个代表2009年6月12日的Calendar对象Calendar c1 = Calendar

2021-04-28 15:59:26 4252 20

原创 自考

这次自考报考了三科,计算机网络原理,近代史,马克思,我发现只有近代史是最简单的,也是心里最有谱的。简单来说,计算机网络就是没看的全考了。最直观的感受就是一定要刷真题,往年的真题的题型是不会变的,只靠自己单买的卷子不太靠谱。回首过去的这一个多月的自考筹备,感触还是良多的,我也觉得自己过得是比较充实而有意义的,有很多收获,学到了很多新的知识,总的来说自己成熟了很多。如果这次全都过了,我也就还差一科就结束自己的自考之旅了,希望能一帆风顺。自考学习方法和之前的一样,三遍读书法,快速阅读,思维导图,小组讨论。

2021-04-13 19:52:56 4107 23

原创 【Java基础】String类、StringBuffer和StringBuilder类

StringString类继承了object类,用来描述字符串。Java中定义了String类用来处理字符串,并提供了一系列操作字符串的方法,他们都封装在java.lang包中,因此不需要导入包就可以直接使用。String类使用了final修饰符,表示该类不可以被重写。String类是不可改变的,所以你一旦创建了String对象,那它的值就无法改变了。String s1 = "abc"; // 常量池String s2 = new String("abc"); //

2021-03-29 14:47:32 4168 30

原创 【Java基础】Character类

Character 类用于对单个字符进行操作。Character 类在对象中包装一个基本类型 char 的值Character类提供了一系列方法来操纵字符。你可以使用Character的构造方法创建一个Character类对象,例如:Character ch = new Character('a');在某些情况下,Java编译器会自动创建一个Character对象。例如,将一个char类型的参数传递给需要一个Character类型参数的方法时,那么编译器会自动地将char类型参数转换为Chara

2021-03-28 15:24:42 4223 21

原创 【Java基础】java中的自动装箱与拆箱

java中的自动装箱与拆箱简单一点说,装箱就是自动将基本数据类型转换为包装器类型;拆箱就是自动将包装器类型转换为基本数据类型。public class Number { public static void main(String[] args) { Integer i1 = 128; // 装箱,相当于 Integer.valueOf(128); int t = i1; //相当于 i1.intValue() 拆箱 System.out

2021-03-27 09:20:00 4163 21

空空如也

空空如也

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

TA关注的人

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