自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

代码充实生活的博客

用键盘敲出代码,用代码丰富生活~

  • 博客(69)
  • 资源 (8)
  • 收藏
  • 关注

原创 Docker之Linux安装与卸载(简单的几行命令)

一、linux安装docker(centos7)安装必要的依赖包:sudo yum install -y yum-utils device-mapper-persistent-data lvm2 设置稳定的镜像仓库(推荐使用阿里云):sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 安装最新版的docker:sudo yum install docke.

2021-07-10 01:15:26 164

原创 详谈如今的Servlet

一、前言现如今流行的web服务器如tomcat,既可以是HTTP服务器(处理静态资源,当性能比不上Nginx等专业),也可以是一个web容器,web容器就是一个servlet容器,而servlet容器就是实现了servletAPI规范的一组服务。Servlet API规范中,定义了其生命周期的三个方法:init(),service(),destroy(),还有过滤器filter,监听器listener。这些servletAPI规范定义在javax.servlet-api包中,它是单独一个jav...

2021-07-09 23:32:10 2708 8

原创 手把手使用VirtualBox创建centOS7虚拟机并完成网络配置-实现固定连接IP以及内外网络访问

一、需求安装使用centOS7虚拟机。 在主机上VirtualBox软件安装虚拟机后,需要实现主机与虚机相互通信,并可以使用SSH工具在主机上连接虚机,保证连接虚机的IP地址固定。 主机与虚机相互可以连接后,还需要虚机也能连接网。二、基本思路需要下载指定系统版本的centOS镜像并使用VirtualBox创建centOS实例。 本地配置一个虚拟网卡与主机网络共享,与虚拟机网卡绑定实现网络连接。 配置虚拟机使用两种网卡类型:NAT模式和Host-Only模式,生成两个虚机网卡。 在虚机中对

2021-07-06 00:12:35 6106 11

原创 Java工具 Maven 一文搞定Maven

一、什么是MavenMaven是Apache下的一个纯Java开发的开源项目,是一个项目管理工具,用于构建和管理任何基于java的项目:构建:Maven通过一套统一标准的构建方法来构建maven项目,并明确定义项目的组成结构。 管理:Maven根据其生命周期去管理项目,包括依赖、测试、打包、发布等;可以实现多个项目共享jar包。Maven提供仓库管理、依赖管理、插件拓展、继承和聚合等特性为项目的构建和管理提供了一整套完善的解决方案。二、Maven使用场景希望统一的方式构建java...

2021-06-29 23:15:49 1996 4

原创 Docker之详解Dockerfile 05

Dockerfile文件是定义镜像的每一层是如何构建的,因为Dockerfile是分层构建并且每一条Dockerfile指令就表示构建一层,当前层是基于上一层为基础构建而来,因此每条Dockerfile指令都需要深思熟虑的编写,确保每一层构建的镜像都不存在无用的东西;Dockerfile语法格式支持Shell类的行尾添加“\”的命令换行、行首“#”进行注释等格式。支持使用“&&”将各个所需命令串联起来作为一条Dockerfile指令。Dockerfile提供了十多个指令:1. FR...

2021-06-26 18:19:50 805

原创 Docker之定制镜像 04

所谓定制镜像就是以一个镜像为基础,在其上进行定制;定制镜像常用方法:一、利用docker commit命令定制镜像镜像是容器的基础,镜像是多层存储,每一层是在前一层的基础上进行的修改而来;二容器同样也是多层存储,是在以镜像为基础,在其基础上加一层作为容器运行时的存储层;利用docker commit命令可以将该容器的基础镜像加上运行容器的存储层打包构建成新的镜像。步骤:使用docker run命令运行现有的一个docker镜像,启动一个容器 使用docker exec -it /...

2021-06-26 18:17:50 541

原创 Docker之基本使用 03

一、基本命令使用1. docker run -d -p 80:80 images_name 后台独立运行一个容器:参数说明:-d --在隔离模式下后台运行一个docker容器-p 80:80 --将宿主机的80端口映射到容器的80端口images_name --需要运行的镜像2. Docker exec 二、docker基本使用制作docker镜像镜像的制作常用两种方法:第一种,使用dockerfile文件制作镜像:制作镜像之前,需要有一个应...

2021-06-26 18:15:20 610

原创 Docker之命令字典 02

一、docker命令图解:二、docker命令详解命令总共分为六个部分,分别为Images,Container,TarFiles,Dockerfile,Registry,Engine;将按照这六各部分逐渐拆分讲解。注入如果遇到命令后面不知道使用那些参数,可以在后面加-h查看所有参数选项,例如:想要查看images后面可带参数,可以使用docker images --help查看注意:docker run 就相当于docker create+docker attach 两个命令的叠加。do..

2021-06-26 18:11:11 737 1

原创 Docker之基础入门 01

一、docker介绍docker是一个快速交付、开发和运行应用程序的平台。docker提供一个独立的运行应用程序环境,应用程序不依赖其环境就可以部署运行应用程序,可以将业务程序和基础架构进行隔离,具有隔离性。隔离原理是底层利用linux内核命名空间namespaces和cgroups功能来达到容器工作空间的隔离性。docker通过快速交付、测试和部署代码的方法,可以减少编写代码和生产环境运行程序的时延。docker具有隔离性和安全性,并且docker是轻量级的,因此可以运行多个dock...

2021-06-26 17:58:40 722

原创 关系型数据库中DataBase(DB)、schema、role三者之间的关系

关系型数据库表空间用于定义数据库对象在物理存储设备上的位置,不特定于某个单独的数据库。数据库DB是数据库对象的物理集合,而schema则是数据库内部用于组织管理数据库对象的逻辑集合,schema名字空间之下则是各种应用程序会接触到的对象,比如表,索引,数据类型,函数,操作符等。角色(用户)role则是数据库服务器(集群)全局范围内的权限控制系统,用于各种集群范围内所有的对象权限管理。因此角色不特定于某个单独的数据库,但角色如果需要登录数据库管理系统则必须连接到一个数据库上。角色可以拥有各种数据库对

2021-01-31 14:50:32 1976

原创 Redis简单入门及使用

简介Redis数据库为Nosql型数据库中的一种,Nosql数据库为非关系数据库,特点是易扩展、大数据量,高性能、灵活的数据模型、高可用。1.redis是什么Redis是一个开源(BSD许可),内存数据结构存储,用作数据库、缓存和消息代理,它支持数据结构,如字符串、散列、列表、集合、带有范围查询的排序集、位图、超级日志、具有半径查询流的地理空间索引。Redis具有内置复制、Lua脚本、LRU驱逐(算法)、事务和不同 级别的磁盘持久化,并通过Redis Sentinel(哨兵)提供高可用性并使用Redi

2021-01-31 14:42:08 91

原创 Redis-入门篇

一、简介Redis数据库为Nosql型数据库中的一种,Nosql数据库为非关系数据库,特点是易扩展、大数据量,高性能、灵活的数据模型、高可用。1.redis是什么Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker. It supports data structures such as strings, has...

2020-10-07 17:07:16 193

原创 Java-并发工具-基本类FutureTask

前言获取Java并发编程思维导图:Java并发编程-首页关注微信公众号及时推送更多知识:当代猿内容详情

2020-04-10 00:06:54 134

原创 Java-并发工具-线程池原理-ScheduledThreadPoolExecutor

前言获取Java并发编程思维导图:Java并发编程-首页关注微信公众号及时推送更多知识:当代猿内容详情

2020-04-09 23:53:51 184

原创 Redis在java项目中的缓存应用

前言在当前大数据时代,信息量、数据量日益膨胀;一些存储系统的数据库也不断优化,去适应这个大数据的需求;当我们的客户端某个系统发送请求频繁读取大量数据的时候,单单是:客户端–>请求/响应–>数据库;这种模式是远远不能满足用户需求的;因为这种模式频繁请求涉及很多的IO流访问,成本量太高;就从

2019-10-24 15:47:58 2547

原创 Java NIO之缓存Buffer代码实例

文章目录代码实例控制台输出结果代码实例import java.nio.Buffer;import java.nio.ByteBuffer;import java.util.ArrayList;import java.util.List;/** * java NIO系列之缓冲区Buffer: * *主要负责数据的存取,其底层的实现就是数组,用于存储不同数据类型的数据, * 根据...

2019-10-24 15:33:28 687

原创 Java NIO详解

JAVA NIO 简介NIO与IO的对比

2019-10-24 09:41:37 10551 1

原创 Redis系列之简介及Linux安装

Redis系列之简介及Linux安装Redis简介Redis的特点Redis与memcached相比的独特之处Redis在Linux的安装使用Redis简介Redis是一个开源(遵循BSD许可协议:是一个给于使用者很大自由的协议,BSD 代码鼓励代码共享,但需要尊重代码作者的著作权),内存数据结构存储,可用作数据库、缓存和消息代理;它支持比较丰富的数据结构,如字符串、散列、列表、集合、带有范围...

2019-10-20 12:11:40 180

原创 基于Spring Boot 2.X的API功能

背景目前各系统之间的数据交互越来越频繁,频繁的给项目增加接口不仅增加整个系统的负担,还给开发人员麻烦,开发效率低,日常维护起来更是嫌弃;最近几年Spring微服务非常火,基于Spring Boot的Spring Cloud已经成为一站式微服务框架;准备入手Spring Cloud;首先从Spring Boot下手,使用Spring Boot写了个通用型的第三方接口功能,目前主要用于查询数据抛给调...

2019-05-21 22:06:27 2341

原创 JQuery中使用select2插件功能之自动完成下拉框动态加载匹配(本地数据与远程数据结合)

前言最近项目中遇到一个问题:前端加载页面的时候某些页面加载速度很慢,耗时很久;有些页面加载的飞快;因为上面所说的页面都是由同一个程式动态生成的,利用多线程同步机制完成不同的前端页面;因此当时就断定不是程式的大问题;应该是处理数据部分存在问题;在chrome浏览器一测;还真的是大数据的问题;进入页面就加载大批量数据进来;不仅增加数据库的负担 ,前后端处理数据也会造成一定的压力;因为有些函数把这些大...

2019-05-21 22:04:38 10930 1

原创 Swagger2在spring boot API中的集成使用

背景最近基于RESTful API开发Spring boot的接口,由于接口url众多,不同的url的uri对应的业务资源有不一样(业务逻辑是一样的,主要是通过改变接口的uri来辨别要处理对应的资源),面对不同的接口,我们一般的想法就是,会创建一份RESTful API文档来记录所有接口的细节;如果想要做的有质量又有效率,然而不是一件简单的事情,会存在以下两个问题:1.如果详细考虑接口请求,涉...

2019-05-21 22:04:07 400

原创 java日志框架

前言日志在软件系统的各个方面都有非常重要地位,

2019-04-27 17:40:34 208

原创 JDBC数据库驱动及原理

前言JDBC即Java DataBase Connectivity,java数据库连接;JDBC 提供的API可以让JAVA通过API方式访问关系型数据库,执行SQL语句,获取数据;常见关系型数据库如Oracle、MySQL、SQLServer等;对于非关系型数据库如Redis、mongonDB等就显得无力;关系型数据库最典型的数据结构是表,易于维护,灵活使用(使用表结构,支持SQL语言的简单及...

2019-04-20 13:18:20 13201 1

原创 前端页面HTML表格生成EXCEL下载

前言主要使用jquery插件工具table2excel来实现将HTML页面上的table表格生成Excel下载到客户端。(兼容IE和chrome浏览器)由于功能比较简单,会使用jquery的相关工具就可以了;实现这个功能的方法还有很多,例如还可以使用jquery工具库的dataTable或者tableExport插件等等;本次只要说一下table2excel插件简单实现这个功能。本次使用一种...

2019-03-02 15:01:37 11120 2

原创 Oracle 常用SQL语句优化方式

一、Oracle 优化器的两种方式1.RBO(Rule-Based Optimization)基于原则的优化器优化器在分析SQL语句时,所遵循的是Oracle内部预定的一些规则,对数据是不敏感的。它只借助少量的信息来 决定一个sql语句的执行计划,包括:1)sql语句本身2)sql中涉及到的table、view、index等的基本信息3)本地数据库中数据字典中的信息(远程数据库数据字典...

2018-11-20 10:09:43 3089

原创 Redis环境的搭建--windows

**前言**Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库(key-value缓冲产品)。特点:1.Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。2.Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。3.Redis支持数据的备份,即...

2018-11-02 20:58:01 1903

原创 ORACLE分页查询SQL语句(最有效的分页)

**一、效率高的写法**1.无ORDER BY排序的写法。(效率最高)(经过测试,此方法成本最低,只嵌套一层,速度最快!即使查询的数据量再大,也几乎不受影响,速度依然!)SELECT * FROM (SELECT ROWNUM AS rowno, t.* FROM emp t WHERE hire_date BETWEEN TO_DATE ...

2018-11-01 16:18:24 312497 33

原创 HTTP传输协议详解(简单易懂)

前言HTTP: HyperText Transfer Protocol超文本传输协议,是互联网上应用最为广泛的一种网络协议,所有的WWW文件都必须遵守这个标准;属于应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。一、主要特点:1.支持客户/服务器模式。2.简单快速:客户向服务器请求服务时,只需传送请...

2018-09-29 15:53:42 19704

原创 java 解析json 常用方法 --前端与后端的交互(后端)

本篇为后端解析json篇,需要了解前端js解析json的可以返回翻阅。添加链接描述JSON是使用比较广泛的一种数据传输格式,是我们程序猿开发的必备技能之一,当然XML也是比较熟悉的数据交换方式,但XML使用起来比较复杂,不方便,而且标记比数据多,感觉比较浪费流量,JSON就相对比较轻快、方便,没有任何的标记,特别是在JS中使用JSON更能显示出其优点。用的时候比较方便,解析也不复杂,现在详说后端...

2018-09-22 09:51:36 10730

原创 Oracle preparestatement中addBatch方法 抛异常的问题:不支持此特性

对于preparestatement.addBatch()方法使用报异常的地方原因是不能使用prepareStatement接口去实现addBatch()多个sql语句,addBatch()方法不接受参数的输入(即使传入的参数也无法执行,没有重写这个方法因此不支持),你可以查看一下官方文档API,大概意思是说:addBatch()只是使用适当的setXXX()方法将设置的绑定参数添加到批处理中,(...

2018-09-18 15:46:56 3705

原创 JSON 与 XML 的区别、优劣势对比

1.主要区别:(1)JSON多用于简单的结构化数据方面,通常是以数据为中心,而不是以文档为中心,因此JSON不是文本标记语言,它是为数据设计而生。(2)XML可以用于结构化和半结构化数据两个方面,是一种文本标记语言,可以以数据及文档为中心,兼职两者。2.优劣势:(1)JSON数据类型很少,并且需要预定义,够简单,适合新手入门; JSON具有简单的结构定义和文档组合结构,...

2018-08-04 11:50:12 10796

原创 js 解析json 常用方法 --前端与后端的交互(前端)

(1)前端js解析前端json数据:后端java解析json常用方法请参考:java解析json--后端one:javascript定义json对象变量:var jsonobject={};//可以不使用声明,推荐声明一下,严格一些,最好使用严格模式赋值json对象的key-value值:jsonobject[key]=value;//不严格的话就直接,var json...

2018-08-01 12:08:41 24802 2

原创 对软件建模的全面认识

软件建模就是对一个系统的抽象化(并不是一个完全的表示),属于解决方案域,在需求和实现之间架起一座桥梁,通过模型指导一个软件系统的具体实现。简单来说,软件建模就是对软件系统设计思想的一个体现。

2022-09-17 14:29:04 2998 1

原创 软件代码坏味道之滥用switch

switch是一种开关,是一种选择语句,用法简单,就是多分支选择语句,就是与多个if语句一样,功能上,switch与if两者可以完全可以相互取代,如果嵌套的if比较少时(三个以内),使用if比较简单,如果选择的分支比较多时,使用if会导致层数比较深,程序冗长,可读性下降;如果分支选择比较多,并且选择的类型码也比较固定的时候,可以使用switch来处理。...

2022-08-27 00:26:39 629 1

原创 对软件代码坏味道的认识

指代码表面的腐化现象,对需求易变性的估计不足、功能重复出现、片段式植入等代码腐化现象。(1)滥用面向对象(2)膨胀剂(3)可有可无(4)难以修改和耦合。

2022-08-22 23:44:12 1310

原创 对基本类型-整型数据结构的认识

int和int是java的基本数据类型,用于直接存储数据值,存储放在栈空间中。

2022-08-22 00:04:22 294

原创 对软件重构的认识与重构原则

一、什么是重构重构就是在不改变软件的可观察行为的前提下,对代码进行修改,改进程序的内部结构。有两层含义:二、为什么要重构技术不断发展,程序会慢慢老化,老程序会存在以下问题:当一个软件产品出现了以上问题的,就需要重构该软件产品了。三、重构的好处四、重构的分类重构有多个层次,每一层的重构意义不同:具体的重构类别:...

2022-07-01 00:58:49 2200

原创 [算法]【刷题笔记】链表专题

必备知识链表是一种兼具递归和迭代性质的数据结构一、合并两个有序链表(虚拟头结点)/***Definitionforsingly-linkedlist.*publicclassListNode{*intval;*ListNodenext;*ListNode(){}*ListNode(intval){this.val=val;}*ListNode(intval,Li...

2022-03-28 22:16:35 960

转载 设计模式之代理模式(golang)

代理模式代理模式(Proxy Pattern)指为其他对象提供一种代理,以控制对这个对象的访问,属于结构型设计模式。使用代理模式主要有两个目的:一是保护目标对象,二是增强目标对象。_场景某订单管理系统, 允许用户对订单进行增删改查 后增加日志需求, 要求对订单的Save和Delete操作, 记录操作日志 后再增加权限需求, 要求对订单的Save操作, 检查order.save权限; Delete操作, 检查order.delete权限设计IUser: 定义用户信息及权限信息 Ord

2022-01-09 23:00:11 362

原创 设计模式之静态代理

一、什么是静态代理静态代理是代理模式中的一种,静态跟动态相对,静态是指代理类在编译阶段生成,在程序运行之前就已经存在了,动态代理则是在运行期生成代理类。静态代理都是我们在Java代码中定义的。目前静态代理主要有AspectJ静态代理和JDK静态代理(动态代理有JDK动态代理和Cglib动态代理)关系图:二、AspectJ静态代理(相当是幕后代理)AspectJ是一个Java实现的面向切面的框架,它拓展了Java语言。AspectJ有自定义的语法,所以它有一个专门的编译器用来生成遵守Jav

2022-01-09 22:37:56 606

Effective Java 中文第三版.7z

你是否正在寻找一本能够更加深入地了解Java编程语言的书,以便编写出更清晰、更正确.更健壮且更易于重用的代码。不用找了!本书为我们带来了共78条程序员必备的经验法则,针对你每天都会遇到的编程问题提出了最有效、最实用的解决方案。 这本经典Jolt获奖作品实属众望所归。作者对新版进行了彻底的更新,涵盖了自第1版之后所引入的Java SE5和Java SE 6的特性,同时开发了新的设计模式和语言习惯用法,介绍了如何充分利用从泛型到枚举、从注解到自动装箱的各种特性。 全新的泛型、枚举、注解、自动装箱、for-each循环、可变参数、并发机制,等等。 经典主题的全新技术和最佳实践,包括对象、类、类库.方法和序列化。 如何避免Java编程语言中常被误解的细微之处:陷阱和缺陷。 重点关注Java语言本身和最基本的类库及其扩展:java.lang、java.util、java.util.concurrent和java.i0。

2019-06-08

spring boot插件之swagger2详细使用教程

Swagger是一个简单但功能强大的API表达工具。它具有地球上最大的API工具生态 系统,数以千计的开发人员,使用几乎所有的现代编程语言,都在支持和使用 Swagger。使用Swagger生成API,我们可以得到交互式文档,自动生成代码的 SDK以及API的发现特性等

2019-04-08

spring boot超强实用教程

Spring boot 实战教程,从跨门到进门,从进门到修炼,从修炼到飞升

2019-03-21

redis工具包

redis缓存数据库在java项目中需要的jar包,下载解压导入项目中即可使用

2018-12-26

json工具包

常用的json包工具,版本可以自行更新;下载解压导入项目中即可使用

2018-12-26

redis(客户端和服务端3.2压缩版本,解压即可使用)

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库(key-value缓冲产品)

2018-11-02

Spark使用指南(权威版)

权威版 Spark使用指南,Apache Spark 是专为大规模数据处理而设计的快速通用的计算引擎;Spark 是一种与 Hadoop 相似的开源集群计算环境,但是两者之间还存在一些不同之处,这些有用的不同之处使 Spark 在某些工作负载方面表现得更加优越,换句话说,Spark 启用了内存分布数据集,除了能够提供交互式查询外,它还可以优化迭代工作负载。

2018-10-10

空空如也

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

TA关注的人

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