自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

陈俊的马蹄印

技术是一步一步脚踏实地走出来的

  • 博客(185)
  • 资源 (13)
  • 收藏
  • 关注

原创 Spring Boot版本,Spring Cloud版本与组件版本关系

    我们在学习Spring Cloud时,可能总是碰到以下问题:            1.Spring Boot版本与Spring Cloud版本关系            2.启动时,报莫名其妙的错,稀里糊涂的换个版本就好了            3.这么多版本,用那个呀,有什么区别            4.为什么提示我这个依赖找不到            5.Spring Cloud版...

2018-06-10 17:22:30 25386 8

原创 jar包冲突cmd解决

在项目根目录,执行mvn dependency:tree -Dverbose -Dincludes=:httpclienthttpclient:是冲突的jar的artifactId

2020-04-26 21:03:01 306

原创 idea文件头注释和方法注释设置

1.文件头注释/*** @Description: TODO* @author: zhang shang* @date:${DATE} ${TIME}*/2.方法注释* * @Description: $param$ * @Return $return$ */param:groovyScript("def result=''; def ...

2020-04-16 19:21:39 848

原创 Mybatis执行sql核心方法增删改Executor.update,查询ResultSetHandler.handleResultSets

1.Mybatis执行增删改的底层核心接口是Executor.update,如果我们想对它进行拦截处理,则需要拦截此方法2.Mybatis执行查询的底层核心接口是ResultSetHandler.handleResultSets,如果我们想对它进行拦截处理,则需要拦截此方法定义增删改的拦截器:@Intercepts({ @Signature(type = Executo...

2020-01-16 20:38:34 1992

原创 java 常用加解密算法总结

细心的开发会发现,我们在下载文件时,会带有密文,这是干嘛的呢,是用来校验下载的文件完整性和正确性,防止文件被篡改。如下图:加解密测试代码:package com;import java.io.File;import java.io.FileInputStream;import java.io.UnsupportedEncodingException;import j...

2020-01-14 16:22:16 625

原创 YAML的loadAs,dump读写

1.test.yml---friends: - 1111 - 2222 - 3333age: 17username: {firstname: 'zhang', lastname: 'shan'}2.main.java//读 Yaml yaml1 = new Yaml(); ClassPathResource clas...

2020-01-09 21:08:34 3727

原创 java编程式事务

1.java编程式事务 1.1 有返回值事务 @Autowired private TransactionTemplate transactionTemplate;return transactionTemplate.execute(status -> { //业务逻辑 retu...

2020-01-09 19:16:25 1470

原创 java用注解@annotation和切面@Aspect实现日志记录

1.日志切面定义@Aspect@Componentpublic class LogAspect { @Around(value = "@annotation(log)") public Object log(ProceedingJoinPoint joinPoint, Log log) throws Throwable { Object result =...

2020-01-05 20:58:27 4008

原创 在java中使用groovy的SimpleTemplateEngine获取占位符${}的值

在实际项目中,也许有这样的需求,在方法上配置切面Aspect来搜集日志,或者业务数据落库。就需要配置占位符来统一处理了,下面是demo,仅供参考学习。main方法:public static void main(String[] args) throws IOException, ClassNotFoundException { Map<String,Object&...

2020-01-05 20:30:53 1361 1

原创 MappingException: Following super classes referenced in extends not found

错误场景:同一个Spring boot项目,其他同事的项目都可以启动,而我是新装的环境,启动报错如下:To display the auto-configuration report re-run your application with 'debugMappingException: Following super classes referenced in extends not...

2019-12-06 11:42:47 244

原创 Docker Swarm服务集群

Docker Swarm是一个集群管理和编排工具,由管理节点和工作节点组成,管理节点下发服务(多个任务)给工作节点,工作节点执行任务。一个工作节点上可以启动多个应用容器。现在我们创建1个管理节点和2个工作节点的集群。1.docker-machine create -d virtualbox manager  //创建一个主机节点manager2.docker-machine ssh manager...

2018-07-06 12:02:14 363

原创 docker-compose up之Windows named pipe error:(code: 2)

当我们执行docker-compose up启动项目时,报如下错误:Windows named pipe error: ϵͳŐҲ»µ˝Ö¸¶¨µÄÎÄĽţˇŁ (code: 2)解决方案:1.docker-machine env按提示来操作。2.再次运行docker-compose up。注意:在我们执行docker-compose up命令时,如果出现其他类似错误,也可以这么试试。...

2018-07-02 16:55:22 7301

原创 索引使用策略及优化

创建索引在经常查询而不经常增删改操作的字段加索引。order by与group by后应直接使用字段,而且字段应该是索引字段。 一个表上的索引不应该超过6个。索引字段的长度固定,且长度较短。索引字段重复不能过多,如果某个字段为主键,那么这个字段不用设为索引。在过滤性高的字段上加索引。使用索引注意事项使用like关键字时,前置%会导致索引失效。使用null值会被自动从索引中排除,索引一般不会建立在有...

2018-07-01 16:40:03 358

原创 Docker,This computer doesn’t have VT-X/AMD-v enabled,Enabling it in the BIOS

当我们安装完DockerToolbox,进入Docker Quickstart Terminal,出现如下错误:error in driver during machine creation:This computer doesn’t have VT-X/AMD-v enabled .Enabling it in the BIOS is mandatory。解决方案:进入BIOS,找到 Intel...

2018-06-30 11:54:24 7182 3

原创 分布式服务链路跟踪组件Sleuth

        在分布式系统中,各系统之间相互调用,如何跟踪每个服务的调用情况,就显得比较重要了。Spring Cloud提供的Sleuth组件,就可以很容易的帮我们解决这个问题。        环境:Spring Boot版本是1.5.13.RELEASE,Spring Cloud版本是Edgware.SR3        1.首先,我们要创建一个ZipKin Server项目,用来收集跟踪日志...

2018-06-15 22:45:42 336

原创 Spring Cloud Consul服务发现与配置管理

      Spring Cloud Consul组件提供服务注册与发现(Eureka),分布式配置(config),控制总线(Bus)特性,也可以与zuul,ribbon,hystrix集成。       这里主要讲下它的服务注册与发现,分布式配置。       首先,我们要安装consul,这里不介绍,Spring boot 版本1.5.13.RELEASE,Spring Cloud版本Edg...

2018-06-10 22:58:33 6702

原创 Spring Cloud Bus消息总线学习记录

      Spring Cloud Bus利用消息中间件来连接分布式系统中的各个节点,用来广播状态的改变,比如配置文件的改变,以及管理指令。     这里我们利用rabbitmq来作为消息中间件,项目结构由一台eurekaServer,一台configServer,不同端口的2台app1。configServer作为服务方注册到eurekaServer,rabbitmq的安装不多介绍了。app1...

2018-06-09 20:41:25 309

原创 idea中maven报错Cannot reconnect

 idea报错Cannot reconnect.解决方案:打开日志文件目录,打开idea.log文件。可以发现与本地的hosts文件有关系。是的,这个是我昨天改过的,应该是127.0.0.1。改完后重启idea,就ok了。...

2018-06-06 09:36:27 29985 3

原创 智能路由Zuul

      Zuul是基于JVM的路由和服务端负载均衡器。      Zuul中的EnableZuulProxy和EnableZuulServer区别:   EnableZuulServer没有代理功能,只有pre,post,error过滤器,没有route过滤器。而EnableZuulProxy是有代理功能的,除了有EnableZuulServer提供的过滤器外,还有新增的过滤器,比如route...

2018-06-05 15:50:43 803

原创 RestTemplate+Ribbon和Feign结合Hystrix调用Eureka注册中心的服务

   Eureka注册中心的服务,有2中调用方式,RestTemplate+Ribbon和Feign。   首先,我们有一个Eureka注册中心集群(2台机器),这2台机器相互注册,机器上的服务相互同步,保证服务的高可用。然后有一个服务提供方集群(2台机器),将服务注册到Eureka注册中心集群。   1.eurekaServer模块,是注册中心集群,分8771,8772端口,分別启动。#客户端默...

2018-06-03 17:42:05 2329

原创 GitHub的README.md文件内容如何换行

         当我们在README.md写好内容时,发现它缩到一起了,不是我们想要的格式,怎么办呢?         直接在要换行的语句最后打上2个空格。

2018-06-03 16:09:26 79935 6

原创 Spring Cloud Netflix Eureka服务同步及高可用

      Spring Cloud Netflix Eureka是服务注册和发现组件,在分布式系统中,为客户端提供服务注册信息,类似于Zookeeper注册中心,首先服务提供者在启动时,将服务信息注册到注册中心,服务消费者在启动时,从注册中心获取服务提供者信息列表,根据特定的规则,选取其中一个服务提供者来发起调用。     默认情况下,Eureka是服务器同时也是客户端,自己给自己注册,先验证下...

2018-05-30 11:13:11 1555 1

原创 Spring Cloud Config学习总结

    Spring Cloud Config作为分布式系统的配置中心,Config Server默认从git上获取配置文件。当Spring应用启动时,会连接上Config Server,从Config Server获取配置来初始化Spring环境。    一、创建git仓库          1.1 创建远程git仓库               Git创建公开仓库          1.2 创...

2018-05-27 19:03:41 333

原创 Git创建公开仓库

如何直接在github界面上创建公开仓库及文件夹,文件呢,看如下步骤:--------------------------------------这是分割线------------------------------------------------------------这样一个空的仓库就玩事了,接下来是如何创建文件夹和文件。----------------------------------...

2018-05-27 15:57:11 2491

原创 maven插件实现

maven插件分为官方插件和第三方插件,那么他们如何区分呢?1.&lt;yourplugin&gt;-maven-plugin:这个就是第三方插件命名规范。2.maven-&lt;yourplugin&gt;-plugin:这个是官方插件命名规范,第三方插件是不推荐用这种方式来命名的。既然我们要实现自己的插件,那么有没有archetype给我们来生成插件项目呢,答案是有。mvn archetype...

2018-05-13 20:02:02 885

原创 maven中archetype(原型)的使用及创建

当我们在idea中创建项目时,经常会见到如下界面选择:archetype也就是原型,准确说是一个项目模板,我们可以根据该模板来生成项目。我就不介绍图形界面的创建方式了,一步一步太啰嗦了,我们用命令方式创建。创建一个常见的webapp项目。命令如下:mvn archetype:generate -DgroupId=com.cj -DartifactId=webAppDemo -Darchetype...

2018-05-13 17:14:34 43398

原创 Spring Boot中Controller读application.properties中文乱码解决方案

java开发工具Idea下解决方案:File -&gt; Settings -&gt; Editor -&gt; File Encodings将Properties Files (*.properties)下的Default encoding for properties files设置为UTF-8,将Transparent native-to-ascii conversion前的勾选上。注意:做...

2018-05-10 22:17:28 1483

转载 关于MySQL 通用查询日志和慢查询日志分析

转载:https://blog.csdn.net/timchen525/article/details/75268151MySQL中的日志包括:错误日志、二进制日志、通用查询日志、慢查询日志等等。这里主要介绍下比较常用的两个功能:通用查询日志和慢查询日志。1)通用查询日志:记录建立的客户端连接和执行的语句。2)慢查询日志:记录所有执行时间超过long_query_time秒的所有查询或者不使用索引...

2018-05-04 19:33:20 138

转载 Git的使用--如何将本地项目上传到Github

转载:https://blog.csdn.net/zamamiro/article/details/70172900Git的安装就不说了。       第一步:我们需要先创建一个本地的版本库(其实也就是一个文件夹)。       你可以直接右击新建文件夹,也可以右击打开Git bash命令行窗口通过命令来创建。       现在我通过命令行在桌面新建一个TEST文件夹(你也可以在其他任何地方创建这...

2018-04-30 20:12:25 142

原创 ActiveMQ通过Topic发送异步消息

    ActiveMq是实现JMS消息服务接口的技术。处理消息的方式有基于Queue的一对一方式和基于Topic的一对多方式。   下面是通过Topic发送常见的异步消息学习记录。    首先下载activemq安装包,我是在window上装的。安装完后,执行安装目录下的activemq.bat启动activemq服务器。    pom.xml依赖&lt;dependency&gt; ...

2018-04-30 20:08:00 1006

转载 带你成为JAVA架构师(写架构,非用架构)

转载:http://geek.csdn.net/news/detail/239195很多人做java开发2,3年后,都会感觉自己遇到瓶颈。什么都会又什么都不会,如何改变困境,为什么很多人写了7,8年还是一个码农,工作中太多被动是因为不懂底层原理。公司的工作节奏又比较快,难有机会学习架构原理,也没人教,所以这个时候,学习架构原理,扩展思维,对自己以后职业生涯尤为重要。同样公司的两个新人,一个新人一点...

2018-04-26 11:14:00 167 1

转载 成为一名Java高级架构师到底需要学习什么?

转载:https://blog.csdn.net/andyliulin/article/details/77888272Java架构师,应该算是一些Java程序员们的一个职业目标了吧。很多码农码了五六年的代码也没能成为架构师。那成为Java架构师要掌握哪些技术呢,总体来说呢,有两方面,一个是基础技术,另一个就是组织能力和提出解决方案能力了。我就跟大家来简要地说说吧。如果你是想成为Java架构师,那...

2018-04-26 10:18:07 253

原创 java多线程同步之对象锁区分

     多线程同步:多个线程共同协作正确的执行任务。     我们经常见到多线程同步关键字synchronized,那它到底是利用谁做同步锁呢。     要想实现多线程同步,必须要保证同步锁是共享唯一的。     synchronized一般用于3中场景:     1.非静态方法     2.静态方法     3.代码块一、非静态方法      同步锁指当前方法所在的对象实例,如果对象是单例,则...

2018-04-21 20:51:02 518

原创 设计模式之代理模式

我们知道,mybatis的mapper接口,利用jdk动态代理,来实现数据库的操作的。总结:1.代理类需要被代理对象的引用2.生成代理对象。3.实现代理方法

2018-04-20 16:46:06 96

原创 设计模式之策略模式

策略模式,根据当前上下文选择合适的策略。看Spring AOP的代理源码是如何实现的。ProxyFactoryBean.getObject(),返回代理对象,具体是返回JdkDynamicAopProxy还是Cglib2AopProxy呢,这时就要根据被代理的目标对象来决定了。 具体实现:1.定义接口,如:AopProxy2.实现接口,如:Cglib2AopProxy,JdkDynamicAopP...

2018-04-20 16:30:44 113

原创 JVM内存模型,垃圾收集算法,垃圾收集器

一、JVM内存模型程序计数器(Program Count Register)本地方法栈(Native Stack)方法区(Methon Area)栈(Stack),存放基本类型数据,进行运算操作,其上数据是可以共享的堆(Heap),存放引用类型数据新生代(Young Generation):分为 Eden 与 2个Survivor Space(幸存区),回收的对象内存比较多,用Copying(复制...

2018-04-17 19:21:54 369

原创 设计模式之适配器模式

从Spring MVC源码看适配器模式。protected HandlerAdapter getHandlerAdapter(Object handler) throws ServletException { for (HandlerAdapter ha : this.handlerAdapters) { if (logger.isTraceEnabled()) { logger...

2018-04-17 16:00:17 194

原创 DispatcherServlet源码分析

       首先,我们知道DispatcherServlet是前端控制器,是用来处理请求的,同时他也是一个Servlet,在初始化时,也是做了相关工作的。在Servlet调用init(),方法方法是,会回调DispatcherServlet的onRefresh方法,做相关初始化工作,比如:初始化本地化解析器,Handler映射器,Handler适配器等,为后面处理请求时,做准备工作。Servle...

2018-04-16 19:30:54 235

原创 基于注解和XML的AOP实现

   实现AOP功能的框架主要有Spring AOP和AspectJ,前者只能对方法进行创建joincut,而后者不仅可以对方法,还可以对字段和构造器创建joincut。一、注解配置AOP。public class Test { public static void main(String[] args) { ApplicationContext applicationC...

2018-04-12 16:28:20 532

原创 web应用是如何初始化Spring容器源码分析

    我们最常见的启动文件是web.xml,配置了监听器 org.springframework.web.context.ContextLoaderListener,具体流程是如何的呢?   当Tomcat启动完成后,会回调org.springframework.web.context.ContextLoaderListener的contextInitialized方法,完成Spring容器的初...

2018-04-04 00:04:49 228

多种好用的tab

工作中可以会常用到的tab导航菜单,可以先收藏下来

2014-06-26

tab菜单导航

比较好用的tab菜单导航,可以共学习和工作用

2014-06-26

tab导航菜单

多种样式的菜单导航,非常好用,大家共同学习

2014-06-26

时间轴特效显示内容

时间轴特效显示按时间排序,是比较酷和好用的东西

2014-06-26

以时间轴方式展示信息

定制查看http://xiaosa.blog.51cto.com/665033/1194614

2014-06-23

用于图片放大的js

用于图片放大的js,大家可来免费下载,共同学习进步,减少大家工作上时间

2014-06-13

indexcss效果

图片变大效果用的css,非常好用,大家可来免费下载

2014-06-13

jad反编译器

java开发必不可少的学习工具,看别人写的源代码,学习别人的代码规范

2014-06-08

jadeclipse

java反编译器,对于java的学习是不可少的,看底层源代码也是学习的绝好方法

2014-06-08

学生抽题考试系统

一个有两种权限的身份登陆,学生和老师,老师可以对试题crud,学生可以抽题,答题,查看成绩,其中用到了,字段校验,分页技术。主要是用jsp,strut2,hibernate进行开发的小型考试系统。适合新手学习。

2013-05-27

jboss应用服务器

jboss是专门用于web开发的一种应用服务器,是常用的。

2013-05-05

纯java学生信息管理系统

纯java写的学生信息管理中心,有数据库功能,增,删,查功能,还有简单的登陆界面。没有加入任何插件的代码。

2013-04-08

网页制作特效

网页制作特效,如果你想学好网页制作的话,这是很好的资源哦

2013-03-17

空空如也

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

TA关注的人

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