自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 dubbo+springMVC消费端报错classNotFound

首先,说明一下我的错误原因:是因为provider端打jar包方式的错误导致的,如果你已经将这种错误可能排除了,就不用浪费时间看我啰嗦了。maven基础比较弱,之后系统学一下吧,见谅。解决方案: 我在出错的时候,在网上查找发现很多人写的博文大多都是上来一顿描述自己的排查历程,然后说到最后读者发现问题和自己的不一样。浪费了很多时间,所以我先将问题和解决方案提出来了。 我是直接将provider端的api 使用maven install打包了一下。然后在...

2020-07-02 09:36:48 51

原创 Redis 使用set方法更新值的时候导致时间过期问题

我使用的是JedisCommands的工具类在开发中出现了使用set设置新的值,导致时间过期。解决方法:使用ttl方法将剩余的时间再次设置在当前key中 redis.set(SLIDERCOUNTKEY, "1"); redis.expire(SLIDERCOUNTKEY, 60); Thread.sleep(20000); int cou...

2019-09-18 11:26:00 1122

原创 HttpMethodDirector源码解析

变量//方法连接器private ConnectMethod connectMethod;//HTTP状态private HttpState state;//主机配置private HostConfiguration hostConfiguration;//HTTP连接管理器private HttpConnectionManager connectionManager;//H...

2019-03-11 16:35:30 402

原创 HttpClient源码解析

变量//http连接管理器private HttpConnectionManager httpConnectionManager;//http状态private HttpState state;//http客户端参数private HttpClientParams params;//主机配置private HostConfiguration hostConfiguration;...

2019-03-11 16:31:12 576

原创 fiddler手机抓包配置

首先对Fiddler设置:可以抓取手机上的包的条件是,电脑与手机处于同一个网络下,如果不能形成一个wifi下的环境,可以在在电脑上下载一个wifi共享软件,开启一个wifi供手机连接。手机连接在电脑开启的wifi上便可。手机端的配置为:在主机名处填写电脑的ip地址 ip地址的获取方式为:打开cmd-》输入ipconfig-》本地连接中的IPv4地址便是在端口出...

2019-03-05 10:45:42 137

转载 org.apache.http.client.CircularRedirectException异常处理方式

我遇到这个问题的场景是在get请求上出现的这个错误当时我的设置是:get = new QFGetMethod(geturl);get.setFollowRedirects(false);get.setRequestHeader("Accept","text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;...

2019-03-04 18:22:35 334

转载 ubuntu安装完wireshark后,报没有权限的错误

#添加wireshark用户组groupadd wireshark#将dumpcap更改为wireshark用户组chgrp wireshark /usr/bin/dumpcap#让wireshark用户组有root权限使用dumpcapchmod 4755 /usr/bin/dumpcap#将所使用的用户名加入wireshark用户组,例如simplegpasswd -a simp...

2019-03-02 22:15:42 133

原创 MySQL的TCL视图

MySQL列表页含义:虚拟表,和普通表一样使用mysql5.1版本出现的新特性,是通过表动态生成的数据比如:舞蹈班和普通班级的对比       创建语法的关键字   是否实际占用物理空间  使用视图      create view         只是保存了sql逻辑 增删改查,只是一般不能增删改表         create table         保存了数据  ...

2019-01-22 10:41:04 82

原创 MySQL的TCL事务

MySQL列表页TCL:Transaction Control Language 事务控制语言事务:一个或一组sql语句组成一个执行单元,这个执行单元要么全部执行,要么全部不执行。案例:转账张三丰  1000郭襄      1000update 表 set 张三丰的余额=500 where name='张三丰'意外update 表 set 郭襄的余额=150...

2019-01-22 10:33:31 116

原创 MySQL的DDL标识列

MySQL列表页又称为自增长列含义:可以不用手动的插入值,系统提供默认的序列值特点:1、标识列必须和主键搭配吗?不一定,但要求是一个key2、一个表可以有几个标识列?至多一个!3、标识列的类型只能是数值型4、标识列可以通过 SET auto_increment_increment=3;设置步长可以通过 手动插入值,设置起始值 一、创建表时设置标识列DR...

2019-01-22 10:28:52 106

原创 MySQL的DDL常见约束

MySQL列表页含义:一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性分类:六大约束       NOT NULL:非空,用于保证该字段的值不能为空       比如姓名、学号等       DEFAULT:默认,用于保证该字段有默认值       比如性别       PRIMARY KEY:主键,用于保证该字段的值具有唯一性,并且非空       ...

2019-01-22 10:24:30 213

原创 MySQL的DDL数据结构

MySQL列表页数值型:       整型       小数:              定点数              浮点数字符型:       较短的文本:char、varchar       较长的文本:text、blob(较长的二进制数据) 日期型: 一、整数分类:tinyint、smallint、mediumint、int/in...

2019-01-22 10:17:43 132 1

原创 MySQL的DDL表的管理

MySQL列表页一、表的创建 ★语法:create table 表名(    列名 列的类型【(长度) 约束】,    列名 列的类型【(长度) 约束】,    列名 列的类型【(长度) 约束】,    ...    列名 列的类型【(长度) 约束】)案例:创建表BookCREATE TABLE book(    id INT,#编号    bNa...

2019-01-22 10:12:37 98

原创 MySQL的DDL库的管理

MySQL列表页一、库的创建语法:create database  [if not exists]库名;案例:创建库BooksCREATE DATABASE IF NOT EXISTS books ; 二、库的修改RENAME DATABASE books TO 新库名;更改库的字符集ALTER DATABASE books CHARACTER SET ...

2019-01-22 10:08:11 79

原创 MySQL的DML删除语句

MySQL列表页方式一:delete语法:1、单表的删除【★】delete from 表名 where 筛选条件2、多表的删除【补充】sql92语法:delete 表1的别名,表2的别名from 表1 别名,表2 别名where 连接条件and 筛选条件;sql99语法:delete 表1的别名,表2的别名from 表1 别名inner|le...

2019-01-21 16:59:16 126

原创 MySQL的DML修改语句

MySQL列表页1.修改单表的记录★语法:update 表名set 列=新值,列=新值,...where 筛选条件;2.修改多表的记录【补充】语法:sql92语法:update 表1 别名,表2 别名set 列=值,...where 连接条件and 筛选条件; sql99语法:update 表1 别名inner|left|right ...

2019-01-21 16:57:02 109

原创 MySQL的DML插入语句

MySQL列表页一、方式一:经典的插入语法:insert into 表名(列名,...) values(值1,...);SELECT * FROM beauty;1.插入的值的类型要与列的类型一致或兼容INSERT INTO beauty(id,NAME,sex,borndate,phone,photo,boyfriend_id)VALUES(13,'唐艺昕','女',...

2019-01-21 16:54:01 75

原创 MySQL的DQLunion联合查询

MySQL列表页union 联合 合并:将多条查询语句的结果合并成一个结果语法:查询语句1union查询语句2union... 应用场景:要查询的结果来自于多个表,且多个表没有直接的连接关系,但查询的信息一致时特点:★1、要求多条查询语句的查询列数是一致的!2、要求多条查询语句的查询的每一列的类型和顺序最好一致3、union关键字默认去重,如...

2019-01-21 16:45:20 74

原创 MySQL的DQL分页查询

MySQL列表页应用场景:当要显示的数据,一页显示不全,需要分页提交sql请求语法:       select 查询列表       from 表       【join type join 表2       on 连接条件       where 筛选条件       group by 分组字段       having 分组后的筛选       orde...

2019-01-21 16:43:04 75

原创 MySQL的DQL子查询

MySQL列表页含义:出现在其他语句中的select语句,称为子查询或内查询外部的查询语句,称为主查询或外查询分类:按子查询出现的位置:       select后面:              仅仅支持标量子查询       from后面:              支持表子查询       where或having后面:★              ...

2019-01-21 16:39:49 101

原创 MySQL的DQL连接查询

MySQL列表页含义:又称多表查询,当查询的字段来自于多个表时,就会用到连接查询笛卡尔乘积现象:表1 有m行,表2有n行,结果=m*n行发生原因:没有有效的连接条件如何避免:添加有效的连接条件分类:       按年代分类:       sql92标准:仅仅支持内连接       sql99标准【推荐】:支持内连接+外连接(左外和右外)+交叉连接      ...

2019-01-21 14:54:52 112

原创 MySQL的DQL分组查询

MySQL列表页语法:select 查询列表from 表【where 筛选条件】group by 分组的字段【order by 排序的字段】; 特点:1、和分组函数一同查询的字段必须是group by后出现的字段2、筛选分为两类:分组前筛选和分组后筛选                     针对的表                      位置   ...

2019-01-21 14:40:34 95

原创 MySQL的DQL常见函数

MySQL列表页概念:类似于java的方法,将一组逻辑语句封装在方法体中,对外暴露方法名好处:1、隐藏了实现细节  2、提高代码的重用性调用:select 函数名(实参列表) 【from 表】;特点:       ①叫什么(函数名)       ②干什么(函数功能) 分类:       1、单行函数       如 concat、length、ifnull等...

2019-01-21 14:27:43 138

原创 MySQL的DQL排序查询

MySQL列表页语法:select 查询列表from 表名【where  筛选条件】order by 排序的字段或表达式; 特点:1、asc代表的是升序,可以省略desc代表的是降序2、order by子句可以支持 单个字段、别名、表达式、函数、多个字段3、order by子句在查询语句的最后面,除了limit子句 一、按单个字段排序SELEC...

2019-01-21 10:05:07 97

原创 Guava源码解析十四:BiMap源码解析

BiMap是一个双向关联的数据结构,而它对key和value严格的保证唯一性。如果使用put方法添加相同的value值或key值则会抛出异常:java.lang.IllegalArgumentException,如果使用forcePut方法添加则会覆盖掉原来的value值。由上图可以看到BiMap的实现类有很多,我就使用HashBiMap对BiMap进行分析 成员变量priv...

2018-12-26 09:43:07 269

原创 Guava源码解析十三:Multimap源码解析

Multimap相对于传统的Map区别在于,Multimap是一对多的一个数据结构,对于Multimap的解析用HashMultimap进行解析,看一下HashMultimap的类结构图:HashMultimap构造器因为他的构造方法是私有的,所有他会拥有静态方法构造器:public static <K, V> HashMultimap<K, V> cre...

2018-12-26 09:27:21 151

原创 Guava源码解析十二:Multiset源码解析

对于Multiset集合可以存储重复的值,他的强大之处是他的同一个值个数统计功能。实现类为HashMulitset类,他的继承关系图为:从Multiset接口开始分析源码:public interface Multiset<E> extends Collection<E> { //返回给定参数元素的个数 int count(@Nullable ...

2018-12-26 09:23:36 112

原创 Guava源码解析十一:Sets源码解析

功能函数 创建一个不可变的set 1.ImmutableSet<E> immutableEnumSet(E anElement, E... otherElements) 2.ImmutableSet<E> immutableEnumSet(Iterable<E> elements) 创建一个HashSe...

2018-12-26 09:07:44 224

原创 Guava源码解析十:Maps源码解析

构造方法private Maps() {}私有的构造方法,可以看到这是一个真正的功能函数,下面对其函数进行分析功能函数 返回一个不可变Map 1.ImmutableMap<K, V> immutableEnumMap(Map<K, ? extends V> map) 创建一个HashMap ...

2018-12-26 08:56:06 273 1

原创 Guava源码解析九:Lists源码解析

构造方法private Lists() {}私有的构造方法,可以看到这是一个真正的功能函数,下面对其函数进行分析 功能函数首先根据每一个函数的更能进行了分类: 创建ArrayList方法 newArrayList() newArrayList(E... elements) newArrayList(Iterable<? ...

2018-12-25 20:10:21 321

原创 Guava源码解析八:Preconditions源码解析

       提供静态方法来检查方法或构造函数,被调用是否给定适当的参数。它检查的先决条件。其方法失败抛出IllegalArgumentException。对于Preconditions类的静态方法可以分为三大类:1.对null的处理2.对真假的处理3.对数组下标是否符合的处理 一、对null的处理public static <T> T checkNotN...

2018-12-25 19:42:36 82

原创 Guava源码解析七:CharMatcher源码解析

一个处理字符串的类实现类 ANY 匹配任何字符 ASCII 匹配是否是ASCII字符 BREAKING_WHITESPACE 匹配所有可换行的空白字符(不包括非换行空白字符,例如"\u00a0") DIGIT 匹配ASCII数字 ...

2018-12-25 19:40:15 139

原创 MySQL的DQL条件查询

MySQL列表页语法:select 查询列表from 表名where 筛选条件;分类:一、按条件表达式筛选简单条件运算符:> < = != <> >= <= 二、按逻辑表达式筛选逻辑运算符:作用:用于连接条件表达式&& || !and or not&&和...

2018-12-05 17:54:04 124 1

原创 MySQL的DQL基础查询

MySQL列表页2.1.1、查询单字段SELECT last_name FROM employees;  2.1.2、查询多字段SELECT last_name , job_id , salary AS sal FROM employees;  2.1.3、查询全部字段SELECT * FROM employees;  2.1.4、查询常量...

2018-12-05 17:43:45 175

原创 Sql原理及MySQL优点

MySQL列表页DB:数据库(database):存储数据的“仓库”。它保存了一系列有组织的数据。DBMS:数据库管理系统(Database Management System)。数据库是通过DBMS创建和操作的容器SQL结构化查询语言(Structure Query Language):专门用来与数据库通信的语言优点: 不是某个特定数据库提供商专有的语言,几乎所...

2018-12-05 17:33:40 219

原创 mysql知识列表

一、原理 二、DQL(Data Query Language)语言的学习 2.1、基础查询 2.2、条件查询 2.3、排序查询 2.4、常见函数 2.5、分组查询 2.6、连接查询 2.7、子查询 2.8、分页查询 2.9、union联合查询 三、DML(Data Manipulation Language)语言的学习 3.1、插入语句 3.2、修改...

2018-12-05 17:20:05 209

原创 Guava源码解析六:Objects源码解析

Objects是一个纯粹的工具类而他真正有用的方法也就是equals和hashCode方法,剩下其他的方法在java中都有相应实现的类equals联系Object的equals方法看一下Objects的equals方法有什么好处:java版:public boolean equals(Object obj) { return (this == obj);}gua...

2018-12-05 10:09:38 91

原创 Guava源码解析五:Splitter源码解析

在通读整片源码前先来了解其中的两个内部类,这两个内部类才是真正去分解字符串的工人:处理字符、字符串、正则的接口,此接口的定义实质为策略模式private interface Strategy { Iterator<String> iterator(Splitter var1, CharSequence var2);}此接口中只有一个方法,返回的是一个Iterat...

2018-12-05 10:06:55 325

原创 Guava源码解析四:Joiner源码解析

将字符串数组按指定分隔符连接起来,或字符串串按指定索引开始使用指定分隔符连接起来变量//分割符private final String separator; 构造方法两个构造函数都是静态构造器,所以不能直接使用这两个构造器去创建Joiner,所以想要创建Joiner只能使用静态方法。可接收字符串和字符,字符串可以为空,字符不可为空字符private Joiner(...

2018-12-05 09:58:21 133

原创 Guava源码解析三:Guava-Ints源码解析

构造函数private Ints() {}静态构造器,所以只能使用类直接调用静态方法来使用工具类中的方法 常用静态方法1.compare(int a, int b)比较两个指定的int值源码实现为:public static int compare(int a, int b) { //如果a<b返回-1, 如果a>b返回1, 如果a=b返...

2018-12-05 09:40:46 110

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