自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我是一个有理想的程序员

不定期添加自己学习,工作中所遇到的问题及解决方案

  • 博客(151)
  • 资源 (9)
  • 收藏
  • 关注

原创 Mybatis基本原理及框架设计流程

前言:本文主要阐述Mybatis中的核心原理,省略了其他跟核心原理相对来说没那么重要的部分。第一步:首先框架肯定需要去获取用户配置的文件(SqlMapConfig.xml)并解析,这里先写两个必要的配置信息:1、连接数据库所需要的参数 2、用户写的mapper文件(存放具体的sql语句)采用面向对象的思想,mybatis会把得到的这些配置信息封装成两个对象MappedStatement以及Configuration,介绍下这两个类的作用;MappedStatement:存放mapp...

2020-09-21 17:50:59 262

转载 Git提交规范

type为必填项,用于指定commit的类型,约定了feat、fix两个主要type,以及docs、style、build、refactor、revert五个特殊type,其余type暂不使用。主要typefeat: 增加新功能fix: 修复bug特殊typedocs: 只改动了文档相关的内容style: 不影响代码含义的改动,例如去掉空格、改变缩进、增删分号build: 构造工具的或者外部依赖的改动,例如webpack,npmrefactor: 代码重

2020-08-27 10:10:11 474

原创 记一次用nginx做负载均衡、灾备处理

直接上代码吧,关键的地方都标有注释,有点基础的人应该都能看懂,配置如下:http { ...//只上关键代码 upstream localhost { server 192.168.1.215:8080 weight=1; #这里就保障的负载均衡 server 192.168.1.215:8081 weight=1; } server { ...//只上关键代码 location / {

2020-08-15 15:29:01 541

原创 Windows服务器下常用命令合集

Nginx相关1、 taskkill /f /t /im nginx.exe 强制关闭nginx服务

2020-07-28 14:52:33 519

原创 关于MYSQL树形结构的查询感悟

前言:最近搞树形结构比较多,网上总体分为子关联查询,子查询等等方法,个人感觉都不是很好用,现总结出自己的经验。个人体会,仅供参考!个人思路:例如一个层高为2的树形结构,其实不管是自关联查询,还是子查询,都得有个回表的操作,个人感觉查询效率和用两条SQL效率也差不多。基于这个认知,我决定每一层的数都用一条SQL,然后查询结果用JAVA循环来构造树形结构。还是层高为2的树形结构为例子,构造过程如下:1、select * from xx where parent_id=0; //查询出父节点..

2020-07-14 11:34:06 270

原创 JAVA并发编程(一):可见性、原子性和有序性

JAVA并发编程:可见性、原子性和有序性CPU、内存、IO直接的关系线程安全场景一:缓存导致的可见性问题线程安全场景二:线程切换带来的原子性问题线程安全场景三:编译优化带来的有序性问题附送:在 32 位的机器上对 long 型变量进行加减操作存在并发隐患的原因CPU、内存、IO直接的关系CPU:判断以及逻辑处理。内存:处理数据的地方,数据的来源是从硬盘加载进内存。内存本身有一定的存储空间,对内存中的数据进行处理的速度比从硬盘取数据再处理的速度快很多。硬盘:数据存储。我们的 CPU、内存、I/O设备

2020-07-03 10:32:51 394

转载 Google Guava,善用已经造好的轮子

官方地址:https://github.com/google/guava和 Apache Commons 有点儿类似,它也是包含了一系列的比如字符串、集合、反射、数学计算等的操作封装,还可以用作 JVM 缓存。举几个例子说明:1、new各种对象List<String> list = Lists.newArrayList();Set<String> set = Sets.newHashSet();Map<String,Object> map = .

2020-07-01 10:17:18 224

原创 java8,Lambda 表达式以及 函数式接口的使用

前言:最近看技术博文,关于if..else过多的情况,在以前的解决方案一般是用策略模式,但是这篇博文给了个新的思路,利用Java 8 Lambda 表达式加上Map与函数式接口来实现优美的解决思路。那么问题来了,什么是Lambda 表达式?什么是函数式接口?一、什么是Lambda 表达式?先来看几个例子:// 1. 不需要参数,返回值为 5 () -> 5 // 2. 接收一个参数(数字类型),返回其2倍的值 x -> 2 * x // 3. 接受2.

2020-06-24 15:30:55 288

原创 从零开始,Jenkins实现自动化部署

前言:每次打包发布代码真的太累了,搞个一次两次还好,对于持续集成的项目就太难了,下面记录一下搭建配置Jenkins的步骤。1、下载Jenkins,启动Jenkinsjenkins官网(https://jenkins.io/)下载一个,推荐war形式,简单易部署。官网可能下载速度较慢,分多的兄弟可以在这里去下载我上传的:...

2020-04-28 11:00:40 495

原创 Mysql索引 关于自增ID,你真的都了解透彻了吗?

前言:以下所有所述均针对Mysql InnerDB引擎一、建表采用自增ID为什么建表的时候建议创建自增ID,直接用唯一业务的标识ID不香吗?是的,不香。InnerDB使用的B+树模型,B+树的结构决定了 所有左节点< 节点< 右节点,这样带来的好处我就不详细说了,坏处就是当新增主键破坏了现有树形结构的时候,就需要将大于这个值得主键向后挪用。当需要挪动的数据页已经处于...

2020-03-26 17:19:58 2771

原创 Elasticsearch原理以及基本概念

前言:最近项目用到了搜索引擎Elasticsearch,用完了之后总得去了解下人家是怎么回事吧,记一下核心要点。1、Elasticsearch基本概念首先ES里面有 “索引”、“类型”、”文档” 三个专有名词。“索引”:指的存数据的地方,相当于我们熟悉的数据库。“类型”:指数据结构,相当于数据库里面的表。“文档”:指具体数据,相当于表里面的单行数据。2、搜...

2020-03-26 16:26:13 684

原创 关于数据库冗余字段设计的利与弊

前言:该文章仅为作者个人的感悟,仅供参考,欢迎大家做技术讨论,谢谢。因为近期完全是我负责某项目开发,所以关于数据库冗余字段的设计,有了一些新的见解。其实在数据库设计方面,对于冗余字段的设计,网上也是褒贬不一的。通过资料的查询,大致有以下两个方向:1、支持冗余字段的设计引入冗余字段的设计,能够减少表关联,使用SQL查询的时候执行效率更快,特别是在数据量比较大的情况下。2、否定...

2020-03-16 14:37:18 4277 3

转载 java.lang.ArithmeticException: Rounding necessary

以下不会出现问题: System.out.println(new BigDecimal("1225.12").setScale(2)); System.out.println(new BigDecimal("1225.1").setScale(2)); System.out.println(new BigDecimal("1225").setScale(2));如下代码就...

2020-03-11 17:08:26 178

原创 JAVA书籍阅读记录,个人技术书籍推荐

开始时间 截止日期 阅读书籍 截止页数 备注 感想与建议 2017-11 2018-02 Think in java 201 第一次看的时候,只觉得很枯燥,大概工作半年后再次阅读,确实是能学到很多基础东西。 2018-7-12 2018-7-26 深入JAVA虚拟机 1/5 第一次看的时候,两...

2020-01-08 17:20:29 960

原创 2019个人年终总结

2019年对于我而言,整体来说对自己在还是比较满意的,年初给自己制定的目标基本上都达到了的,我从以下几个方面来讲讲自己的情况吧。工作方面对于工作方面来说,今年主要是主导了“yingxiaokefu系统”(思前虑后还是决定打个码吧)的开发。尽管在工期较为紧张的情况下如期完工,但对于自己还是有一些不满意的。首先是前期需求分析阶段和UI设计耗时太久,以至于后面开发阶段的时间大大缩减,鉴于...

2020-01-08 17:09:25 2731 9

转载 CENTOS7 配置静态IP后无法ping通外部网络的问题

本文转载自:https://blog.csdn.net/boiled_water123/article/details/87071486我今天想谈论的并不是如何配置静态IP,这样的话题已经有好多高手再谈。我想谈的是为什么,我按照他们的教程无论如何也要发生各种问题,没办法连接外网的问题。先给大家看我的最终版配置方案:我只修改了一个文件,修改的部分已经红色标出。注:这个配置足够解决所...

2019-12-24 14:59:00 594

转载 新装Linux CenterOS7——使用yum命令报错Could not retrieve mirrorlist

转载自:https://blog.csdn.net/why15732625998/article/details/80177978错误CentOS7 yum时出现“Could not retrieve mirrorlist验证yum是否正常安装yum --help1结果显示yum已经正常安装了!!那就可能是我的网卡没能跟随操作系统启动!!!验证配置resolv.conf...

2019-12-24 11:53:29 504 1

原创 java枚举类在switch中的总结(Constant expression required以及An enum switch case label must be the unqualif报错..)

前言:今天在switch(switch尽量少用,switch都可以用策略模式来替代,我只是想偷个懒。。)中用枚举类的时候,连报两个错,而且是编译都没通过的那种,哎,记录一下解决过程,由于深知个人比较啰嗦,所以一般都会写上问题原因,思考过程,以及解决方案,如果着急的兄弟们可以直接看解决方案。第一个编译错误:Constant expression required,代码如下:switc...

2019-12-04 15:49:00 7348

原创 Mybatis中 变量为表明报“ORA-00903: 表名无效”以及“无效的关系运算符”

具体问题以及解决过程如下:<select id="get" resultType="xxx.domain.ReadingDO"> SELECT * FROM #{tableName} WHERE TO_CHAR(采集时间,'yyyy-mm-dd hh24:mi:ss') = #{date};</select>这个sql很简单,数据库为oracle。...

2019-11-25 19:17:44 1662

转载 Mysql优化——唯一索引和普通索引的选择

问题:当一个字段同时满足唯一索引和普通索引的情况下,我们要如何抉择呢?要弄清楚这个问题,我们首先要了解唯一索引和普通索引的实现原理,我们通过查询操作和更新操作分别来对比他们之间的区别附带一提,普通索引和唯一索引的区别:首先,他们都是索引,然后从字面上来看,普通,就是可重复的索引,唯一索引,就是不可重复的索引。因此他们俩的区别就是一个key可以重复,一个不可重复。查询操作普通索引...

2019-07-26 10:05:21 4388 2

原创 session和cookie的区别

前传:用mvvm模式的开发模式做久了,session和cookie都差不多要淡忘了,今天在某个地方突然看到了session和cookie的区别,想了半天居然想不起来了,网上查了半天,发现不是特别好理解,但还是凭着自己的积累结合着搞明白了,还是自己记录一下。session和cookie的区别怎么说呢,网上很多都说:“cookie是存在客户端,session是存在服务器端”,个人觉得这句...

2019-07-16 14:09:42 131

转载 虚拟机LINUX系统忘记密码的情况下,修改ROOT或其他用户密码

别人的镜像,拿来密码不知道就很尴尬了。虚拟机LINUX系统忘记密码的情况下,修改ROOT或其他用户密码使用场景linux管理员忘记root密码,需要进行找回操作。注意事项:本文基于centos7环境进行操作,由于centos的版本是有差异的,继续之前请确定好版本。步骤一、重启系统,在开机过程中,快速按下键盘上的方向键↑和↓。目的是告知引导程序,我们需要在引导页面选择不同的操...

2019-07-15 09:36:32 2165

转载 Centos下docker的安装

备注:参照阿里云的安装过程,只提取了Centos的,如果需要U班涂的可以直接去阿里云上找;# step 1: 安装必要的一些系统工具sudo yum install -y yum-utils device-mapper-persistent-data lvm2# Step 2: 添加软件源信息sudo yum-config-manager --add-repo http://mirro...

2019-07-11 10:29:38 118

原创 k8s问题大全

1.kubectl查看日志报 Error from server:xxxxx:getsockopt: no route to host这是由于防火墙未关的问题# systemctl stop firewalld# systemctl disable firewalld2.docker pull缓慢导致K8s启动node的时候Pull Faild##使用阿里云镜像加速器[r...

2019-06-24 14:49:43 536

原创 VirtualBox Centos7虚拟机 静态IP

起因:因为最近公司要求学k8s,本来虚拟机网络用的nat,由于IP地址段为10.0.1.4,应该是地址段太低的原因,导致ssh连不上,网上查要去端口转发,连上Xshell后,兴高采烈的弄到一半发现虚拟机直接并不能访问,估计还是因为地址段的问题,MD,没办法只能重新去研究了,记录下结果。第一步:首先网卡必须要两个(第一个为nat,第二个的连接为“仅主机网络”):第二步:启动虚拟机,...

2019-06-21 16:42:54 281

原创 Docker运行容器+端口映射和磁盘映射

docker run -it -d -p 80:8080 -v /root/www/www:/usr/local/tomcat/webapps/ROOT tomcat参数解读:-d:后台运行;-p:端口映射 上述80为宿机端口,8080为容器内部端口;-v:文件挂载 指定宿机目录映射到容器内部的目录(上述就是把宿机/root/www/www的地址映射到容器内部的/usr/...

2019-06-17 14:57:05 6195

原创 Docker搭建registry仓库

#先把私有仓库down下来docker pull registry #启动仓库docker run -d -p 5000:5000 registry #默认情况下,会将仓库存放于容器内的/tmp/registry目录下,这样如果容器被删除,则存放于容器中的镜像也会丢失,所以我们一般情况下会指定本地一个目录挂载到容器内的/tmp/registry下,如下:docker r...

2019-06-17 14:36:35 199

原创 Docker基础

总结一下Docker的基础常用知识。常用非基本命令:docker run -d -p 外部端口:容器内部端口 xxx #启动一个xxx镜像,-d后台运行,-p端口映射;docker ps #查看所有运行的容器docker ps -a #查看所有容器,包括已停止的docker exec -it controtrianId /bin/bash #进入具体容器的内部空间d...

2019-06-17 11:57:22 187

原创 Oracle数据库

自从大学之后,就几乎没有怎么用过oracle了,没办法,连着两家公司都是用oracle,只能强迫自己看看了。1.cmd命令操作oracle sqlplus / as sysdba

2019-06-12 14:57:57 106

转载 Windows下不乱码,Linux下乱码的问题——Linux 安装Windows字体库

由于需要宋体,所以需要自行安装执行命令发现输入命令查看字体列表是提示命令无效:如上图可以看出,不仅没有中文字体,连字体库都没有,那么接下来就记录一下在Linux CentOS 7中如何安装字体库以及中文字体。安装字体库在CentOS 4.x开始用fontconfig来安装字体库,所以输入以下命令即可:yum -y install fontconfig当看到下图的提示信息...

2019-05-27 15:12:49 1511

原创 本地安装jar进maven仓库

mvn install:install-file -Dfile=aspose-cells-18.9.jar -DgroupId=aspose -DartifactId=aspose-cells -Dversion=18.9 -Dpackaging=jar注意换行符,命令中不能有回车。-Dfile=aspose-cells-18.9.jar 目标jar包-DgroupId ...

2019-04-23 15:21:04 345

原创 Linux下,java读取中文文件名乱码

vi /etc/profile加入以下两行配置:export LC_ALL="zh_CN.GBK"export LANG="zh_CN.GBK" (export LANG=zh_CN.GB18030)保存成功后,输入以下命令重新加载下配置:source/etc/profile最后重启下java项目即可。...

2019-04-20 20:59:17 3043

原创 LInux启动jar包且退出Xshell后依旧运行

nohup java -jar xxx.jar &这样启动的话,日志是存到jar包目录下的nohup.out文件,所以我们查看日志的话可以用命令:tail -f nohup.out

2019-04-17 09:29:43 1594

转载 IDEA git修改远程仓库地址

原文转载自:https://blog.csdn.net/u011136197/article/details/79429000方法有三种:方法1.修改命令git remote set-url origin <url>方法2.先删后加git remote rm origingit remote add origin [url]方法3.直接修改config文件...

2019-04-15 09:10:48 5053

原创 Springboot配置多个视图解析器,项目同时有jsp和html

废话有点多。。大家谅解下啊,如果着急的话可以直接下拉到底部,上面是我的解决历程。。这个问题一般是遇不到的,只怪我们项目是在奇葩。事情是这样的,我们先开发的项目要集成进去一个老项目,新项目用的是html,但是老项目用的是Jsp,而且老项目功能完善,只是前端有点问题。问题有了,那总得解决是吧。现在有很多种办法:1、把Jsp改成Html;2、用request.getDispacter()去跳转;...

2019-03-28 14:12:15 13064 12

原创 《重构,改善既有代码》读书笔记

一、为何要重构1、重构让代码更易阅读和理解。2、重构改进软件设计我个人认为,上述两点完全可以是重构的动力。二、什么情况需要重构1.重复代码2.过长函数3.过大的类4.过长参数列5.违反单一职责原则(即有多个理由去修改一个类)6.散弹式修改(如果每遇到某种变化,你都必须在许多不同的类做出许多小修改,就应该考虑提到一个类中)7.数据泥团(如果在很多地方看到相...

2019-03-26 15:32:22 214

原创 使用Jacoco查看代码覆盖率

一、使用Idea自带的Jacoco1.在Configuartions选择测试覆盖率的测试工具2.运行测试覆盖率的启动方式(也就是debug后面的那一个)缺点:idea自带的代码覆盖率只能大致看出来每个方法的覆盖情况,具体的哪一行没覆盖是看不到的。二、使用完整版的Javacocomaven配置:<plugin> <g...

2019-03-22 11:15:18 6699 1

原创 Junit框架

前言:近期在学习TDD的开发模式,因此对于测试框架就必须要近一步的了解了。我认为绝大多数JAVA程序员都用过这个框架,大家用的最多也应该就只是@Test这个注解,可能像我一样,至今都还不知道还提供有其他的注解。一、注解测试通常包含三个阶段:准备,测试和清理。1.准备准备工作可在类层面执行,也可在方法面执行。@BeforeClass:这个方法仅在所有测试都执行完毕后执行一次...

2019-03-21 13:49:57 1553

原创 Maven实战笔记

最近在搭建一个多模块的项目,发现以前的Maven知识实在不够了,所以还是得去补充一下这方面的知识啊。通常大家都知道的东西我就不说了,挑点重要的记一下1.依赖的配置&lt;groupId&gt;&lt;artifactId&gt;&lt;version&gt;:这三个标签是基本的坐标信息,用来定位依赖&lt;type&gt;:依赖的类型,对应项目坐标定义的packaging。大部...

2019-03-01 11:39:21 126

原创 Jrebel maven多模块项目的热部署

首先需要安一个Jrebel 的插件,Idea的同志们可要直接在插件市场里面下。安装完之后如图,然后可以进入第二步了。Jrabel的激活过程服务器地址:http://jrebel.autoseasy.cn/jrebel/b136b653-31f0-44ca-bbef-2eb5e58daf2b服务器地址不是粘贴到浏览器的,是粘贴到Jrebel的License Server。 ...

2019-01-30 15:14:05 2089

jenkins2.222.1.war

jenkins.war 2.222.1版本,jenkins搭建配置博客https://blog.csdn.net/qq_29611427/article/details/105808700

2020-04-28

WebErrorController

springboot,容器级别全局错误处理器,demo案例。Spring Boot-错误处理及自定义全局异常处理机制

2018-07-04

html移动端日历插件

html移动端日历插件,一款比较好看的日历插件,在网上找了蛮久的

2018-03-15

cxf-apache

CXF内置JettyWeb服务器。 使用CXF开发Web Server端组件都需要“接口”和“实现类”两部分。 支持多种数据格式:XML和JSON(Restful)。 并可以与Spring进行快速无缝的整合 灵 活 的 部 署 : ant(build.xml) maven(pom.xml) 可 以 运 行 有Tomcat,Jboss,Jetty(内 置web 服 务器),IBMWebsphere,BeaWebLogic上面。

2018-01-15

js加密解密插件

提供各种js加密解密算法,希望可以帮助大家。使用说明:http://blog.csdn.net/qq_29611427/article/details/78978471

2018-01-05

cxf和xfire的jar包冲突解决

我是拆开XmlSchema的jar包重新打包,然后修改xfire-core-*的引用的地址。 xfire-core-*里面需要修改引用地址的地方其实也就下面几个类,改完重新编译即可。

2017-12-15

spring集成cxf客户端和服务器端demo(含自定义拦截器)

spring4+cxf3,因为自己项目要用到接口开发,所以综合现有网上所有教程,终于成功写出能自动注入的demo,这个是含拦截器

2017-10-24

spring集成cxf客户端和服务器端demo

spring4+cxf3,因为自己项目要用到接口开发,所以综合现有网上所有教程,终于成功写出能自动注入的demo

2017-10-24

java源码查看工具

使用C++开发,主要具有以下功能: 一、支持众多Java编译器的反编译; 二、支持对整个Jar文件进行反编译,并本源代码可直接点击进行相关代码的跳转;

2017-09-27

空空如也

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

TA关注的人

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