自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

java

学习之路,任重而道远

  • 博客(56)
  • 资源 (4)
  • 收藏
  • 关注

原创 idea使用技巧课程

查找快捷键跳转项目之间的跳转 文件之间的跳转 ctrl+E 最近打开的文件 ctrl+shift+E 最近修改的文件 浏览修改位置的跳转 ctrl+shift+backspace 鼠标停留位置位置的跳转 ctrl+shift+左箭头 加书签 F11 ctrl+F11 收藏 alt+2 ...

2018-07-16 12:57:25 347

原创 java8学习(一)

行为参数化package com.huhu.test.helloword.java8;/** * @author :小虎 * @date :2018/6/29 */public class Apple { private String color; private int weight; public Apple(int weight,String c...

2018-06-29 15:40:12 461

原创 maven学习(三)

生命周期和插件 包括项目的清理、初始化、编译、测试、打包、集成测试、验证、部署和站点生成 maven的生命周期是抽象的,这意味着生命周期本身不做任何实际工作。每个构建步骤都可以绑定一个或者多个插件行为,而且maven为大多数构建步骤编写并绑定了默认插件,针对编译的maven-compiler-plugin,针对测试的maven-surefire-plugin,用户几乎不会觉察到插件的...

2018-06-01 11:31:39 384

原创 maven学习(二)

MAVEN仓库分类中央仓库 安装完 Maven ,本地仓库几乎是空的,这时需要从远程仓库下载所需构件。Maven 配置了一个默认的远程仓库,即中央仓库,找到 %MAVEN_HOME%/lib/maven-model-builder-3.2.1.jar,打开 org/apache/maven/model/pom-4.0.0.xml 超级POM: 在项目中添加其他远程...

2018-06-01 10:07:14 241

原创 maven学习(一)

maven安装 jdk环境变量 maven环境变量mvn -v settings.xml 最好放在 ~/.m2 目录内 防止升级覆盖设置http代理 有时候公司基于安全认证考虑,要求你是用通过安全认证的代理访问因特网。 <proxies> <!-- proxy | Specification fo

2018-06-01 09:19:26 281

原创 spring5教程(二)——core

ioc容器和beans IOC也叫DI,org.springframework.beans and org.springframework.context 是ioc容器的基础包。BeanFactory接口提供基础功能,ApplicationContext 是BeanFactory的扩展。代码services.xml<?xml version="1.0" enco...

2018-04-09 18:07:04 1800

原创 spring5教程(一)——Overview

spring5.0官方文档地址首先是一个 概览,大致分为5块 大致吹一顿牛逼,就是用我们的框架更方便,提供Groovy、Kotlin等在jvm虚拟机上的语言。 可以创造很多种架构以满足一个应用的需要。5.0版本的环境,需要jdk8并且早已开箱即用的支持jdk9。spring支持比较广泛,社区也比较活跃之类的。1、spring的含义 spring表示的是spring全家桶。...

2018-04-09 16:40:08 7276

原创 CopyOnWriteArrayList

什么是CopyOnWrite容器 CopyOnWrite容器即写时复制的容器。通俗的理解是当我们往一个容器添加元素的时候,不直接往当前容器添加,而是先将当前容器进行Copy,复制出一个新的容器,然后新的容器里添加元素,添加完元素之后,再将原容器的引用指向新的容器。这样做的好处是我们可以对CopyOnWrite容器进行并发的读,而不需要加锁,因为当前容器不会添加任何元素。所以CopyOnWr...

2018-04-02 13:48:51 156

原创 redis学习教程(二)

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 1、String(字符串) string是redis最基本的类型,你可以理解成与Memcached一模一样的类型,一个key对应一个value。 string类型是二进制安全的。意思是redis的string可以包含任何数据。比如...

2018-03-15 10:53:46 151

原创 redis学习教程(一)

理论Redis 与其他 key - value 缓存产品有以下三个特点: 1、Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。 2、Redis不仅仅支持简单的key-value类型的数据,它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Map), 列表(list), 集合(sets) 和 有序集合...

2018-03-15 10:31:23 246

转载 redis学习教程(三)

Redis 持久化:提供了多种不同级别的持久化方式:一种是RDB,另一种是AOF. RDB 持久化可以在指定的时间间隔内生成数据集的时间点快照(point-in-time snapshot)。 AOF 持久化记录服务器执行的所有写操作命令,并在服务器启动时,通过重新执行这些命令来还原数据集。 AOF 文件中的命令全部以 Redis 协议的格式来保存,新命令会被追加到文件的末尾...

2018-03-14 18:01:16 176

原创 常用开发软件安装地址

Redis安装 https://github.com/MSOpenTech/redis/releases Redis Desktop Manager https://redisdesktop.com/download Zookeeper安装 http://www.apache.org/dyn/closer.cgi/zookeeper/ ActiveMQ http:...

2018-03-14 09:45:13 209

原创 面试

ArrayList和LinkedList区别: 1.ArrayList是实现了基于动态数组的数据结构,LinkedList基于链表的数据结构。 (LinkedList是双向链表,有next也有previous) 2.对于随机访问get和set,ArrayList觉得优于LinkedList,因为LinkedList要移动指针。 3.对于新增和删除操作add...

2018-03-07 14:55:15 161

原创 二、elasticsearch入门(数据)

文档 程序中大多的实体或对象能够被序列化为包含键值对的JSON对象, 键(key)是字段(field)或属性(property)的名字, 值(value)可以是字符串、 数字、 波尔类型、 另一个对象、 值数组或者其他特殊类型, 比如表示日期的字符串或者表示地理位置的对象。{ "name": "John Smith", "age": 42, "confirme

2018-01-10 10:57:18 192

原创 一、elasticsearch入门(基本介绍)

工具sql转换 https://github.com/NLPchina/elasticsearch-sql/ Elasticsearch权威指南 https://www.gitbook.com/book/looly/elasticsearch-the-definitive-guide-cn/detailsQuery-DSL 常用关键字: query,search_type

2018-01-10 10:07:20 376

原创 nutch入门

环境nutch官网 http://nutch.apache.org/ linux系统 CentOS 7.3 64位 jdk1.8 apache-nutch-1.14-src.tar.gzyum search jdk | grep javayum install java-1.8.0-openjdkvi /etc/profile#set java environmentJAV

2018-01-03 20:36:22 904 1

原创 springboot系列教程(九)——Servlet、Filter、Listener

方式一新建servlet/** * @author :小虎 * @date :2017/12/27 */@WebServlet(name = "IndexServlet",urlPatterns = "/hello")public class IndexServlet extends HttpServlet{ @Override protected void doGet(Ht

2017-12-27 09:48:08 276

原创 Spring Boot使用Druid和监控配置

修改pom <dependency> <groupId>com.alibaba</groupId> <artifactId>druid</artifactId> <version>1.1.0</version> </dependency>修改配置文件spring.datasource.type=co

2017-12-26 10:42:34 1104

原创 springboot常用配置

# ===================================================================# COMMON SPRING BOOT PROPERTIES## This sample file is provided as a guideline. Do NOT copy it in its# entirety to your own appli

2017-12-26 09:20:24 764

原创 springboot系列教程(八)——整合thymeleaf、freemarker

整合thymeleafSpring Boot默认就是使用thymeleaf模板引擎的,所以只需要在pom.xml加入依赖即可:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId></depend

2017-12-25 14:19:30 796

原创 springboot系列教程(七)——整合mybatis

sql-- ------------------------------ Table structure for user-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `money` doubl

2017-12-25 13:13:15 230

原创 springboot系列教程(六)——整合jdbctemplate

整体目录结构 sql-- ------------------------------ Table structure for user-- ----------------------------DROP TABLE IF EXISTS `user`;CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT, `mone

2017-12-25 12:56:20 327

原创 spring Data JPA

springboot与jpa整合步骤主要接口 CrudRepository interfacepublic interface CrudRepository<T, ID extends Serializable> extends Repository<T, ID> { <S extends T> S save(S entity); Optional<T> findById(ID

2017-12-25 12:12:39 253

原创 springboot系列教程(五)——整合jpa

整合jpapom <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency>

2017-12-22 14:34:52 661

原创 springboot系列文章(四)——fastjson、定时任务、全局异常配置

配置其它json框架引入maven依赖 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.37</version> </dependency>新建WebMvcConfigure

2017-12-22 13:51:47 611

原创 springboot系列教程(三)——配置方式、多环境配置

Spring Boot 支持多种外部配置方式这些方式优先级如下: 1、命令行参数 2、来自java:comp/env的JNDI属性 3、Java系统属性(System.getProperties()) 4、操作系统环境变量 5、RandomValuePropertySource配置的random.*属性值 6、jar包外部的application-{profile}

2017-12-22 10:04:54 388

原创 springboot系列教程(二)——Banner、CommandLineRunner、Arguments、Exit

Banner生成工具地址 可以生成图片或者文字http://patorjk.com/software/taag http://www.network-science.de/ascii/ http://www.degraeve.com/img2txt.php程序猿专用banner图 ${AnsiColor.BRIGHT_YELLOW} /////////////////////////////

2017-12-21 17:02:55 940

原创 springboot系列教程(一)——第一个springboot程序

第一个springboot程序 springboot可以使我们快速开发一个web项目。本系列例子采用intellij idea开发 打开Idea-> new Project ->Spring Initializr ->填写group、artifact ->钩上web(开启web功能)->点下一步就行了。自动生成pom.xml<?xml version="1.0" encoding="UT

2017-12-21 16:26:51 762

转载 TCP/IP协议三次握手和四次挥手大白话解说

TCP(Transmission Control Protocol)网络传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议,数据传输前建立连接的工作要经过三次握手,数据传输后断开连接的工作要经过四次挥手。工作过程TCP标志位:TCP共有6个标志位,分别是: SYN(synchronous),建立联机。 ACK(acknowledgement),确认。 PSH(pus

2017-12-15 14:35:09 624

原创 CyclicBarrier CountDownLatch Semaphore Exchanger

同步屏障CyclicBarrier CyclicBarrier 的字面意思是可循环使用(Cyclic)的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活。CyclicBarrier默认的构造方法是CyclicBarrier(int parties),其参数表示屏障拦截的线程数量,每

2017-12-13 16:22:18 225

转载 从输入URL到浏览器显示页面发生了什么

当在浏览器地址栏输入网址,如:www.baidu.com后浏览器是怎么把最终的页面呈现出来的呢?这个过程可以大致分为两个部分:网络通信和页面渲染。一、网络通信 互联网内各网络设备间的通信都遵循TCP/IP协议,利用TCP/IP协议族进行网络通信时,会通过分层顺序与对方进行通信。分层由高到低分别为:应用层、传输层、网络层、数据链路层。发送端从应用层往下走,接收端从数据链路层网上走。如图所示:1

2017-12-05 09:23:43 491

原创 设计模式——迭代器模式

迭代器模式(Iterator Pattern)是 Java 和 .Net 编程环境中非常常用的设计模式。这种模式用于顺序访问集合对象的元素,不需要知道集合对象的底层表示。 介绍 意图:提供一种方法顺序访问一个聚合对象中各个元素, 而又无须暴露该对象的内部表示。 主要解决:不同的方式来遍历整个整合对象。 何时使用:遍历一个聚合对象。 如何解决:把在元素之间游走的责任交给迭代器

2017-12-04 14:35:55 230

原创 设计模式——装饰器模式

装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 我们通过下面的实例来演示装饰器模式的用法。其中,我们将把一个形状装饰上不同的颜色,同时又不改变形状类。 介绍 意图:动

2017-12-04 14:24:20 281

转载 23种设计模式全解析

一、设计模式的分类总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代器模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

2017-12-04 13:34:42 197

原创 设计模式——适配器模式

适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入笔记本,这样就可以通过笔记本来读取内存卡。 优点: 1、可以让任何两个没有关联的类一起运行。

2017-12-04 13:29:50 175

原创 设计模式——外观模式

外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。 这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。 介绍 意图:为子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易

2017-12-04 12:26:54 205

原创 设计模式——代理模式

代理模式的定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。举例说明,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之前起到中介的作用。应用场景举例: 通过上面的代理模式描述我们可以知道,其目的就是为了控制对象引用,生活场景中我们以买车为例,如果我们要买一辆轿车必须通过汽

2017-12-04 11:24:04 194

原创 设计模式——策略模式

在策略模式(Strategy Pattern)中,一个类的行为或其算法可以在运行时更改。这种类型的设计模式属于行为型模式。 在策略模式中,我们创建表示各种策略的对象和一个行为随着策略对象改变而改变的 context 对象。策略对象改变 context 对象的执行算法。创建一个接口public interface Strategy { int doOperation(int num1,

2017-12-04 10:42:11 204

原创 设计模式——模板模式

在模板模式(Template Pattern)中,一个抽象类公开定义了执行它的方法的方式/模板。它的子类可以按需要重写方法实现,但调用将以抽象类中定义的方式进行。这种类型的设计模式属于行为型模式。 意图:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变一个算法的结构即可重定义该算法的某些特定步骤。 主要解决:一些方法通用,却在每一个子类都重新写了这一方法。

2017-12-04 10:24:25 172

原创 设计模式——单例模式

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。 介绍 意图:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 主

2017-12-04 10:10:57 181

spring-boot-中文参考指南

spring-boot-中文参考指南

2017-08-30

Java程序员,上班那点事儿.pdf

Java程序员,上班那点事儿.pdf

2016-02-17

北师大易语言教程

北师大易语言教程 易语言教学 让你快速学会我们国家的开发语言

2014-01-02

白帽子讲 Web 安全

在互联网时代,数据安全与个人隐私受到了前所未有的挑战,各种新奇的攻击技术层出不穷。如 何才能更好地保护我们的数据?本书将带你走进Web安全的世界,让你了解Web安全的方方面面。黑 客不再变得神秘,攻击技术原来我也可以会,小网站主自己也能找到正确的安全道路。

2014-01-02

空空如也

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

TA关注的人

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