自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 webservice接口与HTTP接口的使用以及区别

一、webservice 的概念Web 是使应用程序可以与平台和编程语言无关的方式进行相互通信的一项技术。Web 服务是一个软件接口,它描述了一组可以在网络上通过标准化的 XML 消息传递访问的操作。它使用基于 XML 语言的协议来描述要执行的操作或者要与另一个 Web 服务交换的数据。一组以这种方式交互的 Web 服务在面向服务的体系结构(Service-Oriented Architectu...

2019-05-31 00:24:08 16636

原创 StringEntity 和 UrlEncodedFormEntity 的区别

一、UrlEncodedFormEntity//设置请求方式与参数URI uri = new URI(uriStr);HttpPost httpPost = new HttpPost(uri);httpPost.getParams().setParameter("http.socket.timeout", new Integer(500000));httpPost.setHeader("...

2019-05-29 00:32:12 1128

原创 Calendar获取当前时间的性能比较

除了获取时间用Date和SimperFormat,还可用Calendar类方法获取时间。一、Calendar 类常用的获取时间以及时区的方法:Calendar calendar = Calendar.getInstance();System.out.println("目前时间: " + calendar.getTime());System.out.println("Calendar时区: ...

2019-05-28 23:42:18 1869

原创 Jackson库中objectMapper的使用

ObjectMapper类是Jackson库的主要类。它提供一些功能将转换成Java对象与SON结构互相转换,在项目中遇到过,故记录一下。在 pom.xml 加入依赖<dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-da...

2019-05-27 23:57:49 2073

原创 JAVA设计模式之(二十)状态模式

一、引出状态模式假设我们现在有一个糖果机项目,那么我们知道正常一般糖果机提供给用户的行为有这么几种:投入硬币、转动曲柄、退出硬币几种行为;那么糖果机呢一般有这几中状态,待机状态、持有硬币的准备状态、运行状态即正在售出状态和初始状态 这么几种正常状态。 我们发现处于不同状态的时候,持有的行为是不一样的,图如下:如果我们采用传统的方法来写代码,那么在投入硬币这个行为操作的时候,我们会进行状态的判...

2019-05-26 15:12:13 218

原创 JAVA设计模式之(十九)备忘录模式

本文继续介绍23种设计模式系列之备忘录模式。备忘录模式备忘录模式是一种软件设计模式:在不破坏封闭的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样以后就可将该对象恢复到原先保存的状态。一听到备忘录这个字的时候想起了小小时打的游戏,每次遇到大boss的时候都会保存一下进度,打过了就不需要恢复记录,打不过肯定就复原到刚刚保存的记录咯,重新打一遍BOSS,打死为止。哈哈,这就是备忘...

2019-05-26 14:46:28 286

原创 java实现调用http请求的几种常见方式

一、概述在实际开发过程中,我们经常需要调用对方提供的接口或测试自己写的接口是否合适。很多项目都会封装规定好本身项目的接口规范,所以大多数需要去调用对方提供的接口或第三方接口(短信、天气等)。在Java项目中调用第三方接口的方式有:1、通过JDK网络类Java.net.HttpURLConnection;2、通过common封装好的HttpClient;3、通过Apache封装好的Clos...

2019-05-25 02:23:36 76055 30

原创 源码解读之(三)CopyOnWriteArrayList

一、概念CopyOnWriteArrayList是Java并发包中提供的一个并发容器,它是个线程安全且读操作无锁的ArrayList,写操作则通过创建底层数组的新副本来实现,是一种读写分离的并发策略,我们也可以称这种容器为"写时复制器",Java并发包中类似的容器还有CopyOnWriteSet。本文会对CopyOnWriteArrayList的实现原理及源码进行分析。我们都知道,集合框架中的...

2019-05-24 01:11:52 296

原创 null != string 和 string != null 的l区别

在项目经常看到 null != string 的写法,感觉跟 string != null 没啥区别。于是自己测试了下确实没啥区别,都能按照正常应有的逻辑来执行。然后查看了下jdk源码,源码中居然没有 null != string 的写法,全是 string != null 的写法。按照我的理解:null的话系统不需要检索它就是个null,而后面"riemannchow"很长的String,...

2019-05-23 23:36:09 1734

原创 SpringBoot集成MyBatis的分页插件PageHelper

首先说说MyBatis框架的PageHelper插件吧,它是一个非常好用的分页插件,通常我们的项目中如果集成了MyBatis的话,几乎都会用到它,因为分页的业务逻辑说复杂也不复杂,但是有插件我们何乐而不为?通常引入它们只需三步骤,不管是Spring集成还是SpringBoot集成都是老套路,我就分开总结了,望各位笑纳。Spring集成PageHelper:第一步:pom文件引入依赖 <...

2019-05-22 23:31:03 2766 2

原创 Java实现分页功能常见的几种方法

一、limit关键字service层@Service@Transactionalpublic class ImplStudentService implements StudentService { @Resourceprivate StudentDao studentDao; @Override public List<Student> sel...

2019-05-22 23:21:53 80738 5

原创 聚集索引和非聚集索引的区别

一、深入浅出理解索引结构实际上,可以把索引理解为一种特殊的目录。微软的SQL SERVER提供了两种索引:聚集索引(clustered index,也称聚类索引、簇集索引)和非聚集索引(nonclustered index,也称非聚类索引、非簇集索引)。下面,我们举例来说明一下聚集索引和非聚集索引的区别:其实,我们的汉语字典的正文本身就是一个聚集索引。比如,我们要查“安”字,因为“安”的拼音是...

2019-05-19 01:25:35 62744 23

原创 post请求实现excel导出下载功能

主要思路:一、pom依赖<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.14</version></dependency>二、前台传给后台的数据...

2019-05-17 21:58:09 12497 2

原创 InnoDB的标准行级锁有哪两种,解释其含义。

InnoDB 的行锁模式及加锁方法InnoDB实现了以下两种类型的行锁:共享锁(S):允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。排他锁(X):允许获得排他锁的事务更新数据,阻止其他事务取得相同数据集的共享读锁和排他写锁。另外,为了允许行锁和表锁共存,实现多粒度锁机制,InnoDB还有两种内部使用的意向锁(Intention Locks),这两种意向锁都是表锁。意向共...

2019-05-17 00:18:22 5673 4

原创 乐观锁和悲观锁的区别

一、悲观锁(Pessimistic Lock)顾名思义,就是很悲观,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。它指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理...

2019-05-15 23:35:26 481

原创 springboot项目能正常访问,但接口调用的时候404错误

根据自己的业务情况总结了一下有以下几种情况:一、spring boot的启动类不能直接放在main(src.java.main)这个包下面,把它放在有包的里面就可以了。(springboot的启动的Application必须放在controller类的外面,要不然扫描不到) 如果你的启动类Application位置没错的话直接进入第二步。二、检查Controller类里面的注解package...

2019-05-11 02:11:50 12201 13

原创 An incompatible version [1.2.7] of the APR based Apache Tomcat Native library is installed...

IntellJ IDEA起一个Spring Boot项目,起是起得来,就是启动日志,总是出现两个ERROR日志,虽然不影响项目启动运行,但是这并不能容忍。看提示,意思是:1.2.7的不满足了,需要去下载1.2.14版本。各种搜索之后,发现是需要替换一个tcnative-1.dll,此文件在C:\Windows\System32下。所以,下面去下载,找这个文件并不难,毕竟Apache Tomc...

2019-05-10 01:00:42 2040 6

原创 高并发下,如何做到安全的修改同一行数据

1、使用悲观锁悲观锁本质是当前只有一个线程执行操作,排斥外部请求的修改。遇到加锁的状态,就必须等待。结束了唤醒其他线程进行处理。虽然此方案的确解决了数据安全的问题,但是,我们的场景是“高并发”。也就是说,会很多这样的修改请求,每个请求都需要等待“锁”,某些线程可能永远都没有机会抢到这个“锁”,这种请求就会死在那里。同时,这种请求会很多,瞬间增大系统的平均响应时间,结果是可用连接数被耗尽,系统陷入...

2019-05-08 23:20:42 13297

原创 MYSQL有哪些存储引擎,各自优缺点。

一、简介数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。现在许多不多的数据库管理系统都支持多种不同的数据引擎。MySQL的核心就是存储引擎。MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和处理非事务安全表的引擎。在My...

2019-05-07 22:15:26 9252 4

原创 Access denied for user 'root'@'localhost' (using password: YES)

我是自己用cmd命令修改了mysql的登录密码,然后就出现这个问题了。解决方法:到自己的安装的MySQL的目录下,找my.ini文件;在[mysqld]后添加skip-grant-tables(使用 set password for设置密码无效,且此后登录无需键入密码)skip-grant-tables #在my.ini,[mysqld]下添加一行,使其登录时跳过权限检查在...

2019-05-07 00:31:41 677

原创 数据库隔离级别有哪些,各自的含义是什么,MYSQL默认的隔离级别是是什么。

一、什么是事务事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。事务的结束有两种,当事务中的所以步骤全部成功执行时,事务提交。如果其中一个步骤失败,将发生回滚操作,撤消撤消之前到事务开始时的所以操作。二、事务的四个特性事务具有四个特征:原子性( Atomicity )...

2019-05-07 00:17:48 12059 2

原创 cmd命令创建连接MySQL数据库

一、连接MYSQL格式: mysql -h 主机地址 -u 用户名 -p 用户密码1、 连接到本机上的MYSQL。首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码.如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到M...

2019-05-06 01:40:21 28280 4

原创 MySQL数据库的索引原理、与慢SQL优化的5大原则

一、前言索引对查询的速度有着至关重要的影响,理解索引也是进行数据库性能调优的起点。考虑如下情况,假设数据库中一个表有10^6 条记录,DBMS的页面大小为4K,并存储100条记录。如果没有索引,查询将对整个表进行扫描,最坏的情况下,如果所有数据页都不在内存,需要读取10^4 个页面,如果这10^6 个页面在磁盘上随机分布,需要进行10^4 次I/O,假设磁盘每次I/O时间为10ms(忽略数据传...

2019-05-06 01:14:45 1846 2

空空如也

空空如也

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

TA关注的人

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