自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

itzhouq的博客

种一棵树最好的时间是十年前,其次是现在。blog.itzhouq.cn

  • 博客(33)
  • 收藏
  • 关注

原创 SpringBoot 项目构建 Docker 镜像

SpringBoot 项目构建 Docker 镜像Spring Boot 项目部署有多种方式,这里记录其中一种。借助 maven 插件将 SpringBoot应用打包为 Docker 镜像,并上传到私有镜像仓库 Docker Registry。安装 Docker Registry首先为了保证网速建议 Docker 使用阿里云或者国内镜像仓库。修改 /etc/docker/daemon.json 添加镜像。{ "registry-mirrors": ["https://hhuovh45.mir

2021-02-05 17:12:55 276

原创 代理模式

文章首发于我的个人博客,欢迎访问。在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。在代理模式中,我们创建具有现有对象的对象,以便向外界提供功能接口。代理模式的优势是实现了无侵入的代理扩展,也就是方法的增强;让你可以在不用修改源码的情况下,增强一些方法。为什么要学习代理模式呢?因为 Spring AOP 的底层就是代理模式。现在模拟一个场...

2020-04-28 11:28:02 143

原创 JVM 基础、堆内存分析和垃圾回收算法

文章首发我的博客,欢迎访问:https://blog.itzhouq.cn/jvm首先基本的面试题都是下面的夺命连环问,感受一下。请你谈谈你对 JVM 的理解。java8 虚拟机和之前有什么变化?什么是 OOM, 什么是栈溢出 StackOverFlowError? 怎么分析?JVM 的常用调优参数有哪些?内存快照如何抓取,怎么分析 Dump 文件?你知道吗?谈谈 JVM 中,你对类...

2020-04-24 16:56:45 237

原创 Java中的注解和反射

文章首发我的博客,欢迎访问:https://blog.itzhouq.cn/annotation-reflection最近又回顾了一下 Java 中的注解和反射知识点,注解在日常开发中使用很多,但是反射比较少。值得注意的是 Java 的各种框架底层源码中大量使用了注解和反射,阅读源码,这些是基本功,面试中这部分内容也经常问到。这里面概念不多,内容略微有些枯燥,但是通过一些简单的例子,能让我们明白...

2020-04-24 16:51:26 176

原创 POI和EasyExcel 的使用笔记

文章首发于我的个人博客,欢迎访问。POI和EasyExcel 的使用笔记我们经常需要将项目中的表格数据或者文档数据进行导入或者导出操作,这个如果自己从零开始做还比较麻烦。比如我之前就职的公司都是自己做的组件,但是很不好用,BUG 太多。关于表格导入导出,市面上比较知名的开源就是 Apache 的POI 和 阿里巴巴的 EasyExcel了。EasyExcel 也是对 POI 的改进和封装, 更...

2020-04-24 11:55:18 768

原创 ES6新特性总结

ES6新特性总结日常开发中写的 JavaScript 代码,会用到ES6的部分新特性,这篇博客总结了ES入门的知识点,供日常查阅使用。1. let和const命令varES6之前, 我们定义变量使用关键词var. 但是var有个问题就是定义的变量很容易变成全局变量, 这并不是我们想看到的.比如:for (var i = 0; i < 5; i++){  c...

2020-04-22 22:38:36 269

原创 基于 Solo 通过阿里云服务器+Docker+Nginx+MySQL搭建个人博客

文章首发:https://blog.itzhouq.cn/solo1、部署环境列表系统阿里云 Centos7(香港服务器)JDK1.8solo 方式Docker数据库Docker-mysql 5.7反向代理Docker-nginx-release协议https后面Docker命令用的比较多,可以参考Docker教程2、安装 JDK...

2020-04-22 22:37:32 461

原创 jQuery知识梳理20190818

jQuery知识梳理20190818文章目录jQuery知识梳理201908181. 时间绑定和解绑2. 区别mouseover与mouseenter3. 时间委托(委派/代理)4 . 多库共存5.` window.onload`与` $(document).ready()`的区别6. 自定义插件7. 使用插件1. 时间绑定和解绑<!DOCTYPE html><html...

2019-08-21 14:46:26 77

原创 jQuery知识梳理20190817

JavaScript获得URL地址栏参数防乱码JavaScript中经常需要解析地址栏中拼接的参数。下面的代码基本是固定的代码,这里摘录下备用。//获得地址栏参数值function getUrlParam(name) { // 用该属性获取页面 URL 地址从问号 (?) 开始的 URL(查询部分) var url = window.location.search; // ...

2019-08-18 22:28:19 70

原创 JavaScript笔记02_对象

文章目录1. 函数1. 函数创建2. 函数的参数2. return、break、continue3. 立即执行函数4. 对象5. 枚举对象中的属性6. 声明提前1.变量的声明提前2. 函数的声明提前7. 作用域(Scope)1. 全局作用域2. 函数作用域8. this9. 使用工厂方法创建对象10. 构造函数11. 原型12. toString13. 垃圾回收(GC)1. 函数1. 函数创建...

2019-07-06 23:53:25 54

原创 JavaScript笔记01_基本操作

文章目录1. JS代码编写的位置2. 为什么JavaScript中代码要以分号结束3. 字面量和变量4. 数据类型5. 类型装换6. ++a和a++7. 逻辑运算符8. 相等运算符9. 特殊值undefined、null和NaN的比较和判断10. 对象1. 基本概念:2.对象的分类:3. 对象的基本操作4. 属性名和属性值11. 基本数据类型和引用数据类型12. 对象的字面量1. JS代码编写的...

2019-07-01 00:45:20 122

原创 一些面试题

最近一直在面试。面试了大约有10来家公司,有1000人以上的大公司,也有50左右的小公司。时间仓促没有准备充分,面试的机会虽然很多,但是面试时表现的一般。通过这10来场的面试,我对自己的知识体系薄弱环节有了较为清楚的认识。这里记录一些我在面试中遇到的比较常见的面试题。这只是一种的小小一部分。文章目录0. 数据库1. 基本数据类型和引用数据类型的区别2. 检查时异常和运行时异常的区别3. Sp...

2019-06-06 16:24:02 85

原创 线程创建_同步_通信

1. 基本概念:程序、进程、线程程序(program):是为完成特定任务、用某种语言编写的一组指令的集合。即指一段静态的代码,静态对象。进程(process):是程序的一次执行过程,或是正在运行的一个程序。是一个动态的过程:有它自身的产生、存在和消亡的过程。——生命周期。如:运行中的QQ,运行中的MP3播放器;程序是静态的,进程是动态的;进程作为资源分配的单位,系统在运行时会为每个进...

2019-05-12 23:35:24 180

原创 SpringMVC框架笔记02_参数绑定返回值文件上传异常处理器JSON数据交互_拦截器

文章目录第1章 高级参数的绑定1.1 参数的分类1.2 数组类型的参数的绑定1.3 集合类型的参数的绑定第2章 @RequestMapping的用法2.1 URL路径映射2.2 请求方法限定2.3 窄化请求映射第3章 Controller方法的返回类型3.1 返回ModelAndView3.2 返回void3.3 返回类型为String3.3.1 逻辑视图名3.3.2 重定向3.3.3 转发第4章...

2019-05-04 15:17:21 249

原创 SpringMVC框架笔记01_SpringMVC的使用案例和架构组件_SpringMVC和Mybatis整合_接收参数

文章目录第1章:SpringMVC简介1.1 什么是SpringMVC1.2 SpringMVC的处理流程第2章:SpringMVC入门程序2.1 场景描述2.2 步骤分析2.3 步骤一:创建Web项目2.4 步骤二:导入jar包2.5 步骤三:在`web.xml`中配置DispatcherServlet前端控制器2.6 步骤四:创建`springmvc.xml`配置文件2.7 步骤五:新建一个...

2019-05-03 21:54:52 388

原创 SSH框架笔记01_SSH整合的两种方式

文章目录1. 框架回顾2. 创建项目,引入`jar`包2.1 Struts2的jar包2.2 Hibernate的jar包2.3 Spring的jar包3. 引入配置文件3.1 Struts2配置的文件3.2 Hibernate的配置文件3.3 Spring的配置文件4. 创建包结构5. 创建相关类,引入页面6. Spring整合Struts26.1 Spring整合Struts2方式一:Acti...

2019-05-01 22:37:11 151

原创 Struts框架笔记04_拦截器_标签库

文章目录1. Struts2的拦截器1.1 拦截器概述1.2 拦截器的实现原理1.3 Struts的执行流程1.4 拦截器入门1.4.1 环境搭建1.4.2 编写拦截器1.4.3 配置拦截器2. Struts2的标签库2.1 通用标签库2.2 UI标签库:方便数据回显1. Struts2的拦截器1.1 拦截器概述拦截器,在AOP中用于在某个方法或某个字段被访问之前,进行拦截然后再之前或之...

2019-04-30 19:58:26 130

原创 Struts框架笔记03_OGNL表达式与值栈

文章目录1. OGNL1.1 OGNL概述1.1 什么是OGNL1.1.2 OGNL的优势1.1.2 OGNL使用的要素1.2 OGNL的Java环境入门【了解】1.2.1 访问对象的方法1.2.2 访问对象的静态方法1.2.3 获得Root中的数据1.2.4 获得OgnlContext中的数据1.3 OGNL的Struts2的环境入门1.3.1 访问对象的方法1.3.2 访问对象的静态方法2. ...

2019-04-30 14:53:34 229

原创 Struts2框架笔记02_API_结果页面配置_数据的封装

文章目录1. Struts2的Servlet的API的访问1.1 方式一:完全解耦合的方式1.1.1 环境搭建1.1.2 代码1.1.3 测试1.1.4 向域对象中存入数据1.2 方式二:使用Servlet的API的原生方式【掌握】1.2.1 jsp文件1.2.2 Action类RequestDemo21.2.3 配置文件struts_demo.xml1.2.4 测试1.3 方式三:接口注入的方...

2019-04-29 20:35:40 133

原创 Strust2框架笔记01_XML配置_action编写

文章目录1.Struts2概述1.1 什么是Struts21.2 Web层框架基于前端控制器模型设计2. Struts2入门案例2.1 Struts2的开发环境2.2 解压开发包2.3 创建项目,引入jar包2.4 创建一个JSP页面2.5 编写Action的类2.6 对Action进行配置2.7 配置前端控制器(核心过滤器)2.8 测试2.9 改写Action中的方法的返回值2.10 改写str...

2019-04-29 20:28:18 171

原创 Hibernate框架笔记04HQL_QBC查询详解_抓取策略优化机制

文章目录1. Hibernate的查询方式1.1 方式一:OID查询1.2 方式二:对象导航查询1.3 **方式三:HQL方式**1.4 **方式四:QBC查询**1.5 方式五:SQL查询2. 环境搭建3. HQL查询3.1 简单查询3.2 别名查询3.3 排序查询3.4 条件查询3.4 投影查询3.5 分页查询3.6 分组统计查询3.7 HQL的多表查询3.7.1 SQL的多表查询3.7.2 ...

2019-04-25 18:54:55 463

原创 Hibernate框架笔记03_表操作_多对多配置

Hibernate框架笔记03_表操作_多对多配置文章目录Hibernate框架笔记03_表操作_多对多配置1. 数据库表与表之间的关系1.1 一对多关系1.2 多对多关系1.3 一对一关系【了解】2. Hibernate的一对多关联映射2.1 创建一个项目,引入相关jar包2.2. 创建数据库和表2.3 创建实体2.4 创建映射文件2.5 创建核心配置文件2.6 引入工具类和日志2.7 编写测...

2019-04-24 20:35:56 192

原创 Spring笔记01

文章目录Spring笔记011. Spring介绍1.1 Spring概述1.2 Spring好处1.3 Spring结构体系1.4 在项目中的架构1.5 程序的耦合和解耦2. Spring快速入门2.1 编写流程2.2 下载地址2.3 Spring的核心jar包2.4 Spring入门案例3. Spring基于XML的IOC细节3.1 IOC中bean标签和管理对象细节3.1.1 配置文件bea...

2019-04-23 22:30:38 108

原创 Hibernate笔记02_主键生成策略_一级缓存_事务管理

0. 结构图1. 持久化类的编写规则1.1 持久化和持久化类持久化:将内存中的一个对象持久化到数据库的过程,Hibernate框架就是用来进行持久化的框架。持久化类:一个Java对象与数据库的表建立了映射关系,那么这个类在Hibernate中称为持久化类。持久化 = Java类 + 映射文件1.2 持久化类的编写规则对持久化提供一个无参的构造方法:HIbernate底层...

2019-04-23 14:32:12 206

原创 Hibernate框架笔记01_环境搭建_API_CRUD

1. Hibernate框架的概述1.1 什么是框架框架:指的是软件的半成品,已经完成了部分功能。1.2 经典三层架构1.3 Hibernate框架什么是hibernate:Hibernate是一个持久层的ORM框架什么是ORM:Object Relational Mapping(对象关系映射)。指的是将一个Java中的对象与关系型数据库中的表建立一种映射关系,从而操作...

2019-04-22 19:51:55 223 1

原创 Spring笔记04_AOP注解开发_模板_事务

1. Spring基于AspectJ的注解的AOP开发1. 1 SpringAOP的注解入门创建项目,导入jar包需要导入Spring基础包4+2需要导入AOP联盟包、AspectJ包、Spring整合Aspect包Spring-aop包Spring整合单元测试包引入配置文件applicationContext.xml<?xml version="1....

2019-04-21 19:09:18 172

原创 Spring笔记03_AOP

1. AOP1.1 AOP介绍1.1.1 什么是AOP在软件业,AOP为Aspect Oriented Programming的缩写,意为:面向切面编程,通过预编译方式和运行期动态代理实现程序功能的统一维护的一种技术。AOP是OOP(面向对象编程)的延续,是软件开发中的一个热点,也是Spring框架中的一个重要内容,是函数式编程的一种衍生范型。利用AOP可以对业务逻辑的各个部分进行隔离,从...

2019-04-20 21:20:05 140

原创 Spring笔记02

Spring入门笔记021. Spring整合连接池1.1 Spring整合C3P0在工程中导入c3p0连接池需要的包com.springsource.com.mchange.v2.c3p0-0.9.1.2.jarc3p0的硬编码方式@Test //自己new对象,自己设置属性 public void test() throws Exception { ComboPool...

2019-04-20 21:04:55 111

原创 面试题:类加载器

面试题:类加载器1. Java类加载器Java源代码.java文件通过编译成字节码.class文件后,需要被加载到Java虚拟机的内存空间中使用,这个过程就是类加载。类加载依靠的是Java类加载器Java类加载器是Java运行时环境的一部分,负责动态加载Java类到Java虚拟机的内存空间中。类通常是按需加载的,即第一次使用该类时才加载。由于有了类加载器,Java运行时系统不需要知道文件的...

2019-04-19 10:13:18 417

原创 面试题:增强一个对象的方法的三种方式

面试题:增强一个对象的方法的三种方式1. 继承使用这种方式必须满足的条件是:被增强的方法的所在类能被继承,并且这个对象已经明确知道。举例:有一个接口Person,里面有一个方法run()package com.itzhouq.demo1;public interface Person { public void run();}类NormalPerson实现了这...

2019-04-18 23:58:55 193

原创 Redis的数据结构

Redis的数据结构redis是一种高级的key-value的存储系统,其中value支持五种数据类型。字符串(String)哈希(hash)字符串列表(list)字符串集合(set)有序字符串集合(sorted set)1. 存储字符串String字符串类型是Redis中最为基础的数据存储类型,它在Redis中是二进制安全的,这便意味着该类型可以接受任何格式的数据,如JPEG...

2019-04-17 23:32:19 89

原创 Centos6.5安装Redis3.0备忘记录

Centos6.5安装Redis3.01. 安装C编译环境首先需要安装编译Redis的C环境,在命令行执行以下命令:[root@itzhouq32 tools] yum install gcc-c++2. 将redis3.0上传到Linux上3. 解压redis,我这里解压到/usr/local下[root@itzhouq32 tools]# tar -xvf redis-3.0.0...

2019-04-17 23:30:48 81

原创 Centos6.5安装MySQL5.6备忘记录

Centos6.5安装MySQL5.61. 查看系统状态[root@itzhouq32 tools]# cat /etc/issueCentOS release 6.5 (Final)Kernel \r on an \m[root@itzhouq32 tools]# uname -aLinux itzhouq32 2.6.32-431.el6.x86_64 #1 SMP Fri No...

2019-04-17 23:28:40 72

空空如也

空空如也

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

TA关注的人

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