自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 赛程整理——首届云原生编程挑战赛赛道3

首届云原生编程挑战赛3:服务网格控制面分治体系构建 赛程整理队伍:本地小有名气的年轻人们最终分数:7696.0186历史最好分数:7545.4066最终排名:11.题目解析赛题链接:https://code.aliyun.com/middleware-contest-2020/pilotset导师解析:https://tianchi.aliyun.com/forum/postDetail?postId=1097322.工程目录结构controller包下为三个接口constant下包含

2020-07-16 15:58:21 65

原创 设置shiro认证和授权失败返回json而不是重定向

在使用shiro时,一般对未认证或未授权的请求统一过滤并做出响应,大体有以下配置:<!-- 未认证时返回的页面(被authc user logout 等认证拦截器拦截后)访问的url --><property name="loginUrl" value="/user/unAuthenticated.do"/> <!-- 未授权时返回的页面(被roles 等授权拦...

2020-02-08 20:10:43 1657

原创 解决Springboot+ajax跨域及每次请求sessionId不一样的问题

1、问题复现:项目中后端使用Springboot搭建,使用Shiro做安全管理。前后端分离后,前端使用ajax访问服务端程序。在未做任何处理前,ajax报错:Access to XMLHttpRequest at 'http://127.0.0.1:8080/login/checkLogin' from origin 'http://localhost:63342' has been blo...

2020-02-07 22:46:54 697

原创 Tomcat无法使用80端口:Permission denied (Bind failed) <null>:80

在阿里云Centos系统下,使用yum安装tomcat7,但无法绑定80端口。通过查阅各种解决方法,已经排除了以下几个:防火墙已经开放相应端口阿里云已经添加了安全组信息阿里云域名已经备案成功已经尝试过用root用户启动tomcat通过查看Tomcat的启动日志,发现是Tomcat本身的问题:Permission denied (Bind failed) &lt;null&gt;:8...

2020-01-19 21:25:06 532

原创 使用SSM框架上传文件

使用SSM框架完成简单文件上传功能,SSM的整合不再赘述。1、写一个jsp:&lt;%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%&gt;&lt;!DOCTYPE html&gt;&lt;html&gt;&lt;head&gt;&lt;meta charse...

2020-01-12 10:02:35 134

原创 Shiro+SSM基本使用

一、Shiro功能Authentication:身份认证/登录Authorization:授权(权限验证)Session Manager:会话管理,会话可以是Java SE环境也可以是Java EE环境。使用Shiro,在service层和dao层也可以直接活动session对象,实现解耦Cryptography:加密Caching:缓存,比如用户登录后,其用户用于的...

2020-01-11 22:13:11 115

原创 读Coded-TeraSort笔记

本文是我阅读文献《Coded TeraSort》后,通过翻译、整理、加上自己的理解做的笔记。希望大家一起探讨,如有错误还请指教。paper链接:Coded TeraSort一、简介在一个传统的MapReduce程序中(Map-shuffle-reduce),程序的瓶颈发生在shuffle阶段(高达50%-70%时间)。作者提出了一种为数据增加结构化冗余,以此来降低MapReduce的shuf...

2020-01-10 15:37:20 135

原创 Ubuntu下抓取手机http请求

1、ubuntu下安装monisudo apt-get install mono-complete2、下载Fiddler下载最新版Fiddler3、解压后进入目录运行mono Fiddler.exe4、Tools–Fiddler Options…–connections勾选Allow remote computers connectFiddler listens on por...

2019-12-15 17:20:38 90

原创 MySQL数据库—InnoDB事务的实现

目录一、InnoDB对事务的实现二、日志恢复技术1、redo log1)格式2)落盘3)LSN4)恢复2、undo log三、并发控制1、锁1)锁的分类2)使用锁3)作用规则4)InnoDB行级锁2、并发控制1)一致性非锁定读(快照读)2)一致性锁定读(当前读)一、InnoDB对事务的实现在数据库事务、并发问题及隔离级别中提到,事务的实现主要是针对事务的四个特性,分别为隔离性、一致性、原子性、...

2019-12-07 15:11:24 126

原创 MySQL数据库—性能分析及Explain

目录一、性能分析一般步骤二、MySQL常见瓶颈三、MySQL执行计划Explain1、Explain作用2、用法3、各个字段解释一、性能分析一般步骤对MySQL性能分析一般需要经过以下步骤:慢查询的开启并捕获# 设置慢查询阈值 秒set global long_query_time=3;# 开启慢查询set global slow_query_log=1;# 输出到slow_...

2019-12-05 17:49:27 218

原创 MySQL数据库—InnoDB索引

目录一、什么是索引二、索引的分类三、索引的创建1、索引创建2、创建建议四、InnoDB存储引擎索引1、B+树2、InnoDB存储引擎索引类型3、聚集索引4、辅助索引1)单值辅助索引2)复合辅助索引5、行记录的插入五、索引覆盖六、索引失效和错误使用索引1、possible_keys和key2、索引失效例子1)使用范围筛选容易索引失效2)辅助索引字段进行类型转换3、错误使用索引例子1)使用没有创建索引...

2019-12-04 16:46:01 137 1

原创 MySQL数据库—InnoDB数据页结构

目录一、页二、数据页结构图三、File Header四、Page Header五、Infimun和Supremum Record六、User Record和Free Space七、Page Directory八、File Trailer一、页页是InnoDB磁盘管理的最小单位,默认每页为16KB,从InnoDB1.2.x开始,可以通过innodb_page_size参数将页设置为4K、8K、1...

2019-12-02 20:14:00 478 1

原创 MySQL数据库—InnoDB行存储格式

目录一、InnoDB支持的行存储格式二、Compact记录格式1、变长字段长度列表(1)对varchar类型字段长度的存储(2)对char类型字段长度的存储2、NULL标志位3、记录头信息4、RowID5、Transaction ID和Roll Point6、列数据7、一完整行的存储例子三、Compact记录格式下的行溢出四、其他行记录格式1、Redundant2、Compressed和Dynam...

2019-12-01 21:30:59 555

原创 数据库事务、并发问题及隔离级别

目录一、什么是事务二、为什么要使用事务三、事务并发问题1、脏写2、脏读3、不可重复读4、幻读四、事务的隔离级别1、读未提交(READ UNCOMMITTED)2、读已提交(READ COMMITTED)3、可重复读(REPEATABLE READ)4、串行化(SERIALIZABLE)一、什么是事务我们学习数据库,经常看到数据库事务,ACID事务等相关的概念,抛开数据库,可以将事务更广泛的定义...

2019-11-26 13:25:39 201

原创 从零开始上手Maven项目

本文介绍Maven的作用及基本用法,后用Maven搭建一个ssm demo,希望通过以下的内容,可以让小白用起Maven。至于Maven的一些高级用法及底层原理,这里不涉及,还需在工程、学习中积累,也希望得到大佬的指教,和大家一起进步。一、为什么使用Maven你是否遇到过下面的这些情况:1、使用一个框架(如spring),需要依赖的jar包太多太杂,每次要找到整理好保存在磁盘中的jar包文件...

2019-11-17 16:20:33 117 1

原创 【避坑】Eclipse导入Maven项目com.sun.image.codec.jpeg不存在

使用jdk1.8Eclipse导入Maven项目项目中有两行importimport com.sun.image.codec.jpeg.JPEGCodec;import com.sun.image.codec.jpeg.JPEGImageEncoder;maven编译不过:com.sun.image.codec.jpeg不存在通过https://blog.csdn.net/wm...

2019-10-31 17:44:09 368

原创 MySQL数据库—存储过程与函数

目录一、变量1、系统变量(1)全局变量(2)会话变量2、自定义变量(1)用户变量(2)局部变量二、存储过程1、优点2、存储过程的创建3、存储过程的调用4、存储过程的查看5、存储过程的删除6、案例三、函数1、存储过程和函数的比较2、函数的创建3、函数的调用4、函数的查看5、函数的删除6、案例四、流程控制结构1、顺序结构2、分支结构(1)IF结构a.IF作表达式b.IF作语句(2)CASE结构a.CA...

2019-10-25 18:51:01 447

原创 MySQL数据库—SQL汇总

一、准备下文整理常见SQL语句的用法,使用MySQL5.7测试,参考了尚硅谷MySQL教程及用例。用例sql:链接: https://pan.baidu.com/s/1tb3-12MRNFjV8drFlN6wzg&amp;shfl=sharepset 密码: fc2h为了方便查阅可从右侧目录快速索引二、DQL(Data Query Language)数据查询语言1、语句顺序书写顺序...

2019-10-24 20:43:10 61066 50

原创 虚拟机下搭建NFS+OpenMPI运行环境

一、准备用node1、node2、node3搭建一个OpenMPI多节点运行环境搭建几个节点:https://blog.csdn.net/qq_37969433/article/details/102263861openmpi-4.0.2.tar.xz二、安装OpenMPI在node123执行以下步骤:1、安装gcc和g++yum install gccyum install g...

2019-10-16 16:48:40 184

原创 虚拟机下搭建Hadoop集群

一、准备VMware Workstation pro 15CentOS-6.5-x86_64-minimalHadoop 3.1.1二、安装CentOS6.5以下未出现的安装过程中的步骤,均可以选择默认选项。打开VMware,创建虚拟机,选择自定义安装:选择稍后安装操作系统:输入虚拟机名字及安装的路径,这里只影响在VMware中显示的名字:内存选择1G以上...

2019-10-07 21:48:18 193

原创 JVM初识(三)—GC垃圾回收机制

一、四类引用强引用(FinalReference):存在就不会被GC回收软引用(SoftReference):内存不足时,GC启动就会被回收弱引用(WeakReference):GC启动就被回收虚引用(PhantomReference):无意义,唯一的目的就是让对象在被回收时获得一个系统通知二、GC种类将Java堆再细分可分为新生代和老年代,其比例默认为1:2;对新生代细分为Ede...

2019-10-06 14:04:59 158

原创 JVM初识(二)—类加载机制

本文参考《深入理解Java虚拟机》,并通过几个实例,整理JVM的类加载机制相关内容。涉及类加载的过程、类加载的时机和类加载器。本文内容结构:一、类加载过程虚拟机把描述类的数据从Class文件加载到内存,并对数据进行进行校验、转换解析和初始化。最终形成可以被虚拟机直接使用的Java类型,这就是虚拟机的类加载机制。类从被加载到虚拟机内存中开始,到卸载出内存为止,整个生命周期包括以下几步:其...

2019-09-27 14:15:58 85

原创 JVM初识(一)—JAVA运行时内存区域

本文整理我学习JVM规范的相关知识,内容较为浅显,也可能理解有误,望指教。下文涉及:JAVA运行时内存区域(图示+解释)类加载机制(加载过程、加载时机、类加载器)一、JAVA运行时内存区域1、线程私有区域线程私有区域包括程序计数器、虚拟机栈、本地方法栈线程私有是指,所涉及的这几个内存区域,是每条线程独自拥有的,即每条线程启动时,都会创建属于该线程的程序计数器、虚拟机栈、本地方法栈...

2019-09-25 18:37:27 141

原创 2016年蓝桥杯国赛JavaB组碱基问题

问题描述碱基生物学家正在对n个物种进行研究。其中第i个物种的DNA序列为s[i],其中的第j个碱基为s[i][j],碱基一定是A、T、G、C之一。生物学家想找到这些生物中一部分生物的一些共性,他们现在关注那些至少在m个生物中出现的长度为k的连续碱基序列。准确的说,科学家关心的序列用2m元组(i1,p1,i2,p2…im,pm)表示,满足:1&lt;=i1&lt;i2&lt;…&lt;i...

2019-05-18 16:27:23 254

原创 由Tomcat入手LVS+Nginx集群

相信学过javaEE的都做过几个web项目,将项目打包为war文件(或者直接在eclipse中),在Tomcat中发布即可通过浏览器访问。写这篇文章,争取表达最通俗的意思,由这个过程引到集群的概念,整明白现在用的几个热门的技术是做什么的,不求具体及其原理,包括LVS、Nginx、Keepalived、memcached。(我也是刚起步学习,将现在的理解整理为一篇文章,略显浅显,如果有共同学习的读...

2019-02-03 00:13:38 6711

原创 python爬取猫眼电影评分反反爬方式

一、所需工具FontCreator二、问题引入我们用Chrome登录电影《死侍2》的主页,查看页面信息,会发现用户评分出现乱码两个方框:再查看这个地方的html源代码:是类似一个引用。这明显使用了某种反爬技术。另外大家可以自行验证,这里的引用的16进制的编号,每次访问都是不一样的(或者是过几分钟再访问),同一个数每次访问可能对于不同的编号。三、解决问题这其实是使用的css3的新特性...

2019-01-28 11:03:30 9079 2

原创 (python3异常)1064, "You have an error in your SQL syntax; check the manual...at line 1"

python中用pymysql模块操作mysql出现以下异常:pymysql.err.ProgrammingError: (1064, “You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use n...

2019-01-26 22:33:48 8868

原创 (算法)ccf201312-4有趣的数,动态规划推导过程,c++参考例程

问题描述我们把一个数称为有趣的,当且仅当:它的数字只包含0, 1, 2, 3,且这四个数字都出现过至少一次。所有的0都出现在所有的1之前,而所有的2都出现在所有的3之前。最高位数字不为0。  因此,符合我们定义的最小的有趣的数是2013。除此以外,4位的有趣的数还有两个:2031和2301。  请计算恰好有n位的有趣的数的个数。由于答案可能非常大,只需要输出答案除以100000000...

2019-01-19 13:35:20 8894 5

原创 虚拟机下CentOS安装tengine(Nginx)过程

1、下载tengine-2.1.0.tar.gz并拷贝到CentOS下 (密码10su)2、解压进入文件所在目录,运行:tar -xzvf tengine-2.1.0.tar.gz进入解压后的主目录:cd tengine-2.1.03、下载安装依赖需要安装以下三个依赖:yum install -y gccyum install -y pcre-develyum ...

2019-01-15 17:42:15 8699

原创 (python3异常)'gbk' codec can't decode byte 0xad in position 2: illegal multibyte sequence

python3在pycharm编辑器下,打开.txt文件(utf-8编码)textFile = open(&amp;quot;test.txt&amp;quot;, &amp;quot;rt&amp;quot;)出现错误UnicodeDecodeError: 'gbk' codec can't decode byte 0xad in position 2: illegal multibyte sequence编码问题,解决:textFile = open...

2019-01-14 11:07:17 20597

转载 python3的所有标准库

文本string:通用字符串操作re:正则表达式操作difflib:差异计算工具textwrap:文本填充unicodedata:Unicode字符数据库stringprep:互联网字符串准备工具readline:GNU按行读取接口rlcompleter:GNU按行读取的实现函数二进制数据struct:将字节解析为打包的二进制数据c...

2019-01-14 10:59:23 8778

原创 (图示)B/S系统下的MVC设计模式及springMVC原理

2018-12-28 15:05:03 12298

原创 win10下MyEclipse10需要管理员身份运行,无法正常破解

昨天破解个MyEclipse10一直破解不了,网上的方法也基本都试了。今天终于想到了解决方法,如果有遇到这问题可以试一下:在破解过程中我遇到如下问题:1、安装好MyEclipse10不能直接打开,需要用管理身份打开2、破解软件在ReplaceJarFile一步,没有完全替换替换成功应该是3、打开MyEclipse10 Subscription Informatica,有用户名和激活码...

2018-10-16 09:36:09 10092 2

原创 (算法)通俗易懂的字符串匹配KMP算法及求next值算法

大多数据结构课本中,串涉及的内容即串的模式匹配,需要掌握的是朴素算法、KMP算法及next值的求法。在考研备考中,参考严奶奶的教材,我也是在关于求next值的算法中卡了一下午时间,感觉挺有意思的,把一些思考的结果整理出来,与大家一起探讨。以下的顺序为1、最基本的朴素算法2、优化的KMP算法3、应算法需要定义的next值4、手动写出较短串的next值的方法5、最难理解的、足足有5行的代码...

2018-10-06 00:23:54 75448 104

原创 (算法)C语言实现查找一个序列的主元素

问题描述已知一个整数序列A=(a0,a1,…,an-1),其中0≤ai&amp;lt;n(0≤i&amp;lt;n)。若存在ap1=ap2=…=apm=x且m&amp;gt;n/2(0≤pk&amp;lt;n,1≤k≤m),则称x为A的主元素。例如A=(0,5,5,3,5,7,5,5),则5为主元素;又如A=(0,5,5,3,5,1,5,7),则A中没有主元素。假设A中的n个元素保存在一个一维数组中,请设计一个尽可能高效的算...

2018-09-22 23:34:20 10572

原创 (算法)C语言得到两个升序序列的中位数

问题描述一个长度为L (L&amp;gt;=1)的升序序列S,处在第⌈L/2⌉ 个位置的数称为S的中位数。例如,若序列S1=(11, 13, 15, 17, 19),则S1的中位数是15,两个序列的中位数是含它们所有元素的升序序列的中位数。例如,若S2= (2, 4,6,8, 20),则S1和S2的中位数是11。现在有两个等长升序序列A和B,试设计一个在时间和空间两方面都尽可能高效的算法,找出两个序列A...

2018-09-22 23:19:55 9786 1

原创 (算法)C语言实现数组元素的循环左移指定位数

问题描述对于一个任意长度为len的数组A,使其循环左移P个元素。如数组{1,2,3,4,5,6,7},左移3个元素即变为{4,5,6,7,1,2,3}。实现算法方法一对前3个元素完全转置,变为{3,2,1,4,5,6,7}对后4个元素完全转置,变为{3,2,1,7,6,5,4}对所有元素完全转置,变为{4,5,6,7,1,2,3}方法二直接观察法:题目要求的过程可以看为是按一定...

2018-09-22 22:06:11 12050

原创 (算法)C语言模拟约瑟夫环问题

约瑟夫环问题描述m个人围坐一圈,每人持有一个数字,从第一个人开始从1报数,报到n(第一轮n任意给定)的人出圈,将n改为这个出圈的人所持有的数字,下个人开始从1报数,继续报到n的人出列;依次类推直到所有人出圈。C语言模拟该过程算法这里采用带有尾结点的循环单向链表存储玩家信息,p和pre两个指针分别指向报数结点和该结点的直接前驱,并同步移动n-1次,删除p指向的结点直至链表为空即可。具体代码...

2018-09-22 20:14:29 9470

原创 http登录模块加密登录安全登录方法

http请求很容易被截获,在写登录模块时,直接使用明文密码请求,很容易明文密码泄露;若在js页面对密码进行一次加密后在传输,虽不是明文密码,但也完全可以截获加密后的暗文,伪造http请求进行登录。为了防止密码泄露,通过参考各种方案,找到了以下比较好实现的方法: 1、登录请求分两次进行,第一次仅传用户名 2、服务器收到用户名后,生成一串随机数,将随机数响应给客户端,并将用户名和随机数存到sess...

2018-09-03 09:10:24 102343 3

原创 JavaWeb项目Filter过滤器注解方式优先级问题

对于一个web工程的filter过滤器注解方式配置后的优先级问题,很多教程写到按filter名字排序的顺序来进行过滤,最近发现了个小问题,分享一下。我是用的tomcat发布工程, 对于注解配置的filter**分系统**(猜的):在Windows本地tomcat服务器上,优先级只参考filer名字的第一个字母在字母表的顺序,靠前的优先级高,不区分大小写。如名为A、b、C、DD四个fil...

2018-08-30 10:21:25 13950

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