- 博客(21)
- 收藏
- 关注
原创 centos服务器安装Jenkins教程
首先服务器需要有java环境,java -version确认jkd是否已安装。安装Jenkins,可以从官网下载jenkins.war包,通过java -jar的方式直接启动,或把war包放Tomcat,resin等web server下。这里介绍通过yum安装jenkins的过程。通过yum安装需要先添加Jenkins的repository,依次执行下面的命令:sudo wget -O /...
2018-11-26 19:04:36
611
原创 springboot项目使用gradle构建时profile的指定
springboot项目可以引用maven profile下变量,在maven打包时确定springboot的profile,那么使用gradle构建时,如何在gradle打包时指定springboot项目所使用profile文件呢?
2018-07-06 16:02:46
10771
2
原创 Do not use @ for indentation 异常
spring boot应用启动时,报了下面一个错:...Caused by: org.yaml.snakeyaml.scanner.ScannerException: while scanning for the next tokenfound character '@' that cannot start any token. (Do not use @ for indentatio...
2018-06-21 16:08:41
14557
原创 spring boot profile整合maven profile
spring boot支持多环境配置文件,在resources下可以定义:application.yml,application-pro.yml,application-test.yml 这样的配置文件,格式为application-xxx.yml,其中后面的xxx就是profile名称,在application.yml中定义spring.profiles.active: test,来表示使用哪个...
2018-06-21 15:45:11
1196
原创 9.RPC框架的简单实现(服务引用-Ldubbo协议)
在第七篇已经实现了ReferenceBean和rmi协议的服务引用,对于ldubbo协议来说,现在我们需要实现LdubboProtocol类doRefer方法,这个方法就是服务引用的具体实现。
2018-02-26 14:08:31
257
原创 8.RPC框架的简单实现(服务发布-Ldubbo协议)
RmiProtocol类的实现在第六篇和第七篇已经开发完了,借助了spring相关工具类。ldubbo自定义协议的实现类LdubboProtocol是接下来重点要实现的了。在第一篇文章中,我们提到dubbo框架服务端和客户端的通信使用netty框架开发,这里也是基于netty去实现服务的发布。关于I/O这里不做详细的介绍,但是我们要实现这个简单的rpc框架,了解dubbo的源码,必须得有net...
2018-02-24 17:16:25
423
原创 7.RPC框架的简单实现(服务引用-ReferenceBean实现与RMI协议)
上一篇rmi协议的服务发布已经完成,现在看一下服务引用的实现。ReferenceBean的实现同第四篇中的ServiceBean是不同的,ServiceBean是通过实现spring的InitializingBean接口,在afterPropertiesSet()方法中发布服务的。。。
2017-09-14 17:25:09
2493
原创 6.RPC框架的简单实现(服务发布-rmi协议)
通过rmi协议发布一个Java服务,使用java.rim包下的Naming.bind()方法即可,但是jdk默认rmi协议的实现需要接口类继承java.rmi.Remote,接口方法抛出RemoteException,实现类需要继承UnicastRemoteObject类比较繁琐。spring框架也提供了一套rmi协议的实现...
2017-09-12 16:22:40
523
原创 5.RPC框架的简单实现(SPI机制-ProtocolFactory)
dubbo框架中广泛使用了SPI的思想,很多dubbo源码解析的相关资料也是把基于SPI机制的dubbo内核实现作为了解dubbo源码的第一讲,dubbo源码中的ExtensionFactory、Protocol、Complier等大多数接口类都是基于SPI思想的。ldubbo这个自己实现的rpc框架也加入SPI的简单实现
2017-09-11 18:15:47
974
原创 4.RPC框架的简单实现(服务发布-ServiceBean实现)
前面介绍了ServiceBean不是一个简单的Java pojo对象,只拥有get,set方法,它需要在初始化之后执行服务发布的操作。spirng的InitializingBean接口为bean提供了定义初始化方法的方式,它只包括一个afterPropertiesSet()方法,凡是继承该接口的类,在初始化bean的时候会执行该方法
2017-09-11 15:39:44
584
原创 3.RPC框架的简单实现(解析自定义bean)
xsd文件,spring.handlers和spring.schemas文件定义好了之后,接下来就是定义自己的NamespaceHandler处理类
2017-09-11 10:58:00
955
原创 2.RPC框架的简单实现(定义自己的ldubbo命名空间)
在spring配置文件中扩展自己的xml bean配置,参考spring帮助文档的 Extensible XML authoring 部分。ldubbo框架服务端、客户端也基于spring配置文件
2017-09-08 17:59:06
1090
原创 1.RPC框架的简单实现(参考dubbo框架的基本原理)
前段时间读了读dubbo框架的源码,粗略的读了暴露服务和引用服务的具体实现,dubbo是一个成熟的rpc框架,里面的功能点和配置很多,了解整个dubbo的代码实现细节的话还真得需要不少时间。为了更快的理解dubbo,参考dubbo的基本原理,自己写了一个简单的RPC框架,实现了远程方法的调用。
2017-09-07 17:33:12
500
原创 Java md5加密实现
Java md5加密实现 md5算法是把任意一个字符串经过加密后得到一个16位的byte[]数组,也就是128位bit的串,所以md5值有2^128种可能。 2^128=340282366920938463463374607431768211456,这是非常大的一个数,md5是不可逆的,所以这是我们平时经常用到的一个加密算法,数据库存储的用户密码很多是md5算法加密后的
2017-08-10 18:06:57
827
原创 maven web项目执行install异常:org.apache.maven.plugin.war.util.WebappStructure
[INFO] Packaging webapp[INFO] ------------------------------------------------------------------------[ERROR] FATAL ERROR[INFO] ----------------------------------------------------------------...
2014-08-06 11:55:02
4050
linux下的断点下载工具axel
玩ubuntu系统有段时间了,喜欢chrome浏览器,一般下载东西都是用google搜索后用浏览器下载,速度还可以,有时遇到一些国外的文件镜像地址下载一些文件的时候速度很慢,几十kb,一次下载个1G的iso文件,20来分钟了,才下载几十M,心想这要下到什么时候。几个小时下载不完,还不能关chrome了,关了化就白下载了~,google了一下,找到一个工具axel。安装先:sudo apt...
2014-05-04 17:16:03
340
远程执行服务器端命令程序(jsch实现)
通过jsch可以实现基于sftp协议的文件传输,使用的是ChannelSftp类,如果要在程序中实现启动服务器的一个脚本,执行某个系统命令的话,就需要用到另一个channel类了,就是ChannelExec类。 如果项目采用maven构建的话,引入<dependency> <groupId>com.jcraft</...
2014-04-04 14:42:27
620
CentOS服务器resin显示html页面中文乱码
发布到服务器的项目,html页面中文显示乱码。在本地的ubuntu系统和windows系统,jetty和resin都能正确显示,上传到centos的服务器下的resin中文不能显示,google了一下,有人说修改app-default.xml下的<servlet servlet-name="resin-file" servlet-class="com.cauch...
2014-01-17 10:17:07
275
原创 基于sftp协议的文件传输(jsch实现)
文件传输在开发中还是经常会遇到的,通常情况会采用ftp协议,java实现ftp协议传输的工具还是有挺多的选择的,比如apache的commons-net工具包。要想程序实现sftp协议或ssh协议的传输文件,也是很容易的,这时用到的就是jcraft的Jsch工具包了。 如果项目采用maven构建的话,引入 <dependency> &...
2014-01-03 17:27:47
505
原创 Thrift初步了解
Thrift是一个可伸缩的跨语言的服务开发框架,对它的介绍就不google再复制了。当我们在做web开发时,前端可能采用php,python,ruby等脚本语言做用户的交互页面,那业务和数据库的部分不少就用Java来开发了,毕竟做Java开发的程序员的数量还是占大多数的。这时,我们网站或系统的架构就可以页面用php写,业务程序用Java来写(对web开发都熟悉的mvc来说,就是把control...
2013-11-05 18:10:17
326
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人