- 博客(323)
- 资源 (3)
- 收藏
- 关注
转载 Spring-cloud CommandLineRunner 接口
阅读目录前言 如何使用CommandLineRunner接口 用@Order注解去设置多个CommandLineRunner实现类的执行顺序 为什么要使用CommandLineRunner接口 原文文链前言Spring boot的CommandLineRunner接口主要用于实现在应用初始化后,去执行一段代码块逻辑,这段初始化代码在整个应用生命周期内只会执行一次。如何...
2019-05-21 11:01:04 324
原创 Redis5.0.4集群搭建
简介 基于docker redis:5.0.4介绍redis集群搭建过程中踩过的坑,按照传统的方式6个节点(6001~6006),3主3从。特别注意:redis镜像内部用户id为999第一步:创建配置文件 自己找一个目录,创建文件夹 redis-cluster 在redis-cluster文件夹中创建6个配置文件,最好放在单独的文件夹中...
2019-05-06 00:55:35 557
原创 Intellj下生成javadoc
工具类Tools-->Generate javaDoc如果存在编码问题可以用一下命令解决,根据实际情况修改 Other command line arguments 栏里输入:-encoding utf-8 -charset utf-8
2019-01-12 16:42:53 243 2
原创 基于docker(或tomcat镜像)安装jenkins
docker安装可有多种方式第一种:基于docker安装前准备 1:jenkins镜像内部默认用户ID为1000 2:jenkins镜像内部默认主目录为/var/jenkins_home 3:个人自定义暂定为/data/besttop/jenkins(可根据自己的目录做修改)#特别注意:自定义目录的文件夹jenkins的所属用户ID需要设置为1000,否则无权...
2019-01-10 13:06:28 1199 2
原创 SpringCloud-Config
前提:已经配置并启动了Eureka注册中心,假设地址为http://localhost:8205/eureka/(根据实际情况修改地址)环境:码云(Git),maven,springbootserver(配置中心服务端)spring: application: name: base-config #配置中心 cloud: config: ser...
2019-01-08 19:53:32 263 1
原创 springboot打包-依赖包到单独文件夹并微缩原有jar包体积
简介在用springboot开发项目是,打包好的jar包是可以直接运行的,但是通常情况下,这个jar都会很大,因为他默认打包了所有依赖的jar包。此时就可以通过maven-dependency-plugin插件将依赖包复制到独立的文件夹,在启动jar包的时候引用即可。应用方式: java -Dloader.path=全路径 -jar xxx.jar详解 ...
2019-01-04 15:24:33 3141 3
原创 SpringBoot实现热部署
简述 平常java开发,修改java类之后需要重新启动服务,实际上有插件可以实现类修改后自动重新加载,下边详细介绍。第一步:添加pom依赖 <!-- 热部署,注意与插件的fork配置结合 --> <dependency> <groupId>org.springframework.bo...
2018-10-22 23:21:36 242 2
原创 maven打包的jar指定启动类
简述 项目开发中,很多情况下我们会打成jar启动,此时如果jar中出现多个含有main的类,启动一般会报错,此时可以通过在pom中指定启动类来解决这个问题。第一种: 如果你的POM是继承spring-boot-starter-parent的话,只需要在pom的root如下指定就行 <properties> <!-- ...
2018-10-20 17:14:53 9193 1
原创 项目打jar包发布maven私服
简介项目开发中会有一种情况,需要将当前项目打包,然后放到公司的私服,之后再引入到其他项目中,之前见过很多人把打成的jar包手动相互发送,下边介绍一种简便的方式。前提要有maven私服,没有的可以自己搭建,此处假设你已经有一个maven私服。特别提醒:仓库中供上传的有releases和snapshots两种,release表示稳定版,一般用于正式环境;snapshot表示开发版,不稳定,...
2018-10-18 23:48:37 263
原创 maven项目远程仓库配置
场景 用maven管理项目时,需要通过pom引入外部jar包,所谓的外部我们统称远程仓库(包括maven私服),部分项目需要搭建公司内部的maven私服,此时引入jar包的方式会有所变化,配置也有不同。前提 已经搭建好了maven私服(版本2.11),并以maven私服的默认仓库为例。详解 maven私服的仓库类型 hoste...
2018-10-18 14:32:00 6871
原创 maven的settings.xml配置详解
简介 用maven管理项目时,会通过pom引入需要的jar包,此时开发工具(编译工具)会去加载maven的配置文件settings.xml,而该配置文件可以放在多个地方,我们该如何取舍和配置自己的自定义配置?配置文件加载顺序 pom.xml > /home_dir/.m2/settings.xml > /maven_dir/conf/sett...
2018-10-18 13:31:20 3758
原创 Centos7环境搭建maven私服
第一步:下载nexus(私服服务端) 地址:https://pan.baidu.com/s/1Rf0XZk42Gwx8wi85HZKspg 2.11版本(配合jdk1.8),3.X版本不太会用,2.X的其他版本与jdk1.8貌似不兼容,一直报错。第二步:安装JDK 具体看其他资料第三步:解压 tar -zxvf nexus-2.11.4-0...
2018-10-17 23:34:53 753
原创 RabbitMQ基本命令操作
简介基本命令# 添加开机启动RabbitMQ服务$ sudo chkconfig rabbitmq-server on # 启动服务$ sudo /sbin/service rabbitmq-server start # 查看服务状态$ sudo /sbin/service rabbitmq-server status # 停止服务$ sudo /sbin/ser...
2018-09-26 11:49:52 1442
原创 项目自动化部署--Jenkins安装
<SSH免密登陆点我>简介 以往部署项目,全量部署后都是手动增量替换class,然后重启服务器等方式实现。后来听说有自动化部署工具,恰好当前公司有这个需求,趁机学习了下(Jenkins),感觉很不错,做笔记以备后期使用。Jenkins简析 Jenkins是一个开源软件项目,是基于Java开发的一种持续集成工具,用于监控持续重复的工作,旨在提供...
2018-09-18 15:10:05 365
原创 Spring 获取request和response
HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();HttpServletResponse response = ((ServletRequestAttributes)RequestContextHolder.ge...
2018-09-17 10:36:12 309
原创 Spring 过滤器 拦截器 AOP区别
简介这几天在回顾Spring的AOP时,对过滤器,拦截器,AOP的关系有点好奇,故记录做以备份。在实现一些公共逻辑的时候,很多功能通过过滤器,拦截器,AOP都能实现,但是不同的方式有不同的效率。具体有什么区别,看下文描述。前后端交互基本逻辑过滤器过滤器拦截的是URLSpring中自定义过滤器(Filter)一般只有一个方法,返回值是void,当请求到达web容器时,会探测当...
2018-09-12 14:15:11 33032 12
原创 Spring切点定义集锦
简介学习spring比较久了,但切点表达式一直记不住,今天特意整理,供参考!Spring 切点定义方式 类别 函数 入参 说明 方法切点函数 execution() 方法 匹配模式串 表示满足某一匹配模式的所有目标类方法连...
2018-09-12 11:13:35 2125
原创 Maven的settings.xml文件
公用settings.xml文件<?xml version="1.0" encoding="UTF-8"?><settings> <!--需要改成自己的maven的本地仓库地址--> <!-- <localRepository>/home/yizhen/.m2/repository</localReposi
2018-09-11 09:46:57 196
原创 分布式事务--CAP理论
简介 关于CAP理论看了很多博客,但是概念仍然很模糊,很幸运看到了几篇比较有感触的文章,做以总结和梳理。相关文章的原作者已经很难找到,因此此处就不一一列举,感谢他们。 CAP针对的是分布式系统,根据分布式系统的各种特性和场景总结出了的三个指标 一、分布式系统的三个指标1998年,加州大学的计算机科学家 Eric Brewer 提出,分布式系统有三...
2018-08-23 21:05:09 2589
原创 IntellJ乱码
简介最近使用intellj,总是出现很多奇怪的乱码问题,网上找了很多解决方案,但是都没有解决。但是偶然看见一个简短的博客,里边的方案竟然解决了,于是记录下来。乱码情景1:用main方法测试一个方法,传入中文,执行中发现中文乱码。比如debug模式下,在被执行方法中可以看到中文乱码。2:解决方案1:配置intellj,File-->settings-->Bui...
2018-08-02 14:40:23 638
原创 Windows从虚拟机Linux获取文件
简介在虚拟机中安装Linux后,经常获取不到里边的文件,今天搭建GIT服务器时偶然发现Apache2这个服务可以实现获取文件的需求。Linux下安装Apache2步骤1:安装sudo apt-get install apache22:进入目录cd /var/www/html/默认apache2使用/var/www/html作为根目录,可配置(配置文件去搜)。假设ht...
2018-07-28 23:09:56 1286
原创 Ubuntu安装Git服务器
1:安装SSHapt-get install openssh-serverservice ssh start备注: 1.git客户端与服务器之间是安全传输,需要借助SSH 2.ssh也是一种服务,所以需要启动2:安装Gitapt-get install git3:为Git创建独立用户adduser git备注: ...
2018-07-28 00:27:52 2338
原创 端口占用与释放
简介开发过程中,常见端口被占用,尤其tomcat启动多个应用时。有些时候,我们知道哪里占用,但有时候不知道。端口释放netstat -ano|findstr 1099备注: 查看哪个进程占用了1099端口,执行后如下然后关掉对应的进程taskkill /pid 12540 /f备注:/f表示强制。具体是否要关掉对应进程,可自己判断,不能太过随意...
2018-07-24 14:04:56 9017
原创 使用Spring的Bean生命周期特性释放Redis连接池案例
简介写这篇文章的初衷源于前几天公司的Redis连接池溢出事件,后来是借助SpringBean的生命周期特征解决了连接池溢出问题。基础稍微好点的人应该知道,spring管理的bean,可以自定义初始化方法init,和bean销毁方法destroy,但是以前只是知道有这些特性,工作中从来没有用过,因此比较陌生。事件还原连续两天,公司redis连接池溢出,好多项目各种报错,群上开始讨论red...
2018-07-21 22:18:41 1748
原创 Redis单线程理解
简介从接触Redis到现在,一直被它的单线程问题困扰,这对于一个苛求原理的我来说是种折磨,今天吃饭途中看了几篇博客,茅塞顿开。个人理解 redis分客户端和服务端,一次完整的redis请求事件有多个阶段(客户端到服务器的网络连接-->redis读写事件发生-->redis服务端的数据处理(单线程)-->数据返回)。平时所说的redis单线程模型,本质上指...
2018-07-21 21:19:23 2924 4
原创 IntellJ快捷键创建于使用
前提首先,在IntellJ中添加插件“key promoter X”,插件的添加方式可浏览其他博客学习。插件的作用“key promoter X”:是一款快捷键提示插件,不管在IntellJ界面上点击什么按钮,他都会为你提示对应的快捷键,如果没有对应的快捷键,也可通过该插件定位到对应的快捷键配置中心,进而自定义快捷键,在此强调,非常好用,非常,非常好用。...
2018-05-31 10:23:36 269
转载 SpringBoot-profiles
<原文>很多时候,我们项目在开发环境和生成环境的环境配置是不一样的,例如,数据库配置,在开发的时候,我们一般用测试数据库,而在生产环境的时候,我们是用正式的数据,这时候,我们可以利用profile在不同的环境下配置用不同的配置文件或者不同的配置spring boot允许你通过命名约定按照一定的格式(application-{profile}.properties)来定义多个配置文件,然...
2018-05-14 22:26:34 938
原创 SSH协议详解
简介SSH只是一个协议,基于这个协议有不同的实现,这些实现中有开源,也有收费。原理普通网络通信一般是明文通信,数据容易被中间人拦截并且解析,而SSH协议则提供了基于内容加密服务。流程:第一种:口令验证登陆 (1)客户端向远程主机发起登陆链接请求。 (2)远程主机收到用户的登录连接请求,然后把自己的公钥发给客户端。 (3)客户...
2018-05-13 20:10:15 3948
原创 WebService注解
@WebService 1、serviceName: 对外发布的服务名,指定 Web Service 的服务名称:wsdl:service。缺省值为 Java 类的简单名称 + Service。(字符串) 2、endpointInterface: 服务接口全路径, 指定做SEI(Service EndPoint Interface)服务端点接口 3、name:此属性的值包含XML We...
2018-05-08 17:01:16 810
原创 eclipse-SVN资源同步过滤
打开:window-->preferences-->team-->Ignored Resource-->Add Pattern(或者点击window-->preferences-->然后直接搜索ignore)1:*/.git/* 表示.git文件夹下的所有文件,2:.classpath 表示对应的文件名3:target表示文件夹...
2018-04-25 16:28:15 612
转载 WSDL 详解
来源<http://staff.ustc.edu.cn/~shizhu/DotNet/WSDLxj.htm>Web Service描述语言 WSDL 详解 为什么使用WSDL? WSDL文档结构 WSDL文件示例 Namespaces SOAP消息 XML schema运用于WSDL的类型和消息中 XML schema运用之complex类型 XML schema运用之数组 <port...
2018-04-18 08:47:32 3652
原创 CXF生成代码
前提做好cxf配置下载apache-cxf,配置path路径wsdl2java参数详解命令行格式为:wsdl2java [options] -uri <url or path> : A url or path to a WSDL其中常用的options具体如下:-client 生成客户端测试web service的代码-server 生成服务器启动web service的代码-o &l...
2018-04-17 17:20:18 707 2
原创 eclipse代码超长后显示界面自动换行设置
简介开发过程中,有些代码难免过长,导致需要手动拖动横向滚动条去读取被隐藏的代码。但是eclipse提供了对应的换行机制,使得代码过长时自动换行,然而这与代码格式化中的换行不同,代码过长导致的换行并不影响代码本身的格式,仅仅是显示效果上的换行。快捷键:shift+alt+T,也可手动设置,具体设置方法查找其他资料。...
2018-02-24 10:38:54 3859 1
原创 Spring全局获取Bean实例对象
在使用maven做接口的时候发现一个问题,maven不能出现循环依赖,否则编译报错,那么如果业务逻辑中不得不循环依赖时怎么办呢?Spring在服务启动的时候会自动加载bean实例,而且用容器管理,虽然一个项目可能依赖于其他父项目 或者 子项目,但是最终都会被编译成同一个项目,那么bean最终也就是在同一个容器中管理,此时可以借助于容器,绕过maven的循环依赖,直接从容器中获取响应的bean实
2018-01-26 21:33:34 2097
原创 新导入项目常见问题
特殊情况:感觉什么都配置好了,但就是无法发布或者无法执行(尤其是导入其他工具创建的项目) 解决办法:在当前环境下创建一个新项目,然后将当前项目根目录下的.project和.classpath两个文件和导入项目相应的文件进行比较,看看是不是某些配置有问题1.类路径问题右击项目--》properties--》Java Build Path--》移除带红叉的jar或library等
2018-01-17 00:06:59 610
原创 Linux环境下文件批量复制脚本
简介在做项目的时候,有一种需求,class文件只能先以普通用户身份用ftp复制到linux,然后用shell工具以root用户将ftp复制来的文件复制到对应的项目目录,很麻烦,所以写了一段脚本完成这些任务。功能只需要把要复制的文件放到同一个临时目录当中,然后修改脚本文件,sourcePath表示临时目录,targetPath表示项目存放的目录实例假设:需要替换项目中的多个class,xml等文件,
2018-01-15 18:45:48 2954
原创 eclipse折叠所有方法
eclipse中默认有对应的快捷键,也可以自己定义,方法如下Window --> Preferences --> General --> keys --> Collapse All我这里设置的是Ctrl+shift+9
2018-01-13 16:09:20 10743
原创 java对象深度拷贝
import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStream;import java.io.ObjectInputStream;import java.io.ObjectOutputStream;import java.io.Serializable;import net.sf.json.JSONOb
2018-01-09 09:27:46 690
原创 XSHELL、SecureCRT实现Linux与Windows文件传输
使用XSHELL或SecureCRT链接Linux系统以后,我当前知道的只有命令行模式,如果想要在两者之间传输数据,这两个工具都提供了同样的命令。前提:Zmodem是一种数据传输协议,具体怎么传输我并没有去自习学习。rz(receive Zmodem):从当前主机传输文件到远程主机。rz命令虽然是在当前主机输入,但是rz命令执行是在远程主机执行,所以从远程主机的角度就是接收文件,因此这里的
2017-12-14 16:42:42 388
原创 java泛型-implements和extends
简介JavaSE当中之前的理解是:implements是实现接口,extends是继承类,但是在泛型中只能使用extends,不过只能使用extends并不意味着只能继承类,泛型使用extends后边既可以接父类又可以跟接口,最终实现的效果跟继承类或者实现接口是一样的。泛型实例 public <T extends List<?>> void test(T...
2017-12-12 20:48:01 7444
SVN代码自动更新(双击运行即可)
2018-09-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人