4 尘与风铃

尚未进行身份认证

本人博客已在17年7月更新至 http://www.jiyongguang.xin/ 最新文章将会优先于个人博客上传

等级
TA的排名 9w+

Collection接口详解

集合家族Collection接口Collection接口Api一览为什么重写Iterable接口的iterator方法CollectionApi详解Collection接口在Java8中的函数扩展Iterator接口IteratorApi详解ArrayList的自定义迭代器List接口List接口Api一览List集合的特点ListIterator接口...

2018-05-29 17:00:41

Spring Boot 集成 lombok 让代码更简洁

话不多说,先上图:IDEA安装lombok插件IntelliJ IDEA 定位到 File > Settings > Plugins点击 Browse repositories…搜索 Lombok Plugin点击 Install plugin重启 IDEASpring Boot项目中使用lombok添加lombok依赖 <!-- lombok代码简化 --> <de

2017-09-13 17:27:26

为什么使用 SLF4J 而不是 Log4J 来做 Java 日志

每个Java开发人员都知道日志记录对Java应用的重要性,尤其是对服务端应用,而且其中许多人都已经熟悉了各种记录日志的库,比如java.util.logging,Apache的log4j,logback,然而如果你不知道SLF4J,java的简单记录日志的设计的话 ,那么到了学习并在你的项目中使用它的时候了。在这篇Java文档里,我们将学习为什么使用SLF4J比使用log4j或者java.util.

2017-06-22 10:41:34

IntelliJ IDEA 源值1.5已过时,将在未来所有版本中删除

原因: IDEA默认把项目的源代码版本设置为jdk1.5,目标代码设置为jdk1.5解决方案: 1. 修改Maven的Settings.xml文件添加如下内容<profiles> <profile> <id>jdk-1.8</id> <activation> <activeByDefault>true

2017-06-22 10:12:01

Java设计模式——适配器模式

适配器模式概述:适配器模式将一个类的接口,转换成客户期望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。解决的问题:即Adapter模式使得原本由于接口不兼容而不能一起工作的那些类可以在一起工作。非常形象的一张图:用电器做例子,笔记本电脑的插头一般都是三相的,即除了阳极、阴极外,还有一个地极。而有些地方的电源插座却只有两极,没有地极。电源插座与笔记本电脑的电源插头不匹配使得

2017-06-22 09:23:23

SpringMVC的<mvc:default-servlet-handler/>

该博客仅为本人学习时笔记记录。不能保证没有错误,请结合自己思想参考。项目源码: github地址:https://github.com/JYG0723/springmvcpractice/tree/mastermvc:default-servlet-handler 的作用优雅REST风格的资源URL不希望带 .html 或 .do 等后缀.由于早期的Spring MVC不能很好地处理静态资源,所以

2017-05-18 22:10:59

SpringMVC拦截器

该博客仅为本人学习时笔记记录。不能保证没有错误,请结合自己思想参考。项目源码: github地址:https://github.com/JYG0723/springmvcpractice/tree/master什么是拦截器拦截器的作用: 1. 拦截器就是浏览器发送往wen服务器的请求。来对他请求的数据或者返回的数据 做一些更改,或者在请求的执行之前或者在请求的执行之后加入一些代码。 以此来对一些

2017-05-18 22:10:07

SpringMVC基础

业务流程:SpringMVC的整体模块架构:分析: 1. 由最先的HTPP发送请求,由所配置的XML中的DispatcherServlet处理。DispatcherServlet接受到这个请求后,根据请求的信息及HandlerMapping的配置找到处理请求的处理器Handler。得到HandlerMapping对应的Handler后,通过HandlerAdapter对Handler进行封装,

2017-05-16 15:46:05

SpringMVC介绍之视图解析器ViewResolver

SpringMVC视图解析器出处 http://haohaoxuexi.iteye.com/blog/1770554前言   在前一篇博客中讲了SpringMVC的Controller控制器,在这篇博客中将接着介绍一下SpringMVC视图解析器。当我们对SpringMVC控制的资源发起请求时,这些请求都会被SpringMVC的DispatcherServlet处理,接着spring会分析看哪

2017-05-15 09:57:50

Mybatis基础

什么是 MyBatis ? MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以对配置和原生Map使用简单的 XML 或注解,将接口和 Java 的 POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。Mybatis 与

2017-05-02 12:21:55

Mybatis高级应用(上)

动态 SQL通过mybatis提供的各种标签方法实现动态拼接sql。对查询条件进行判断,如果输入的参数不为空才进行查询条件拼接。public class Customer { private int id; private String username; private String password; private User user;}public interf

2017-05-02 12:19:00

Mybatis高级应用(下)

延迟加载什么是延迟加载? resultMap可以实现高级映射(使用association、collection实现一对一及一对多映射),association、collection具备延迟加载功能。 需求: 如果查询订单并且关联查询用户信息。如果先查询订单信息即可满足要求,当我们需要查询用户信息时再查询用户信息。把对用户信息的按需去查询就是延迟加载。 延迟加载:先从单表查询、需要时再从

2017-05-02 12:12:26

Mybatis添加ehcache缓存支持

Mybatis 整合 ehcacheehcache 是一个分布式缓存框架。分布缓存:我们系统为了提高系统并发,性能、一般对系统进行分布式部署(集群部署方式)不使用分布缓存,缓存的数据在各各服务单独存储,不方便系统 开发。所以要使用分布式缓存对缓存数据进行集中管理。mybatis无法实现分布式缓存,需要和其它分布式缓存框架进行整合。分布缓存我们系统为了提高系统并发,性能、一般对系统进行分布式部署(集群

2017-05-02 11:26:34

SpringBoot + Swagger2

注:本文参考自http://www.jianshu.com/p/0465a2b837d2 以及http://www.jianshu.com/p/0465a2b837d2  swagger用于定义API文档。好处:前后端分离开发API文档非常明确测试的时候不需要再使用URL输入浏览器的方式来访问Controller传统的输入URL的测试方式对于post请求的传参比较麻烦(当然,可以使用

2017-04-20 08:44:32

搜索引擎的分片(shard)和副本(replica)机制

搜索引擎通过分片(shard)和副本(replica)实现了高性能、高伸缩和高可用。分片技术为大规模并行索引和搜索提供了支持,极大地提高了索引和搜索的性能,极大地提高了水平扩展能力;副本技术为数据提供冗余,部分机器故障不影响系统的正常使用,保证了系统的持续高可用。有2个分片和3份副本的索引结构如下所示:一个完整的索引被切分为0和1两个独立部分,每一部分都有2个副本,即上图的灰色部分。在 生产环境中,

2017-04-19 21:45:16

Springboot + Devtools(热部署)

springboot + devtools(热部署)技术介绍devtools:是boot的一个热部署工具,当我们修改了classpath下的文件(包括类文件、属性文件、页面等)时,会重新启动应用(由于其采用的双类加载器机制,这个启动会非常快,如果发现这个启动比较慢,可以选择使用jrebel)双类加载器机制:boot使用了两个类加载器来实现重启(restart)机制:base

2017-04-18 23:33:11

单例模式

单例模式一懒汉式单例二饿汉式单例模式Java中单例模式是一种常见的设计模式,单例模式总共有7种写法。 + 懒汉,线程不安全 + 懒汉,线程安全 + 饿汉 + 饿汉,变种 + 静态内部类 + 枚举 + 双重校验锁这里针对常用的单例模式的实现方式主要介绍两种:懒汉式(饱汉式)单例、饿汉式单例。若对其他几种实现方式感兴趣可以移步这里首先单例模式有以下特点: 1、单例类只能有一个实例。

2017-03-30 20:25:51

抽象工厂模式

抽象工厂模式总结抽象工厂模式例子背景: 随着Ipone手机的销售火热。同时在**组装**Ipone手机的时候我们需要考虑到手机壳,手机其他配件等其他配件的匹配组装。于是这个工厂开始生产手机壳和其余手机配件,用来组装手机。这时候工厂有两个系列的产品:手机壳和其余配件。Iphone7系列配置A型号手机壳和A型号其余配件,Iphone8系列配置B型号手机壳和B型号其余配件。概念: 抽象工厂模式

2017-03-30 20:10:31

工厂模式

工厂模式简单工厂模式工厂方法模式工厂模式一、工厂模式主要是为创建对象提供过渡接口,以便将创建对象的具体过程屏蔽隔离起来,达到提高灵活性的目的。1.首先我们应该简单明确Java代码规范的开闭原则: 对扩展开放;对修改封闭在明确了java的规范之后,来看所谓的工厂模式。 2.工厂模式在很多地方区分不同,有些地方把它严格区分为三类,简单工厂模式,工厂方法模式,(抽象工厂模式)。大部分时候我们将他

2017-03-30 19:56:23

Postman-CI集成Jenkins

Postman-简单使用Postman-进阶使用Postman-CI集成Jenkins  Newman官方说明:Postman’s command-line companion lets you do amazing things! With Newman, you can integrate Postman collections with your build system. Or you

2016-12-08 16:34:27

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!