自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 文档转移到语雀通知

发现了更好用的Markdown工具《语雀》,文档会陆续转移,新的博客也会在语雀更新~语雀知识库链接:https://www.yuque.com/mygod

2019-10-11 11:48:22 1404

转载 Markdown自动生成左侧导航栏

<script src="http://code.jquery.com/jquery-1.7.2.min.js"></script><script type="text/javascript"> //是否显示导航栏 var showNavBar = true; //是否展开导航栏 var expandNavBar = true; var curren...

2019-04-11 16:24:58 6773 6

原创 笔记分类导航目录

历史笔记:《JAVA的并发编程》JAVA的并发编程(一): 线程和锁JAVA的并发编程(二): Synchronized的细节问题JAVA的并发编程(三): Volatile关键字详解JAVA的并发编程(四): 线程的通信JAVA的并发编程(五): 同步类容器和并发类容器JAVA的并发编程(六): 多线程的设计模式JAVA的并发编程(七):Java的四种线程池和自定义线程池JAV...

2019-03-25 14:40:35 1200 2

原创 Maven构建项目速度太慢的解决办法,curl下载 archetype-catalog.xml

吐槽CSDN上一堆收费的文件,在此奉上免费下载的方法~下载方法找个目录,cmd或者打开bash菜单,执行以下代码curl https://repo1.maven.org/maven2/archetype-catalog.xml >> archetype-catalog.xml使用方法别的博主发的使用方法:https://www.cnblogs.com/han-1034683568/p/6498637.html...

2021-12-22 11:40:57 660

原创 Spring 整合 Hessian

1.1 Hessian简介Hessian是一个轻量级的Web服务实现工具,它采用的是二进制协议,因此很适合发送二进制数据。它的一个基本原理就是把远程服务对象以二进制的方式进行发送和接收。1.2 Spring 整合 Hessian1.2.1 概述对于Hessian而言,有服务端和客户端,所以我们的整合也需要分服务端的整合和客户端的整合。服务端的整合是通过Spring进行的,而客户端...

2020-06-30 16:32:29 3235

转载 Java的对象头和对象组成详解(转载)

文章目录Java的对象头和对象组成详解一. 对象头1. Mark Word2. 指向类的指针3. 数组长度二. 实例数据三. 对齐填充字节Java的对象头和对象组成详解Java对象保存在内存中时,由以下三部分组成:1,对象头2,实例数据3,对齐填充字节一. 对象头java的对象头由以下三部分组成:Mark Word指向类的指针数组长度(只有数组对象才有)1...

2019-07-25 15:10:09 967

转载 图解IOC控制反转

文章目录了解依赖倒置实现控制反转控制反转容器了解依赖倒置要了解控制反转( Inversion of Control ), 我觉得有必要先了解软件设计的一个重要思想:依赖倒置原则(Dependency Inversion Principle )。**什么是依赖倒置原则?**假设我们设计一辆汽车:先设计轮子,然后根据轮子大小设计底盘,接着根据底盘设计车身,最后根据车身设计好整个汽车。这里就出...

2019-07-25 10:30:18 274

原创 《Java的23种设计模式》代码解读(二):观察者模式

二. 观察者模式观察者模式,又可以称之为发布-订阅模式,观察者,顾名思义,就是一个监听者,类似监听器的存在,一旦被观察/监听的目标发生的情况,就会被监听者发现,这么想来目标发生情况到观察者知道情况,其实是由目标将情况发送到观察者的。 观察者模式多用于实现订阅功能的场景,例如微博的订阅,当我们订阅了某个人的微博账号,当这个人发布了新的消息,就会通知我们。1、观察者模式就像用户去奶站订牛奶 ...

2019-07-22 14:54:41 182

转载 Spring中都用到了那些设计模式?(转载)

我自己总结的Java学习的系统知识点以及面试问题,已经开源,目前已经 41k+ Star。会一直完善下去,欢迎建议和指导,同时也欢迎Star: https://github.com/Snailclimb/JavaGuideJDK 中用到了那些设计模式?Spring 中用到了那些设计模式?这两个问题,在面试中比较常见。我在网上搜索了一下关于 Spring 中设计模式的讲解几乎都是千篇一律,而且...

2019-07-20 20:14:11 240

转载 Spring Cloud iToken实战项目(十四):补充知识点 - 跨域问题

跨域问题什么是跨域问题在浏览器端进行 Ajax 请求时会出现跨域问题,那么什么是跨域,如何解决跨域呢?先看浏览器端出现跨域问题的现象,如下图所示跨域,指的是浏览器不能执行其他网站的脚本。它是由浏览器的同源策略造成的,是浏览器对 JavaScript 施加的安全限制。什么是同源?所谓同源是指,域名,协议,端口均相同http://www.funtl.com --> http://...

2019-07-20 12:07:27 232

转载 Spring Cloud iToken实战项目(十三):任务调度-Quartz

Quartz 使用本节视频【视频】项目实战-iToken-任务调度-Quartz概述Quartz 是 OpenSymphony 开源组织在 Job Scheduling 领域又一个开源项目,它可以与 J2EE 与 J2SE 应用程序相结合也可以单独使用。Quartz 可以用来创建简单或为运行十个,百个,甚至是好几万个 Jobs 这样复杂的程序。Jobs 可以做成标准的 Java 组件或 E...

2019-07-20 12:06:27 304

转载 Spring Cloud iToken实战项目(十二):消息队列

文章目录消息队列的流派什么是 MQ有 Broker 的 MQ重 Topic轻 Topic无 Broker 的 MQ消息队列的流派什么是 MQMessage Queue(MQ),消息队列中间件。很多人都说:MQ 通过将消息的发送和接收分离来实现应用程序的异步和解偶,这个给人的直觉是——MQ 是异步的,用来解耦的,但是这个只是 MQ 的效果而不是目的。MQ 真正的目的是为了通讯,屏蔽底层复杂的通...

2019-07-20 12:06:11 297

转载 Spring Cloud iToken实战项目(十一):创建文件上传服务提供者

文章目录1 创建文件上传服务提供者1.1 创建项目1.2 安装 FastDFS Java 客户端1.2.1 从 GitHub 克隆源码1.2.2 从源码安装并部署到 Nexus私服1.2.3 执行打包上传命令1.2.4 在项目中添加依赖2 创建 FastDFS 工具类2.1 定义文件存储服务接口2.2 实现文件存储服务接口2.3 文件存储服务工厂类2.4 配置文件存储服务工厂类4 实现分布式文件上...

2019-07-20 12:05:51 339

转载 Spring Cloud iToken实战项目(九):重构改善既有代码的设计

文章目录实现 Spring Cloud Config Client 通用配置创建itoken-config-respon项目新建公共配置文件删除其他配置文件的公有配置修改每个项目下的bootstrap配置文件, 新增`itoken-common-service`公用配置实现Spring Boot MyBatis Redis 二级缓存管理员服务,文章服务实现CRUD功能使用 FastDFS 实现图片...

2019-07-20 12:03:00 376

转载 计算机网络漫谈:OSI七层模型与TCP/IP四层(参考)模型(转载)

PS:原文写的太好了,忍不住转载了《计算机网络漫谈:OSI七层模型与TCP/IP四层(参考)模型》文章目录一.七层?四层?1.为什么需要协议?2.OSI七层模型是干什么的?3.TCP/IP四层(参考)模型4.TCP/IP(参考)模型与OSI七层模型有什么异同?二.自底向上的网络分层1.物理层2.数据链路层①.定义②.以太网协议③.MAC地址④.广播3.网络层①.IP协议②.子网掩码③.路由/...

2019-07-20 10:48:40 784

原创 Mybatis 中如何通过SqlSessionDaoSupport来手动实现DAOis

文章目录MyBatis1. 前言2. 认识 SqlSessionDaoSupport3. BaseDaoImpl3.1 基于注解实现3.2基于xml配置3.3 加强 BaseDaoImpl3.4 创建BaseDaoImpl的实现类3.5 剩余代码补齐3.5.2 BaseDao3.5.2 UserDao3.5 UserMapper.xml4. 总结MyBatis1. 前言在 MyBatis 中...

2019-07-12 21:44:25 1488

原创 tk.Mybatis 扩展通用mapper接口

文章目录tk.Mybatis 扩展通用mapper前文提要引言扩展通用mapper创建自定义接口:DletetByCodesMapper创建自定义模版:IdsProviderExt创建MyMapper继承扩展模版generator逆向工程生成 TbSysUserMapper 和XML创建Spring Boot启动类Junit Test 测试代码结果tk.Mybatis 扩展通用mapper前文...

2019-07-08 20:52:58 2440 1

转载 Docker compose 搭建分布式文件系统 FastDFS

文章目录1 FastDFS 简介1.1 百度百科1.2 简介1.3 上传交互过程1.4 下载交互过程1.5 FastDFS 为什么要结合 Nginx1.6 其他资源2 FastDFS 安装2.1 环境准备2.2 创建工作目录2.3 docker-compose.yml2.4 Dockerfile2.5 创建启动Shell脚本entrypoint.sh2.6 各种配置文件说明2.6.1 tracke...

2019-07-02 17:12:28 3145

转载 Spring 整合 Lombok 代码简化工具

文章目录LombokIDEA 安装 Lombok 插件查看是否安装成功使用 LombokPOM使用 @Data 注解简化 POJO使用案例LombokLombok 是一个可以通过简单的注解形式来帮助我们简化消除一些必须有但显得很臃肿的 Java 代码的工具,通过使用对应的注解,可以在编译源码的时候生成对应的方法。官网地址:https://projectlombok.org/GitHub:h...

2019-06-27 17:42:56 1138

转载 Spring 整合 Spring Validation 自动验证

Spring ValidationJSR-303 简介JSR-303 是 JavaEE 6 中的一项子规范,叫做 Bean Validation,官方参考实现是 Hibernate Validator。此实现与 Hibernate ORM 没有任何关系。JSR-303 用于对 Java Bean 中的字段的值进行验证。 Spring MVC 3.x 之中也大力支持 JSR-303,可以在控制...

2019-06-27 17:42:21 1755 2

转载 Spring Cloud iToken实战项目(十):创建文章服务提供者(整合Mybatis 二级缓存 和 Swagger2接口文档引擎)

文章目录创建文章服务提供者创建项目服务所需数据库脚本配置 MyBatis Redis 二级缓存概述一级缓存二级缓存开启 MyBatis 二级缓存实体类实现序列化接口并声明序列号IDEA 提示生成序列号创建相关工具类实现 Spring ApplicationContextAware 接口,用于手动注入 Bean实现 MyBatis Cache 接口,用于自定义缓存为 RedisMapper 接口中增...

2019-06-27 17:41:00 472

转载 Spring 整合 Google Captcha 验证码

文章目录验证码的作用Kaptcha 简介Kaptcha 详细配置表Spring MVC 整合 KaptchaPOM创建 Spring 配置Controller 层代码JSP 关键代码验证码的作用防止恶意破解密码、刷票、论坛灌水、刷页。有效防止某个黑客对某一个特定注册用户用特定程序暴力破解方式进行不断的登录尝试,实际上使用验证码是现在很多网站通行的方式(比如招商银行的网上个人银行,百度社区),...

2019-06-25 15:15:44 2841

原创 HttpClient 的简单使用

文章目录简介特性使用方法POM依赖使用方式HttpClientUtil 工具类简介HttpClient是Apache Jakarta Common下的子项目,用来提供高效的、最新的、功能丰富的支持HTTP协议的客户端编程工具包,并且它支持HTTP协议最新的版本和建议。HttpClient已经应用在很多的项目中,比如Apache Jakarta上很著名的另外两个开源项目Cactus和HTMLUn...

2019-06-25 08:18:32 222

原创 Mybatis 动态 SQL

文章目录1 Mybatis 动态 SQL1.1 动态SQL:if 语句1.2 动态SQL:if+where 语句1.3 动态SQL:if+set 语句1.4 动态SQL:choose(when,otherwise) 语句1.5 动态SQL:trim标签1.5.1 用 trim 改写上面第三点的 if+set 语句1.5.2 用 trim 改写上面第四点的 choose(when,otherwise...

2019-06-21 11:28:12 142

原创 SpringBoot 踩坑集锦

一、小白坑1 页面4041. 确认输入项目路径是否正确,如:http://localhost:8080/index,这里需要注意的是端口号的查看2. 确认注解是否用对在 Controller 层类上面使用的注解是 @RestController 而并非是 @Controller,或者是 @Controller + @ResponseBody;详解:如果返回 Str...

2019-06-21 10:55:24 3568

原创 SpringBoot(三):常用属性(Properties)汇总

Spring Boot(三):常用Properties汇总(已翻译)作者:雨雾清影出处:https://docs.spring.io/spring-boot/docs/current/reference/html/common-application-properties.html翻译:Google翻译Spring Boot可以在application.properties/appli...

2019-06-21 10:53:41 748

转载 Java如何正确地处理时间

前言日期和时间在程序中应用广泛,每种程序开发语言都自带处理日期和时间的相关函数,很多开发者把日期和时间存入数据库中,但是,一旦涉及到跨时区的日期和时间的处理时,大多数开发者根本就不明白如何正确地处理日期和时间。首先,我们来看大部分的程序都是这么创建当前时间并存入数据库的://伪代码Date date = new Date();store2db(date);这么做的问题在于,数据库的...

2019-06-21 09:53:41 165

原创 Spring 常见问题集合

springmvc接收数组类型参数为null前端JS代码://获取选中标签var checkboxs= $('#added_labels input:checkbox');//储存选中idvar ids= [];$.each(checkboxs,function (i,obj) { ids.push(obj.value);})//发起ajax请求$.ajax({ ...

2019-06-20 10:58:50 240

原创 IDEA 必备技巧集合

总纲1.《常用模板代码快捷键及自定义模板代码》2.《代码提示不区分大小写设置》

2019-06-15 18:21:27 277

原创 JSP 技巧整理

文章目录1 时间戳显示1 时间戳显示用 taglib 引用 fmt标签库<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>显示时间戳<fmt:formatDate value="${user.created}" pattern="yyyy-MM-dd HH:mm:ss"/>...

2019-06-15 18:02:33 1056

原创 Linux 技巧整理

1 Ubunto1.1 Ubunto连接网络查看本机网络,例如我的wifi网络名为 wlp3s0ifconfig修改ubunto网络配置文件vi /etc/network/interfaces1、动态获取的方式连接Wi-Fi网络auto wlp3s0iface wlp3s0 inet dhcp wpa-essid Wi-Fi名称wpa-psk Wi-Fi密码如果连接的...

2019-06-15 10:30:16 178

转载 99% 的人不知道的 get和post的区别

99% 的人不知道的 get和post的区别引申GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。当你在面试中被问到这个问题,你的内心充...

2019-06-01 16:43:09 181

原创 SpringMVC 整合 Freemarker 详解

1. 简介FreeMarker是一款模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页、电子邮件、配置文件、源代码等)的通用工具。 它不是面向最终用户的,而是一个Java类库,是一款程序员可以嵌入他们所开发产品的组件。FreeMarker是免费的,基于Apache许可证2.0版本发布。其模板编写为FreeMarker Template Language(FTL),属于...

2019-06-01 14:48:35 5680

原创 Spring MVC 的 xml 配置详解

文章目录Spring 配置 properties的多种方法1.PropertyPlaceholderConfigurer2. 标签Spring 配置 properties的多种方法1.PropertyPlaceholderConfigurerPropertyPlaceholderConfigurer是个bean工厂后置处理器的实现,也就是 BeanFactoryPostProcessor接口...

2019-05-28 17:39:57 16216

转载 走向单体地狱(九):MyBatis

文章目录MyBatis 简介概述MyBatis 与 HibernateMyBatis 的特点Druid 简介概述各种连接池性能对比测试测试环境基准测试结果结论Spring 整合 DruidPOM配置数据库连接Spring 集成 Druid配置 Druid 监控中心MyBatis 简介概述MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC,使开发者只需关注 SQL...

2019-05-27 15:47:17 308

转载 走向单体地狱(八):Spring MVC

文章目录Spring MVC 简介概述DispatcherServlet 组件类Spring 整合 Spring MVCPOM配置 web.xmlCharacterEncodingFilterDispatcherServlet配置 Spring MVC系统相关配置去掉 Spring 配置的重复扫描第一个 Controller 控制器概述注解说明@Controller@RequestMappingS...

2019-05-26 13:54:09 563

转载 走向单体地狱(七):Spring Web

Spring 整合 Web容器初始化启动容器时需要自动装载 ApplicationContext,Spring 提供的 ContextLoaderListener 就是为了自动装配 ApplicationContext 的配置信息POM需要在 pom.xml增加 org.springframework:spring-web 依赖<dependency> <gro...

2019-05-23 17:29:23 287

原创 走向单体地狱(六):Log4j日志

文章目录Log4j 简介概述Log4j 日志级别概述为什么要对日志进行分级Log4j 日志输出控制文件日志输出简介日志属性配置文件什么是日志附加器?常用的附加器实现类常用布局类型Log4j 简介概述一个完整的软件,日志是必不可少的。程序从开发、测试、维护、运行等环节,都需要向控制台或文件等位置输出大量信息。这些信息的输出, 在很多时候是使用System.out.println()无法完成的。...

2019-05-17 14:35:32 213

转载 走向单体地狱(五):JUnit单元测试

JUnit 简介概述JUnit 是用于编写和运行可重复的自动化测试的开源测试框架,这样可以保证我们的代码按预期工作。JUnit 可广泛用于工业和作为支架(从命令行)或IDE(如 IDEA)内单独的 Java 程序。JUnit 提供:断言测试预期结果。测试功能共享通用的测试数据。测试套件轻松地组织和运行测试。图形和文本测试运行。JUnit 用于测试:整个对象对象的一部分 -...

2019-05-17 11:10:10 190

转载 走向单体地狱(四):Spring框架

文章目录Spring 简介概述Spring 体系结构概述Spring 的特点非侵入式容器IoCAOPSpring 与 IoC概述第一个 Spring 应用程序POM创建接口与实现创建 UserService 接口创建 UserServiceImpl 实现创建 Spring 配置文件测试 Spring IoCSpring 简介概述Spring 的主要作用就是为代码“解耦”,降低代码间的耦合度。...

2019-05-17 11:02:19 347

空空如也

空空如也

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

TA关注的人

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