自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 论坛 (1)
  • 收藏
  • 关注

转载 Java项目中实体类(ENTITY,VO,DTO)的理解

真正开始接触JavaEE的编程,避不开的点。关于ENTITY,VO,DTO的理解一、ENTITYEntity(PO) 每个属性基本上都对应数据库表里面的某个字段。完全是一个符合Java Bean规范的纯Java对象,没有增加别的属性和方法。持久对象是由insert数据库创建,由数据库delete删除的。基本上持久对象生命周期和数据库密切相关。二、VO这个有两种理解,在我接触的项目中更加偏向 第二种 表现层对象(View Object)VO:值对象(Value Object),通常用于

2021-06-15 17:28:26 9

原创 软件缺陷及Jira系统的使用

目录一、软件缺陷报告样例:缺陷状态缺陷类型严重程度优先级缺陷标题详细描述:二、软件缺陷的跟踪流程三、Jira系统的使用Jira系统的使用者Jira中的问题的概念Jira系统中的工作流Jira系统中,测试提交问题Jira系统中,开发修复问题总结:目前正常的软件开发大多是敏捷开发,那么如何对软件的缺陷进行收集和跟踪就是需要考虑的问题了。Jira系统可以方便的解决软件开发过程所遇到的这些痛点。一、软件缺陷报告样例:其中包括:缺陷状

2021-04-24 23:45:50 83 1

原创 互联网常用项目发布方式---灰度发布和网关zuul的简单理解

网关zuulzuul 约 等于一系列过滤器。四种过滤器pre:在请求被路由之前调用,可利用这种过滤器 鉴权。选择微服务,记录日志,限流。route:在将请求路由到微服务调用,用于构建发送给微服务的请求,并用http clinet(或者ribbon)请求微服务。post:在调用微服务执行后。可用于添加header,记录日志,将响应发给客户端。error:在其他阶段发生错误是,走此过滤器。四种过滤器执行顺序:灰度发布:① 用户通过zuul网关进行服务调用;此时进行灰..

2021-01-14 10:52:15 86 1

原创 Eureka Client 源码详细解读

client端功能:1.注册服务2.拉取server列表到本地3.发送心跳,续约;定时拉取注册表4.发送下线①spring boot项目引入eureka-client依赖,并注入spring 容器。 在spring-boot项目中pom文件里面添加的依赖中的bean。是如何注册到spring-boot项目的spring容器中的呢? spring.factories文件是帮助spring-boot项目包以外的bean(即在pom文件中添加依赖中的bean)注册到...

2020-12-24 14:33:34 41

原创 SpringCloud之Eureka Server 源码解读

话不多说,直接上server端需要实现的功能:1.接受注册2.接受心跳3.服务剔除4.服务下线5.集群同步6.获取注册表中服务实例信息 Ⅰ、启动server 注册相关bean 通过pom依赖和springboot的自动装配,注册外部配置类,在spring-cloud-netflix-eureka-server-2.1.2.REALEASE.jar中的META-INF/spring.factoriesorg.springframework.boo...

2020-12-22 15:26:14 25

原创 关于MySQL的学习及相关调优

记录一下MySQL相关的学习历程MySQL简单看分成三层,client、server、存储引擎 用户从client端发送一个请求到server端, server端会创建一个连接信息【验证用户名密码等信息】 然后将用户发送的sql请求进行分析【经过分析器】,将sql的关键字等信息进行提取分析, 然后将sql语句进行优化【优化器,MySQL自带sql优化】 后面经过执行器,执行器将和存储引擎进行交互(经过存储引擎从磁盘读取数据,即IO) 优化分两种:R.

2020-12-07 13:22:17 35

原创 JVM详解,一篇文章带你入门

我们知道java语言是跨平台的,一处编译,到处运行。一处编译就是将java文件编译成.class字节码文件。只要编译的字节码文件符合jvm的规范,那么就可以在java虚拟机上运行,这也说明了它的语言无关性。那么什么是JVM?JVM是Java Virtual Machine(Java虚拟机)的缩写,是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机主要由字节码指令集、寄存器、栈、垃圾回收堆和存储方法域等构成。 JVM屏蔽了与具体操作系统平台相关的信息,使J

2020-11-30 09:44:07 124 2

原创 多线程学习--关于ReentrantLock源码详细解读

对于源码的阅读,有几点总结:1.跑不通的源码,不读;2.解决问题为目的;3.总体把握,先不扣细节;4.抓住一条线,往下阅读话不多说,简单demo断点调试,JDK版本为1.8public class TestReentrantLock { private static volatile int i = 0; public static void main(String[] args) { ReentrantLock lock = new Reent

2020-11-20 16:00:29 75 2

原创 Java NIO学习,一次读懂Java NIO

Java NIO 和 IO 的区别缓冲区存取数据的两个核心方法put:存入数据到缓冲区get:获取缓冲区中的数据缓冲区的四个核心属性capacity:容量,表示缓冲区中最大存储数据的容量,一旦声明不能改变position:位置,表示缓冲区中正在操作数据的位置limit:界限,表示缓冲区中可以操作数据的大小。(limit后的数据不能进行读写)mark:标记,表示记录当前position的位置,可以通过reset恢复到mark的位置0 <= mark <= p

2020-10-09 09:52:37 423 4

原创 spring ioc源码层看spring循环依赖的问题

首先,什么是循环依赖?如上图所示bean的创建流程:创建A----实例化-->依赖b---->创建B----->依赖a---->创建A出现了闭环,也就是spring的循环依赖bean的后置处理器9处调用spring ioc在创建bean过程中,会调用8次bean的后置处理器BeanPostProcessor,第九次是在bean销毁的时候调用在bean的创建过程中,bean可被划分为四种形态:概念态的bean、定义态的bean、纯洁态的bean、成熟态

2020-08-31 14:25:48 90 1

原创 RabbitMQ之死信队列和延迟队列

死信队列DLX,全称为 Dead-Letter-EXchange,可以称之为死信交换机,也有人称之为死信邮箱。当消息在一个队列中变成死信( dead message)之后,它能被重新发送到另—个交换机中,这个交换机就是DLX,绑定DLX的队列就称之为死信队列。消息变成死信,可能是由于以下的原因: 消息被拒绝 消息过期 队列达到最大长度 DLX也是一个正常的交换机,和一般的交换机没有区别,它能在任何的队列上被指定,实际上就是设置某一个队列的属性。当这个队列中存在死信时,

2020-08-17 09:55:53 311

原创 Navicat打开mysql表一致处于加载中,删除表也不行-----表死锁

导致原因:在做数据传输时由于VPN断开连接,导致数据传输失败,再次传输时,一直就没有速度,强制关闭了现象:Navicat打开mysql表一致处于加载中,表死锁了解决办法:① 在Navicat中执行:SHOW PROCESSLIST;查询到所有库的进程,如下图:发现最下面一个进程一直处于查询中的状态,再查看所有数据,发现有多处查询死锁表的进程一致处于查询中。死锁原因:并发操作表导致表死锁② 在Navicat中执行: kill 12598; (kill + 进程号(表I.

2020-08-07 15:22:13 219

原创 Mongodb去重查询

最近工作中用到Mongodb,于是花时间学习了一下,简单入门回归正题,简单的查询、修改、删除就不说了哈。去重查询//1.连接数据库,若存在即选中,若不存在就建立MongoDatabase mongoDatabase = DbUtils.getMongoDatabase();//2.获取连接MongoCollection mongoCollection = mongoDatabase.getCollection("数据库名");//去重查询DistinctIterable disti.

2020-07-30 15:42:05 1463

原创 mongodb简单入门学习

- MongoDB是一个NoSQL的数据库- MongoDB是一款文档型数据库- 数据库指的就是一个存储数据的仓库数据库可以使我们完成对数据的持久化的操作- MongoDB数据库中存储的数据的基本单位就是文档,MongoDB中存储的就是文档,所谓文档其实就是一个“JSON”- MongoDB中的“JSON”我们称为BSON,比普通的JSON的功能要更加的强大- MongoDB数据库使用的是JavaScri...

2020-07-14 08:55:47 79

原创 org.apache.ibatis.binding.BindingException: Parameter XXX not found.的问题

今天在学springcloud alibaba seata时,遇到一个问题。业务流程是:创建订单调用库存服务扣减库存,调用账户服务扣减账户余额,最后修改订单状态有三个服务,订单order服务,库存storage服务和账户account服务;将三个服务注册进alibaba的nacos,启动nacos,再启动seata,seata用来管理分布式服务间的事务进行测试时候报错:org.apache.ibatis.binding.BindingException: Parameter 'count'

2020-06-11 14:32:15 175

原创 SpringCloud Alibaba Nacos集群配置遇到的坑

这两天在学习SpringCloud Alibaba Nacos,搭建环境时,nginx+3个nacos+mysql,出现一些问题。至于liunx环境下的nginx、nacos、mysql安装,可参考附的博客。这里主要说下我遇到的几个不大不小的坑。首先,我是在虚拟机里面配置nacos集群1.安装nacos单机版配置具体安装nacos步骤可参考博客:https://blog.csdn.net/qq_42449963/article/details/105695053先复制出一个cluster.c

2020-06-08 23:20:03 648

原创 SpringCloud学习遇到的坑,通过Eureka中已经注册的服务名,调用不了已经注册的服务

前提:服务提供者8001已经成功注册到eureka但是根据服务名称调用接口时,失败private static final String PAYMENT_URL = "http://CLOUD-PAYMENT-SERVICE"; //集群配置@Resourceprivate RestTemplate restTemplate;@GetMapping(value="/consumer/payment/zipkin")public String paymentZipkin(.

2020-06-02 23:10:19 2725 1

原创 TeamViewer连接时闪退

之前由于TeamViewe被检测到用于商业用途,被限制时间了,就按照网上的办法,修改了mac地址,重新安装teamviewer了第一次远程时一切正常,第二天再远程时,出现闪退现象,重新安装teamviewer也没用。后来发现,远程连接的电脑安装的teamviewer版本是15.3版本,而本机安装的是15.2,连接时出现闪退手动更新本机的teamviewer后,进行登录验证,再次进行连接,一切正常。特此记录,希望能帮到遇到同样问题的你。...

2020-05-12 09:12:38 20374 2

原创 搭建Mybatis+Spring开发环境集成Mapper

标题搭建Mybatis+Spring开发环境集成Mapper加入 Maven 依赖信息<dependency> <groupId>tk.mybatis</groupId> <artifactId>mapper</artifactId> <version>4.0.0-beta3</versi...

2020-03-28 10:22:13 62

原创 git常见报错解决办法,fatal: the remote end hung up unexpectedly

问题一:上传GIT项目报fatal: the remote end hung up unexpectedly错误上传项目报fatal: the remote end hung up unexpectedly的错误,应该是项目太大的原因,要么是网络不行,要么墙的原因解决办法:修改提交缓存大小为500M,或者更大的数字git config --global http.postBuf...

2020-03-10 10:57:01 162

原创 Spring中@Bean的生命周期和@Value赋值的理解

@Bean的生命周期bean创建—初始化—销毁容器管理bean的生命周期我们可以自定义初始化和销毁方法;容器在bean进行到当前生命周期的时候来调用我们自定义的初始化和销毁方法构造(对象创建)单实例:在容器启动的时候创建对象多实例:在每次获取的时候创建对象初始化:对象创建完成,并赋值好,调用初始化方法销毁:容器关闭的时候销毁1.指定初始化和销毁方法;以前基于配置,有init...

2020-03-05 09:03:44 759

原创 Spring常用的几个注解@Configuration、@Bean、@ComponentScan

@Configuration:告诉Spring这是一个配置类,配置类===配置文件@Bean:给容器注入一个bean,类型为返回值类型,id默认是用方法名作为id@Configuration//@ComponentScan value:指定要扫描的包//excludeFilters=Filter[]:指定扫描的时候按照什么规则排除哪些组件//includeFilters=Filter[...

2020-03-03 10:00:08 72

原创 GIT的基本使用,使用git将本地项目推送到远程仓库github

最近因为需要远程办公,所以决定使用git进行项目的版本管理,因为之前都是用的SVN进行管理的,所以还是学习了一下git的基本使用,大大们勿笑。1. 先创建一个本地的版本库(即创建一个文件夹)你可以直接右击新建文件夹,也可以打开 git-bash.exe命令行窗口通过命令来创建。现在我通过命令行新建一个test文件夹(你也可以在其他任何地方创建这个文件夹),并且进入该文件夹目录下。2. 通...

2020-02-29 15:22:21 209

原创 Vue_源码简单分析,数据代理、模板解析、数据绑定

分析vue作为一个MVVM框架的基本实现原理1.数据代理2.模板解析3.数据绑定数据代理数据代理:通过一个对象代理另一个对象中属性的操作(读/写)vue数据代理:通过vm对象来代理data对象中所有属性的操作好处:更方便的操作data中的数据基本实现流程:1.通过Object.defineProperty()给vm添加与data对象的属性对应的属性描述符2.所有添加的属性都包含...

2020-02-28 09:35:29 92

原创 Vue_组件间通信3,插槽slot

组件间通信传递消息,很多时候传递的都是数据;而slot可以传递标签TodoFooter.vue组件<template> <div class="todo-footer"> <label> <!--<input type="checkbox" v-model="checkAll"/>--> <...

2020-02-27 14:27:18 152

原创 Vue_组件间通信2,使用PubSubJS库

组件间通信第一种方式:使用标签传递数据,props声明接收属性组件间通信第二种方式:vue自定义事件,绑定事件监听和触发事件组件间通信第三种方式:消息订阅和发布,使用pubsubjs库使用ubsub通信的好处就是,两个组件间的位置没有任何要求有三层组件,App–List–Item在Item中有删除选中行的功能,在App中订阅消息,在Item中发布消息App.vue<templa...

2020-02-25 11:04:03 147

原创 Vue_组件化编码,组件间通信1,通过标签传递数据

组件化编码的基本流程:1.拆分组件2.实现静态组件:显示的界面数据是固定的,也没有交互3.动态组件:有两个方面是动态的,初始化显示和交互组件间通信1.通过标签传递组件接收父组件传递过来的数据,首先要有声明,接收传递过来的属性;这个属性就会成为组件对象的属性示例编码:拆分为App、Add、List和Item组件js的入口文件main.js/*入口JS*/import Vu...

2020-02-23 12:51:50 65

原创 Vue_自定义事件2

事件监听绑定、触发的另一种形式$on(eventName,data)App.vue组件<template> <div class="todo-container"> <div class="todo-wrap"> <!--<TodoHeader @addTodo="addTodo"/>--> ...

2020-02-20 15:07:02 46

原创 Vue_自定义事件1

事件有两个方面:一个是绑定监听,一个是触发事件或者分发事件使用#v-on绑定自定义事件<my-component v-on:my-event="doSomething"></my-component>每个Vue实例都实现了事件接口,即:1.使用$on(eventName)监听事件2.使用$emit(eventName,optionPayload)触发事...

2020-02-19 09:32:23 43

原创 Vue_编写项目

页面三要素:html,js,css组件:组件是页面的局部功能模块,可以包括html/css/js/img等(视情况而定),这些资源是组件的组成部分vue项目入口js,main.js一般会有一个根组件App.vue,放在src的根目录下index.html需显示的页面文件<!DOCTYPE html><html lang="en"><head&...

2020-02-18 11:41:50 80

原创 Vue_路由的理解

路由器:路由器管理路由,VueRouter()用来创建路由器的构造函数new VueRouter({ //多个配置项})路由:其实就是一种映射关系,键值对K-VK:pathV:前台路由:组件 后台路由:处理请求的回调函数routers:[{ //一般路由 path: '/about', component: About ...

2020-02-13 10:17:55 51

原创 Vue_过滤器

理解过滤器1) 功能: 对要显示的数据进行特定格式化后再显示2) 注意: 并没有改变原本的数据, 可是产生新的对应的定义和使用过滤器1) 定义过滤器 Vue.filter(filterName, function(value[,arg1,arg2,...]){ // 进行一定的数据处理 return newValue }...

2020-02-13 10:15:26 58

原创 js中var、let和const的区别

js中定义变量常用有三种方式var、let和const;三者之间的区别如下:1.var定义的变量可以修改,如果不初始化会输出undefined,不会报错。var a = 1;// var a;//不会报错console.log('函数外var定义a:' + a);//可以输出a=1function change(){a = 4;console.log('函数内var定义a:...

2020-02-12 12:48:06 68

原创 Vue_动画

动画的理解1) 操作 css 的 trasition(过渡) 或 animation(动画)2) vue 会给目标元素添加/移除特定的 class3) 过渡的相关类名 xxx-enter-active: 指定显示的 transition xxx-leave-active: 指定隐藏的 transition xxx-enter/xxx-leave-to: 指...

2020-02-12 10:05:02 62

原创 Vue_生命周期

今年这个年关过的紧张兮兮,疫情肆虐,咱蜗居就是为国家做贡献啦...既然不能出门,那只有打开电脑,学习使我快乐了.../(ㄒoㄒ)/~~最近正在学习前台框架vue,边学边笔记,也和大家一起分享一下觉得生命周期这一块还是挺重要的,而且对于我个人而言还是比较容易忽视的,做个笔记记录一下,嘿嘿下图展示了实例的生命周期:vue的生命周期分三个阶段:初始化显示、更新显示...

2020-02-09 21:54:06 720

原创 Vue_计算属性和监视

已经踏上复工的路途,到达小窝开始自我隔离中,不能外出那咱们就安心的继续学习吧( ̄▽ ̄)"最近正在学习前台框架vue,边学边笔记,O(∩_∩)O今天学习到计算属性和监视,顺便记录一下计算属性:1) 在 computed 属性对象中定义计算属性的方法2) 在页面中使用{{方法名}}来显示计算的结果计算属性高级:1) 通过 getter/setter 实现对属性数据...

2020-02-09 21:49:43 70

原创 Vue_初接触

年关已过,虽然现在疫情依然肆虐,但是相信我们离胜利已经不愿啦...最近正在学习前台框架vue,边学边笔记,O(∩_∩)OVue是一套用于构建用户界面的渐进式框架Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有项目整合。Vue遵循MVVM模式M:model,即模型,可以理解为固定格式var vm = new V...

2020-02-09 21:46:12 614

空空如也

空空如也

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

TA关注的人 TA的粉丝

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