- 博客(41)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Spring Cloud (一)Spring Cloud概述
一、什么是Spring clound? Spring clound 是一站式的微服务解决方案,他利用Spring boot 的开发便利性巧妙简化了分布式开发系统基础设施的开发,如服务注册发现、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以利用Spring boot的开发风格做到一键启动和部署。它是一系列框架的规范,是一系列框架的集合。二、Spring clound 核心组件(框架) 第一代Sprign clound(Netflix) 第二代Spring clo...
2021-12-18 15:10:17
2477
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 Tomcat原理剖析及性能调优
Tomcat原理剖析Tomcat的原理和配置文件详解 tomcat服务器总体架构 tomcat服务器具备两种能力,一种是作为一个Http服务器,另外一个则是作为Servlet容器,两大功能tomcat将其拆分为两个组件,Coyote(连接器)与Catalina(容器)两个组件。其中Coyote负责处理Socket通讯,将Socket解析封装为Request对象(非Java ee的Request对象),Catalina负责Servlet初始化、加载等。 Tomcat连接器组件Coyot.
2021-10-28 23:21:07
576
2
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【第二天】设计模式-简单工厂模式
目录前言一、简单工程模式UML图二、代码案例前言简单工厂模式是工厂设计模式的一种简单实现,通过一个工厂对象传入不同的参数构造出不同的对象。一、简单工程模式UML图简单工厂模式构成如下表所示。对象角色SimpleFactory简单工厂,根据传入的参数生成Product对象,依赖Product对象Product产品抽象对象ContentProduct具体的产品,继承Product,ContentProduct是多个不同的Product对象,在UML图中统一用Co
2020-12-24 16:56:21
167
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 【第一天】设计模式之基础-UML类图与设计模式七大原则
目录前言一、UML类图如何表示一个类?二、UML类图如何表示类与类之间的关系?1、泛化关系代码案例2、实现关系代码案例3、关联关系代码案例4、聚合关系代码案例5、组合关系代码案例6、依赖关系代码案例总结前言UML类图用来表示类与类之间的关系,是一种静态图(区别于对象图,对象图描述的是某一时刻对象与对象之间的关系)。能够理解UML类图,是学习设计模式的基础,看懂了类图,就能够更好的理解设计模式,学习起来事半功倍。一、UML类图如何表示一个类?一个类图从上到下分别表示类名、 属性、方法,在属性和方法前
2020-12-18 17:46:14
337
原创 Spring boot 使用@DS 配合druid连接池切换数据源及切换数据源失效情况
Spring boot 使用@DS 配合druid连接池切换数据源及切换数据源失效情况
2022-12-12 16:29:36
11328
原创 解决element ui select multiple 超出宽度的问题
/*解决element ui select multiple 超出宽度的问题*/.el-select__tags-text { display: inline-block; max-width: 120px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
2022-01-29 15:49:35
863
原创 Spring 应用及原理分析
Spring 是一个轻量级的开发框架,以ioC和AOP为内核,提供了展现层Spring MVC和业务事务管理等众多企业级应用技术。还能整合众多的第三方类库,是目前java非常流行的框架。Spring 的核心思想就是IOC和AOP。1.什么是IoC与DI ioC与DI都是描述的同一件事,但是出发点不同。ioC的英文全称是Inversion of Contronl,翻译过来是反转控制。DI 英文全称为Depedency Inection ,翻译过来是依赖注入。IOC和DI...
2021-12-22 15:08:47
1168
原创 SQL将查询结果合并到一个字段中并使用,分割,不使用GROUP_CONCAT和FOR XML PATH(‘‘)与存储过程
需求背景: 项目中使用一个字段保存了外键信息,多个外键用,(逗号)分割,在进行查询的时候需要将这些关联的外键相关字段查询出来。 如我有一个班级表,表中保存了班级班主任信息,班主任可以是多个人,多个人得班主任使用逗号分割。再进行查询的时候,除了班级名称,techer_ids,还需要查询教师的名称再同一行显示,多个教师名称用,分割。 方法: 1.在对班级进行查询时,自定义一个字段,使用CHARINDEX 函数,在teacher_ids前后加上[, ...
2021-12-10 14:54:23
3338
3
原创 文件上传漏洞与文件下载浏览漏洞
一、文件上传漏洞是什么? 文件上传漏洞就是网站允许用户上传文件,攻击者上传了一个可执行的脚本文件,并通过该文件控制了服务器。 上传的文件能够被攻击有以下几个条件: 1.上传的文件能够被Web容器解释执行,所以上传的文件只能在Web服务器访问的目录范围内 2. 用户能够从Web中访问这个文件 3.上传的文件没有被安全检查、格式化、图片压缩等改变了内容二、如何防御 1.检查上传文件的扩展名白名单,不属...
2021-12-09 23:14:28
528
原创 XML注入攻击
一、XML攻击是什么? XML攻击和SQL注入类似,XML注入是将用户输入的数据当成节点处理。二、攻击原理 攻击前提是使用XML作为存储数据的方式,在代码对xml进行查询或者修改时,用户输入的是节点,将攻击的节点保存到xml中,从而影响到程序的运行。 例如: String xml = "<username>"+request.getParameter("username")+"</username>"...
2021-12-09 22:50:36
1532
原创 Session攻击
一、Session劫持 原理: 用户登入后网站保存了用户的session id,黑客通过暴力破解、预测或者使用网络探嗅拿到session id,以此获得合法的会话。 防御:1、添加HTTP Only,防止从cookie中读取session id 2、 HTTP Secure二、会话固定 原理:会话固定是会话劫持的一种,会话固定是诱骗用户使用指定的会话标识 防御:1、每当用户登入时对session id进行重置...
2021-12-08 21:00:54
1419
原创 URL跳转漏洞
一、是什么 URL跳转漏洞是URL重定向漏洞,跳转漏洞用于钓鱼攻击二、攻击原理 利用web应用中重定向业务,将一个网站重定向到另外一个网站,最简单的方式就是使用诱导用户点击www.aaa.com?returnUrl=www.bbb.com,借助www.aaa.comf重定向到bbb.com三、如何防护1、跳转地址限制,不让用户传入2、白名单机制3、校验跳转的目标4、添加token...
2021-12-07 22:41:47
249
原创 Web安全-点击劫持
一、点击劫持是什么?点击劫持,也称为UI覆盖攻击 。二、攻击原理1.黑客创建一个网页利用iframe包含目标网站,隐藏目标网站,引诱用户点击特定链接或者按钮2、用户不知情的情况下点击按钮,进行危险操作三、如何防护使用HHTP头-X-Frame-Options。可选值:DENY: 拒绝任何freme页面SAMEORIGIN: frame页面地址只能为同源域名下面ALLOW-FORM origin:y允许frame加载的页面地址nginx配置:add_heade.
2021-12-07 22:17:03
4485
原创 跨站点请求伪造(CSRF)
一、CSRF是什么? 通过浏览器冒充用户身份向服务器发送伪造请求并成功执行二、攻击原理1、用户正常登入受信任的网站A,输入账号密码登入2、登入成功网站返回Cookie3、用户未退出的网站,访问网站B4、网站B接收到请求,返回恶意代码。并发出一个请求访问站点A三、 CSRF的危害CSRF工具特:攻击时机: Cookie没有过期,攻击前提: 了解网站接口攻击难度:大于XSS危害:修改密码、转账、删除数据四、如何防护1、referer校验...
2021-12-07 21:40:00
2143
原创 Web应用安全防护-XXS
一、什么是XSS?XSS: Cross Site Script ,跨站脚本攻击。恶意攻击者在页面中注入恶意Script代码,在用户浏览时,恶意代码会被执行,从而达到攻击的目的。 恶意者通常会通过Web应用提交的内容提交Script代码,导致浏览器将用户输入的内容当成了代码执行。二、XSS 攻击类型1)持久性XSS 将恶意代码保存在数据库中,谁加载到该数据谁则被攻击,常见博客、论坛中。而且是长期的威胁。2)反射性XSS2)DOM性XSS...
2021-12-07 21:05:29
4812
原创 vue-router4.0动态路由失效问题
问题描述:vue-router4.0 版本在beforeEach使用addRouter动态添加路由后,路由没有生效。控制台发出警告[Vue Router warn]: No match found for location with path "/home",使用roter.getRoutes()查看已经挂载的路有也已经挂载上去解决方法:查看官网,官网在addRoute 方法下有一条提示:请注意,添加路由并不会触发新的导航。也就是说,除非触发新的导航,否则不会显示所添加的路由。这句.
2021-12-02 09:37:47
11606
2
原创 IDEA 数据缓存目录更改
1.找到IDEA安装目录,在bin文件夹中找到idea.properties修改里面的${user.home}为具体的目录即可
2021-12-01 10:00:55
779
原创 npm使用淘宝镜像
npm config set registry https://registry.npm.taobao.org 使用淘宝镜像npm cpmfog get registry 验证配置是否成功
2021-11-17 22:21:46
723
原创 Vue使用div模拟input框,并实现vue双向绑定
<template> <div class="h-edit-head-content-title edit-div" contenteditable="true" v-text="content" @input="changeText" @focus="isLocked = true" @blur="isLocked = false" > </div></template>&.
2021-11-09 16:06:37
2899
原创 解决Element UI 中Tabs组件切换窗口后出现一个难看的焦点边框
/*解决切换窗口后出现的难看边框*/.el-tabs__item:focus.is-active.is-focus:not(:active){box-shadow:none;}
2021-11-09 14:29:10
650
原创 linux添加防火墙通讯端口
1.防火墙文件记录在/etc/sysconfig/iptables文件中,我们使用vim命令打开它sudo vim /etc/sysconfig/iptables ,这个文件只有root才能修改呢2.在iptable中追加-A INPUT -m state --state NEW -m tcp -p tcp --dport 端口号 -j ACCEPT,如果iptables已经存在类似的记录,可以在vim命令模式下按下yy(复制当前行),在按下p粘贴,在按i进入编制模式修改端口号,修改好...
2021-10-31 22:31:32
4057
原创 vue 封装ueditor富文本编辑器(百度富文本编辑器)组件,支持双向绑定
<template> <div> <div :id="this.id"></div> </div></template><script> module.exports ={ name: 'editor', props: ['id','value'], model: { prop: 'v...
2021-10-29 16:31:38
773
原创 JavaScript替换RUI中的参数
替换URL中GET请求的参数:function replaceUrlParam(param, value, src) { // 这里对url进行解码 if (src.indexOf("%") > -1 && src.indexOf("\\", src.indexOf("%") - 1) == -1) { src = decodeURIComponent(src); return replaceUrlParam(param, val
2021-10-19 09:03:40
196
原创 修改linux登入欢迎信息
1、修改登入信的文件有:/etc/issue(本地登入)、/etc/issue.net(远程登入)、/etc/motd(登入通知、登入信息修改此文件)2、使用vim编辑/etc/issue或//etc/issue.net可以看到里面\r 、\m 等字符,这类字符是特定的变量,可以使用 manissue 查看变量的作用。其各变量表示如下\d 本地端时间的日期; \l 显示第几个终端机接口; \m 显示硬件的等级 (i386/i486/i586/i686...) ; ...
2021-10-15 11:45:27
785
原创 记录一些难以记住的命令
安装cnpm npm install cnpm -g --registry=https://registry.npm.taobao.org
2021-09-23 00:54:44
4255
原创 linux常用命令整理分类
linux常用命令整理分类快捷入口命令帮助指令开机关机指令linux 文件权限如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入快捷入口命令帮助指令1、[指令] --help说明: 在指令后面加上–help,可以查看指令用法2、 man [指令]**说明: **
2021-09-22 09:21:32
2200
原创 SQL查询所有列根据根据某一列去重
在实际使用sql过程中,我们要查询所有的列,但是某一列重复就只取一列的情况SELECT * FROM CPB_Course A WHERE Course_id IN (SELECT MIN(ID) FROM CPB_Course GROUP BY 重复列)
2021-09-16 17:29:52
5997
原创 javaScript快速将数组里面得string数字字符全部转为number数字
使用 JavaScript 高阶函数,高阶函数就是方法支持传入一个方法调用测试代码如下:const arr = ['1','2','3'];arr.map(Number); //map 返回一个新得数组console.log(arr)
2021-09-09 17:44:33
2385
原创 git撤销/回滚操作
这里写自定义目录标题git撤销操作撤销本地(工作区)修改git checkout回滚版本git reset撤销版本提交git revertgit撤销操作撤销本地(工作区)修改git checkoutgit checkout [文件名]操作说明git checkout [文件名]撤销对该文件的修改,如果该文件已经通过git add 添加到暂存区,则git checkout [文件名] 则恢复暂存区的内容,要撤销到和当前版本一致,再次执行git checkout [文件名] 则恢
2021-09-02 11:47:22
823
1
原创 javaScript中var与let的区别
代码案例<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>var和let区别测试</title></head><body><button>1</button><button>2</button><button>3</button&g
2021-08-17 14:37:09
90
原创 JavaScript中array数组中存储为obj对象,indexOf 是如何判断的?
arr 中为obj, 在使用indexOf如何判断---- 已经通过实验证明,arr中卫obj,indexOf判断为obj的指针地址---- 实验过程let arr = [];obj = {name:‘张三’};arr.push(obj);arr.indexOf(obj) = true;let arr2 = [];arr2.push(JSON.parse(JSON.stringify(obj)));arr.indexOf(obj) = false;...
2021-07-08 14:44:25
682
原创 人大金仓数据库表修改某个字段为自增长总结
人大金仓数据库 修改字段类型 不支持改为serial,且人大金仓数据修改字段类型要在字段后加一个 TYPE 标识人大金仓数据库字段有值后, 只要字段唯一不重复,可以添加主键ALTER TABLE CPT_DocTpl ADD PRIMARY KEY(id);人大金仓数据库不支持直接修改为serial,可通过自定义序列后设置字段默认值实现字段自增长:CREATE SEQUENCE 序列名称 START 34; //创建一个序列CPT_DocTpl_id_SEQ ,从34开始自增,默认为正增长,.
2021-06-25 09:48:41
4666
原创 js中offsetWidth、clientWidth、innerWidth的使用
offsetWidth、clientWidth、innerWidth宽度offsetWidth = 水平方向的宽度+padding-left+padding-right+borderclientWodth = 水平方向的宽度+padding-left+padding-rightscrollWidth = 可视区域宽度+被隐藏区域宽度innerWidth = 浏览器窗口课时区域宽度<!DOCTYPE html><html><head><meta c
2020-12-28 16:48:04
293
原创 MSP430G2553开发板万年历加温湿度
基于MSP430G2553开发板万年历加温湿度编辑删除转载2017-01-08 14:21:45材料:MSP430G2553开发板一块、DS1302时钟芯片、CR1220纽扣电池、CR1220纽扣电池、32.768Khz晶振、小纽扣按键三个、DHT11温湿度传感器、跳帽三个、LCD12864(自带电位器,3.3v供电需要调节对比度)一、DS1302DS1302 是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路,它可以对年、月、日、周、时、分、秒进行计时。DS1.
2020-09-12 19:53:09
2237
4
原创 myeclipse重新安装Tomcat Could not publish to the serve
重新安装了myeclipse2015,部署SSH应用后不能启动Tomcat,提示Publishing failedCould not publish to the server.There were issues during deployment to server Tomcat v7.0 Server at localhost. See Error Log for details.查看error.log日志,提示如下:org.eclipse.core.runtime.CoreExce
2020-09-12 19:50:41
531
原创 tomcat部署应用异常java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactoryat org.springframework.web.context.ContextCleanupListener.(ContextCleanupListener.at org.springframework.web.context.ContextLoaderListener.contextDestroyed(ContextLoad...
2020-09-12 19:49:44
177
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人