自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 问答 (1)
  • 收藏
  • 关注

原创 linux下执行sh出现异常"syntax error: unexpected end of file"

昨天天在windows系统上用notpad++编写linux shell脚本,当传送到linux上执行时一直报错说“syntax error: unexpected end of file”,然后我同事拿了我的脚本在它的苹果机上的shell执行也没有问题,结果让我纳闷了一天,今天早上以来百度了下这个错误才知道,原来windows 的DOS下的文本文件是以\r\n作为断行标志的,表示成十六进制就

2017-03-30 09:11:13 11107

原创 springboot应用war包部署tomcat

springboot的应用打包默认是打成jar包,并且如果是web应用的话,默认使用内置的tomcat充当servlet容器,但毕竟内置的tomcat有时候并不满足我们的需求,如有时候我们想集群或者其他一些特性优化配置,因此我们需要把springboot的jar应用打包成war包,并能够在外部tomcat中运行。    很多人会疑问,你直接打成war包并部署到tomcat的webapp下不就行

2017-03-27 10:16:29 22139 2

原创 springboot开启定时任务教程

我们在项目中经常会用到定时任务功能,springboot也给我们提供了定时任务的自动配置,我们只需要在启动类或者配置类添加注解@EnableScheduling即可,在需要定时执行的方法上使用注解@Scheduled(cron = "x x x x x x") ,注意,要定时执行的方法要注册成bean,意思该类需要使用@service或者@compenet注解

2017-03-24 13:43:10 947

原创 springboot自定义配置选项查看技巧

在使用springboot的时候,由于它的自动配置的存在,一开始很容易上手进行应用开发,但是等需要进行深度自定义配置的时候,很多人蒙圈,哪些内容可以自定义配置,配置参数是什么等等问题接踵而来,刚好我有个任务要进行springboot tomcat有那些配置参数可以配置的说明,所以就借这个机会告诉大家怎么查看某一个模块的配置参数有哪些。       首先,springboot的大部分自动

2017-03-23 19:29:44 14794

原创 springboot tomcat的配置选项大全

server. Port = xxxxserver. Address =server. contextPath =server. displayName =server. servletPath =server. contextParameters =server. useForwardHeaders =server. serverHeader =

2017-03-23 19:11:24 27570 6

原创 springboot自动配置的核心原理

springboot的最重要特点除了帮助我们管理依赖外,还有自动配置,springboot把一个个技术模块封装成一个个starter,当引入该模块依赖的时候就可以开箱即用,其中的原里主要是依赖于一下几个点:一、spring 4.x的@Configuration注解,自动配置提供的默认组件bean大都是通过@Configuration标注的配置类,这个不了解的可以先熟悉二、@Configur

2017-03-22 10:20:11 2225

转载 eureka和ZooKeeper的区别

本文作者通过ZooKeeper与Eureka作为 Service发现服务(注:WebServices 体系中的UDDI就是个发现服务)的优劣对比,分享了Knewton在云计算平台部署服务的经验。本文虽然略显偏激,但是看得出Knewton在云平台方 面是非常有经验的,这篇文章从实践角度出发分别从云平台特点、CAP原理以及运维三个方面对比了ZooKeeper与Eureka两个系统作为发布服务的 优

2017-03-20 09:17:49 7616

转载 spring声明式事务 同一类内方法调用事务失效

[问题]       spring的声明式事务,我想就不用多介绍了吧,一句话“自从用了Spring AOP啊,事务管理真轻松啊,真轻松;事务管理代码没有了,脑不酸了,手不痛了,一口气全配上了事务;轻量级,测试起来也简单,嘿!”。不管从哪个角度看,轻量级声明式事务都是一件解放生产力的大好事。所以,我们“一直用它”。       不过,最近的一个项目里,却碰到了一个事务管理

2017-03-20 08:43:40 510

原创 Mybatis的数据库字段类型JDBCType和java基本数据类型转换说明

我们在设计数据库的时候,往往需要注意数据库字段的类型和java的基本数据类型的对应关系,以便合理设计java实体;其实Mybaits里数据库字段类型和java数据类型的转换,都是由一个个typeHandler进行转换,如:BooleanTypeHandler、ShortTypeHandler、LongTypeHandler。。。而他们的基类都是BaseTypeHandler,如果我们想自定

2017-03-19 11:26:38 6085

翻译 Springboot构建spring mvc的web应用

springBoot非常适合web应用程序开发,你可以轻松地创建一个独立的使用嵌入式HTTP服务器Tomcat、Jetty,或Undertow,大多数web应用程序将使用spring-boot-starter-web模块快速地启动和运行 Spring Web MVC框架(通常被称为“Spring MVC”)是一个富有的“模型-视图-控制器”Web框架,Spring MVC允许您

2017-03-15 09:02:28 5467

原创 springboot Test 自动配置注解详单

以下表格是各种@…Test注解,能够使用来测试你的应用 和它们被导入时的自动配置测试的模块导入的 auto-configuration@DataJpaTestorg.springframework.boot.autoconfigure.cache.CacheAutoConfigurationorg.springfr

2017-03-14 11:25:23 4739

原创 springboot打包成可执行Jar文件教程

我们在开发springboot项目时,通常都是在IDE环境里执行main函数启动应用,但是当我们开发完毕需要部署项目时,就需要把项目工程打成能够独立运行的jar文件。把工程项目打成可执行的jar文件,需要maven-jar-plugin这个插件,并且需要配置指定项目的main方法所在的类;通过maven-jar-plugin打成Jar包后其实运行会报错,例如:”Exception in t

2017-03-13 17:45:00 9677 1

原创 springboot的注解@EnableScheduling作用详解

@EnableSheduling的作用主要是注册通过@import(SchedulingConfiguration.class)注册ShedulingConfiguration.class,如下图一,而ShedulingConfiguration.class主要是注册ScheduledAnnotationBeanPostProcessor类,如图二;ScheduledAnnotationBeanP

2017-03-12 22:32:10 7755

原创 springboot的注解@EnableAspectJAutoProxy讲解

@EnableAspectJAutoProxy:表示开启AOP代理自动配置,如果配@EnableAspectJAutoProxy表示使用cglib进行代理对象的生成;设置@EnableAspectJAutoProxy(exposeProxy=true)表示通过aop框架暴露该代理对象,aopContext能够访问.从@EnableAspectJAutoProxy的定义可以看得出,它引入As

2017-03-12 21:59:25 81486 7

原创 java中synchronization修饰的同步块的同步原理及出现异常时的自动资源释放原理

在java语言里,我们要进行同步块的控制,一般使用锁和synchronization关键字,用lock同步是在代码层进行资源的抢占控制,而用synchronization进行的同步jvm层的控制,在一个方法体里,被synchronizatioin修饰的语句块,其实在编译成字节码时,会被monitorenter和monitorexit指令包围,多个线程在进入monitorenter控制的字节

2017-03-12 15:54:07 1434

原创 talent-aio的使用和原理讲解系列(一)--java bio、nio、aio的io模型区别讲解

2017年春季开源中国要说最火的开源项目,即时通信框架敢说第一,没人敢说第二,当然现在是3月10日,它还能否火热一年让我们拭目以待。   虽然我不是talent-aio的作者,但也是挂名的开发者,所以好歹也得给它做点事情,写个博客给大家介绍它的使用,也不枉talent-aio作者对我的教诲。之所以talent-aio会开源,其实也有我的功劳,哈哈,因为当初我和作者是同事并住同一个小区,某一个散

2017-03-10 14:08:59 4259

原创 2017年阿里巴巴技术大会

今年2017阿里巴巴集团技术大会参与主体主要是阿里集团,蚂蚁集团,菜鸟网络,阿里集团CEO逍遥子,阿里集团CTO行癫,蚂蚁集团CTO鲁肃,马云分别上台进行主体演讲,老师主要对阿里经济体20后成为第6大世界经济体目标进行解读,已经他个人对最新火热的ai,大数据技术等的看法。今年技术大会并没有带来什么新的革命式技术创新,而是宣贯阿里的技术路线罢了。

2017-03-10 11:15:57 2483

转载 Spring Boot Junit单元测试

摘要: Junit这种老技术,现在又拿出来说,不为别的,某种程度上来说,更是为了要说明它在项目中的重要性。 凭本人的感觉和经验来说,在项目中完全按标准都写Junit用例覆盖大部分业务代码的,应该不会超过一半。

2017-03-08 15:51:34 3390

原创 maven的pom.xml的build常用配置

org.apache.maven.pluginsmaven-jar-plugintruetruelib/com.talent.mxxc.p.MxxcStarter                           ./config/                          **/

2017-03-07 22:03:24 1189

原创 springboot内嵌容器的tomcat和jetty的切换原理

spring-boot-starter-web模块默认是使用tomcat作为内嵌容器,如果我们想要切换为jetty,只需要添加jetty的依赖即可,如:dependency>   groupId>org.springframework.bootgroupId>   artifactId>spring-boot-starter-jettyartifactId>dependency>

2017-03-07 14:49:12 11203

原创 springboot 中@ConfigurationProperties和@importResource的作用和区别

@ImportResource在spring里是用在@configuration注解的配置类里,读取应用的xml配置信息加载进上下文,所有的bean和其他属性中定义的应用程序的xml都可以导入。@ConfigurationProperties是spring里用来读取properties文件的数据并自动配置该注解类的属性。ImportResource加载的是xml文件,configurati

2017-03-07 10:08:35 3348

原创 springboot 修改启动时默认加载application.properties文件以及加载指定配置文件

在springboot启动的过程中,默契情况下会在classpath路径下加载application.properties当做系统配置文件,但有时候我们想要替换成另一个文件,可以通过以下方式:SpringApplication  将从以下位置加载 application.properties  文件,并把它们添加到Spring  Environment  中:1. 当前目录下的 /

2017-03-07 08:55:58 71881 4

原创 springboot 修改默认加载的配置文件不为application.properties

在springboot启动的过程中,默契情况下会在classpath路径下加载application.properties当做系统配置文件,但有时候我们想要替换成另一个文件,可以通过以下方式:SpringApplication  将从以下位置加载 application.properties  文件,并把它们添加到Spring  Environment  中:1. 当前目录下的 /

2017-03-06 20:15:08 9580

原创 Spring aop事务代理对象通过TransactionInterceptor处理目标方法事务过程,cglib方式

我们都知道,spring aop主要是通过动态代理实现,而动态代理对象的产生主要是通过CGLib,而CGlib代理对象的方法内容的增强主要是在MethodInterceptor的intercept(),如果不熟悉CGlib的同学请先熟悉CGBlib的使用。Spring对CGLib进行了一些封装,如DynamicAdvisedInterceptor继承自CGLib的MethodInterce

2017-03-05 13:34:42 6832

原创 Spring aop事务异常回滚(rollbackFor)机制和源码分析

我们这使用spring aop进行声明式事务编程时,经常需要配置rollbackFor,指需要开启事务的方法抛出异常时,事务针对什么异常进行回滚,如下图是spring事务回滚的源码:txInfo.transactionAttribute.rollbackon(ex)对异常类型进行判断,判断配置的事务属性是否对ex这个异常类型进行回滚,如果进行回滚,则调txInfo.getTransacti

2017-03-02 14:56:16 3545

原创 事务TransactionStatus的RollbackOnly属性的作用

我们在执行事务提交的时候,经常会遇到Transaction rolledback because it has been marked as rollback-only的错误,表面的原因是某调用方法的事务在被调用方法抛出异常时捕获并提交事务时,报错异常,根本原因是被调用方法抛出异常后该共同事务TransactionStatus被RollbackOnly设置为true,表示该事务只能被回滚,不能

2017-03-01 15:21:39 3027

翻译 TransactionProxyFactoryBean spring事务代理的工程bean API讲解/翻译

spring事务对象的工厂Bean,也是spirng aop事务实现原理的核心类

2017-03-01 13:59:26 1767

原创 AbstractPlatformTransactionManager(Spring事务底层核心类)API讲解翻译

AbstractPlatformTransactionManager是Spring事务管理器的核心,要想熟悉Spring AOP事务管理原理和源码,就得先从它入手

2017-03-01 09:57:54 4363

空空如也

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

TA关注的人

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