![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring
文章平均质量分 91
汪小哥
有多少时光可以挥洒~人生短短几十年~
展开
-
从文件加密到到视频文件进度条播放揭秘
AES 文件加密 & 视频进度播放 & 块存储分段下载原创 2022-07-20 20:50:03 · 599 阅读 · 1 评论 -
JdbcTemplate 香不香
简介似曾相识Spring对数据库的操作在jdbc上面做了深层次的封装,使用spring的注入功能,可以把DataSource注册到JdbcTemplate之中,配置非常的简单。spring 的好处就是提供了很多非常方便的功能,这个和resttemplate 类似的,对于http请求的封装也是非常的好用,我也是经常的使用的。具体使用随便百度一下即可: https://www.cnblogs.c...原创 2020-04-21 19:52:35 · 582 阅读 · 0 评论 -
Spring Boot 返回Content-Type解决方案
背景前端同学需要Content-Type 字段返回,根据文件的类型不同返回不同的类型;还有就是直接打开一个下载链接,对于Chrome这样的浏览器其实支持自适应预览的效果。https://tool.oschina.net/commons/ 这里的链接中有好多好多的Content-type的类型!拿到这个问题,之前的伙伴有写了几个if else 判断图片、文档等等,但是支持不是很全面、谁知道之后还...原创 2020-03-01 13:14:29 · 8425 阅读 · 1 评论 -
Spring Shell 源码分析
参考实例Java程序员的命令行工具spring-shell-源码解析-video一、起源1.1 原由为什么要使用spring shell,在公司中,发现同事使用scala 写了一个交互的命令行程序,其实就是scala自带的信,注册了函数,感觉使用起来挺方便的,为啥Java里面没有这样的使用东西!挺好奇的,我想使用一个接入简单方便,不要花费太多的时间,且我们要熟悉!最后发现spring...原创 2019-12-01 17:49:23 · 976 阅读 · 5 评论 -
Spring Shell 中文文档
spring shell官方链接 Version 2.0.0.RELEASE可以参考这篇文章的视频简介: spring shell Java命令行集成What is Spring Shell?不是所有的应用程序都需要一个花哨的 web 用户界面!有时,使用交互式终端与应用程序交互是完成工作的最合适方式。Spring Shell 允许您轻松创建这样一个可运行的应用程序,用户将在其中...原创 2019-11-30 21:39:44 · 6646 阅读 · 0 评论 -
Java程序员的命令行工具-spring shell 命令行,Arthas 线上运维
武当山命令行工具简介在使用arthas的时候,很多的命令记不住,比如arthas watch 后面需要添加一堆的参数,tarce 需要满足规范,我只想简单的使用,不想记住那么多,不想慢慢的看文档啊!因此简单的命令行能不能解决问题?可以的,就是一个简单的字符串处理,比如更好的给你复制到剪切板中,不是很方便?第二个需求,有些常见的命令无法记住,我想当个笔记本来使用这样可以?哈哈 !因此写了一个命令行...原创 2019-11-30 21:36:26 · 1348 阅读 · 1 评论 -
spring shell Java命令行集成
一、起源1.1 原由为什么要使用spring shell,在公司中,发现同事使用scala 写了一个交互的命令行程序,其实就是scala自带的信,注册了函数,感觉使用起来挺方便的,为啥Java里面没有这样的使用东西!挺好奇的,我想使用一个接入简单方便,不要花费太多的时间,且我们要熟悉!最后发现spring shell 比较好!集成了spring的容器机制!这个在今天的Java 后端程序员中...原创 2019-11-30 20:51:44 · 1050 阅读 · 0 评论 -
spring 资源查找 ResourceLoader接口 DefaultResourceLoader PathMatchingResourcePatternResolver
spring 资源查找 ResourceLoader接口 DefaultResourceLoader PathMatchingResourcePatternResolverResourceLoader接口用于返回Resource对象;其实现可以看作是一个生产Resource的工厂类。ResourceLoader接口只提供了classpath前缀的支持。getResource接口用于根据提供的l原创 2018-01-23 20:00:20 · 1275 阅读 · 0 评论 -
spring resource
spring resourceSpring资源抽象Resource,JDK操纵底层资源基本就是 java.net.URL 、java.io.File 、java.util.Properties,取资源基本是根据绝对路径或当前类的相对路径来取。从类路径或Web容器上下文中获取资源的时候也不方便。Resource接口提供了更强大的访问底层资源的能力。 Resouce 接口直接继承了JDK原创 2018-01-23 16:55:42 · 430 阅读 · 0 评论 -
Spring MVC Spring 中封装Hibernate Validator,简易使用校验
Spring MVC Spring 中封装Hibernate Validator,简易使用校验学习目录回顾Hibernate Validator简单使用 Hibernate Validator 校验方法的参数,返回值,构造函数 Spring Validator方法级别的参数校验,方法界别参数校验的全局处理,Sping MVC使用Hibernate Validator,自定义校验器 ...原创 2018-03-13 12:44:22 · 1675 阅读 · 4 评论 -
spring 国际化
spring 国际化i18n(其 来源是英文单词 internationalization的首末字符i和n,18为中间的字符数)是“国际化”的简称。在资讯领域,国际化(i18n)指让产品(出版 物,软件,硬件等)无需做大的改变就能够适应不同的语言和地区的需要。对程序来说,在不修改内部代码的情况下,能根据不同语言及地区显示相应的界面。 在全球化的时代,国际化尤为重要,因为产品的潜在用户可能来自世...原创 2018-03-06 13:58:21 · 2231 阅读 · 0 评论 -
spring task 通过@EnableScheduling启动流程简析
spring task无意间看到这个博客 Spring定时器Scheduled分布式/集群插件,支持数据库、redis缓存等,所以想写点spring -task相关的处理过程的,加深自己对于spring 处理流程的理解。从@EnableScheduling注解说起官方的代码上的注释,简单的说就是task 命名空间和这样的注解的使用是一个效果 Enables Spring’s ...原创 2018-04-18 21:06:15 · 4158 阅读 · 0 评论 -
你真的了解Java泛型参数?spring ResolvableType更好的处理泛型
你真的了解Java泛型参数?spring ResolvableType更好的处理泛型哈哈!你真的了解?我感觉了解了,但是真正的深入才知道自己了解甚少!spring 对于处理泛型参数使用啦ResolvableType,方便又快捷的帮助我们处理啦!很多类型的抽象,提供了统一的调用方式,更多的使用参考spring源码ResolvableTypeTest 不过我们自己对于Java的类型体系还是需要自己...原创 2018-06-26 12:02:46 · 11545 阅读 · 5 评论 -
RestTemplate 使用总结
一、 RestTemplate 简单介绍estTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。 调用RestTemplate的默认构造函数,RestTemplate对象在底层通过使用java.net包下的实现创建HTTP 请求,可以通过使用ClientHttpRequest...原创 2018-07-24 15:16:00 · 22116 阅读 · 6 评论 -
ActiveMQ 与 WebSocket 的结合推送方案+Spring Websocket Stomp
一、 背景对目前前后端分离的开发开发的大环境下, 前端使用 vue 进行项目的开发, 后端不在使用以前的 jsp 的开发方式进行开发, 因此造成了对于前端推送方案的选型问题, 在项目的开发过程针对于前后端的开发时间和效率等综合考虑进行了一个技术的选型,其中有过多种的方案的考虑。二、 各种推送方案的比较1. 各种推送方案的简单介绍Ajax 轮询:轮询:缺点,糟糕的用户体验;对...原创 2018-07-24 17:13:03 · 9900 阅读 · 1 评论 -
Spring Cloud Zuul
18. Router and Filter: Zuul-Part III. Spring Cloud Netflix 版本Finchley.SR118.路由器和过滤器:Zuul路由是微服务架构不可或缺的一部分。例如,/可以映射到您的Web应用程序,/api/users映射到用户服务,/api/shop 映射到商店服务。 Zuul是Netflix的基于JVM的路由器和服务器端负...翻译 2018-09-08 00:20:58 · 1562 阅读 · 0 评论 -
Spring Websocket
Spring Websockethttps://www.yuque.com/wangji-yunque/xrbpeo/iyw8ceSpring Websocket 出现的背景是什么?spring 秉承一贯的作风,将我们的工作变得更加的简单方便,好使用。使用原生的API太麻烦,而且对于不同的Web 容器拥有对于API的不同的实现,这个对于我们使用者来说十分的不友好,spring 将这些不同点进行...原创 2018-10-06 16:12:08 · 11366 阅读 · 3 评论 -
你真的了解AOP? 解读Spring Aop 官方文档(附视频)
背景:为什么有这个视频?之前想封装一下使用Aop封装一下 Hibernate Validator 发现自己还有些不足,不是真正的非常的熟悉Spring Aop,作为一个差不多工作三年的伙伴来说不服!查看官方的文档学习,记录下了这个视频!没有处理多久吧!主要是之前看过相关的书籍!了解了不少,源码也是看了不少!处理起来也是比较的顺畅的!完全就是为了学习之用!这个是我看的PDF版本downloa...原创 2018-12-02 21:02:59 · 2043 阅读 · 5 评论 -
Spring的资源抽象Resource实体类
Spring的资源抽象Resource实体类FileSystemResource文件系统资源FileSystemResource,资源以文件系统路径的方式表示,FileSystemResource 和以前的File一样的,只是增加了一些简单的操作,并且让spring统一处理Resource资源的信息。public class FileSystemResource extends A原创 2018-01-23 19:23:55 · 4350 阅读 · 0 评论 -
Java 读取JAR文件信息-PathMatchingResourcePatternResolver 解析classpath*:
Java 读取JAR文件信息JAR 文件格式以流行的 ZIP 文件格式为基础。与 ZIP 文件不同的是,JAR 文件不仅用于压缩和发布,而且还用于部署和封装库、组件和插件程序,并可被像编译器和 JVM 这样的工具直接使用。在 JAR 中包含特殊的文件,如 manifests 和部署描述符,用来指示工具如何处理特定的 JAR-百度百科 参考资料1 参考资料2 Java遍历包中所有类方法注解原创 2018-01-23 15:51:06 · 6149 阅读 · 0 评论 -
PoweMock集成Spring-test 测试静态方法 禁用字节码验证 -noverify -XX:-UseSplitVerifier
问题 我们使用Spring-test的时候使用如下的代码@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations={"classpath:springmvc-servlet-test.xml", "classpath:application-context-datasource-test.xml",原创 2016-05-07 13:01:50 · 12616 阅读 · 2 评论 -
websocket简单介绍
websocket protocol一种新的协议。它实现了浏览器与服务器全双工通信(full-duplex)。一开始的握手需要借助HTTP请求完成握手。背景 在浏览器中通过http仅能实现单向的通信,comet可以一定程度上模拟双向通信,但效率较低,并需要服务器有较好的支持; flash中的socket和xmlsocket可以实现真正的双向通信,通过 flex ajax bridge,可以在j原创 2016-05-11 19:34:06 · 510 阅读 · 0 评论 -
JAX-WS
JAX-WS规范是一组XML web services的JAVA API,JAX-WS允许开发者可以选择RPC-oriented或者message-oriented 来实现自己的web services。在 JAX-WS中,一个远程调用可以转换为一个基于XML的协议例如SOAP,在使用JAX-WS过程中,开发者不需要编写任何生成和处理SOAP消息的代码。JAX-WS的运行时实现会将这些API的调用转原创 2016-05-11 20:18:24 · 499 阅读 · 0 评论 -
spring integration JMS-基于ActiveMQ实现
JMS简介JMS的全称是Java Message Service,即Java消息服务。它主要用于在生产者和消费者之间进行消息传递,生产者负责产生消息,而消费者负责接收消息。把它应用到实际的业务需求中的话我们可以在特定的时候利用生产者生成一消息,并进行发送,对应的消费者在接收到对应的消息后去完成对应的业务逻辑。对于消息的传递有两种类型,一种是点对点的,即一个生产者和一个消费者一一对应;另一种是发布/订原创 2016-05-12 20:16:54 · 8496 阅读 · 0 评论 -
Spring JMS---三种消息监听器
消息监听器MessageListener在spring整合JMS的应用中我们在定义消息监听器的时候一共可以定义三种类型的消息监听器,分别是MessageListener、SessionAwareMessageListener和MessageListenerAdapter。下面就分别来介绍一下这几种类型的区别。 1. MessageListener MessageListener是最原始的消息原创 2016-05-12 23:17:37 · 9796 阅读 · 0 评论 -
Spring JMS——MessageConverter介绍
消息转换器MessageConverter MessageConverter的作用主要有两方面,一方面它可以把我们的非标准化Message对象转换成我们的目标Message对象,这主要是用在发送消息的时候;另一方面它又可以把我们的Message对象转换成对应的目标对象,这主要是用在接收消息的时候。 下面我们就拿发送一个对象消息来举例,假设我们有这样一个需求:我们平台有一个发送邮件的功能,进行发送原创 2016-05-12 23:38:56 · 6180 阅读 · 0 评论 -
org.springframework.context.ApplicationContextAware使用理解
这个接口有什么用? 当一个类实现了这个接口(ApplicationContextAware)之后,这个类就可以方便获得ApplicationContext中的所有bean。换句话说,就是这个类可以直接获取spring配置文件中,所有有引用到的bean对象。怎么用? 举个例子吧:例如我有一个方法类AppUtil,这个方法类中需要使用到的ApplicationContext中的某个bean(co原创 2016-05-13 10:10:00 · 755 阅读 · 0 评论 -
maven下使用 junit对 spring进行单元测试
发现通过Spring进行对象管理之后,做测试变得复杂了。因为所有的Bean都需要在 applicationContext.xml中加载好,之后再通过@Resource去取得。如果每次都要整个业务流做的差不多了再去测试,这样效率很 低,也很麻烦。如果单独去写一个测试用类,这样太繁琐了。于是想起Spring有一个测试框架,能够整合JUnit进行测试.我们给所有的测试类,书写一个公共的父类。这样使用的时候原创 2016-05-05 17:39:11 · 9468 阅读 · 0 评论 -
spring 事务管理 事务理解
spring 事务管理事务事务是应用程序中一系列严密的操作,所有操作必须成功完成,否则在每个操作中所作的所有更改都会被撤消。也就是事务具有原子性,一个事务中的一系列的操作要么全部成功,要么一个都不做。 事务的结束有两种,当事务中的所以步骤全部成功执行时,事务提交。如果其中一个步骤失败,将发生回滚操作,撤消撤消之前到事务开始时的所以操作。就像从小父母教育我们要有始有终,不能半途而废。事务的ACID事务原创 2017-05-12 21:06:15 · 672 阅读 · 0 评论 -
spring MethodInvokingFactoryBean 的使用和了解,Spring 通过通过方法创建Bean的实例
spring MethodInvokingFactoryBean 的使用和了解作用让某个实例的某个方法的返回值注入为Bean的实例让某个类的静态方法的返回值注入为Bean的实例使用MethodInvokingFactoryBean使用IDEA Maven项目非常方便的下载源码查看其类的说明信息,在这里非常方便的可以查看到这个方法的一些使用的说明小测试一下子,简单的就跟着这个使用的作用的两个原创 2017-08-24 16:31:57 · 10065 阅读 · 0 评论 -
AbstractRoutingDataSource动态数据源切换,AOP实现动态数据源切换
AbstractRoutingDataSource动态数据源切换 上周末,室友通宵达旦的敲代码处理他的多数据源的问题,搞的非常的紧张,也和我聊了聊天,大概的了解了他的业务的需求。一般的情况下我们都是使用SSH或者SSM框架进行处理我们的数据源的信息。 操作数据一般都是在DAO层进行处理,可以选择直接使用JDBC进行编程(http://blog.csdn.net/yanzi1225627原创 2017-08-21 16:08:12 · 38462 阅读 · 44 评论 -
cronExpression 的写法,spring中执行定时任务,spring 集成Quartz
cronExpression主要的格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)} 注意:除了{日期}和{星期}可以使用”?”来实现互斥,表达无意义的信息之外,其他占位符都要具有具体的时间含义。 比如:3 3 3 ?* 1(每周1,3点3分3秒执行一次) 3 3 3 * * ?(每天的3点3分3秒执行一次)秒数 允许值范围: 0~59 ,不允许为空值原创 2017-08-22 17:08:43 · 3977 阅读 · 0 评论 -
Hibernate Validator 方法界别验证,通过AOP实现,Unable to initialize 'javax.el.ExpressionFactory'.
Hibernate Validator 方法界别验证,通过AOP实现spring已经支持方法界别的参数验证了,我们只需要配置Bean就好了,然后在需要验证的类上面加上@Validated就可以了 <!-- bean级别的校验 方法中的参数bean必须添加@Valid注解,后面紧跟着BindingResult result参数--> <bean id="global-valid原创 2017-08-15 16:54:11 · 15675 阅读 · 4 评论 -
Spring LocalVariableTableParameterNameDiscoverer获取方法的参数名
Spring LocalVariableTableParameterNameDiscoverer获取方法的参数名问题:Java.lang.reflect 包中提供了很多方法,获取所有的方法,获取所有的参数类型等,但是却没有一个方法能够帮助我们获取方法的参数名列表。解决办法:可以通过ASM提供的通过字节码获取方法的参数名称,spring给我们集成了这个东西,让我们使用起来非常的方便作用:这个东西原创 2017-08-15 19:59:51 · 13112 阅读 · 3 评论 -
Quartz SimpleThreadPool的源码,一个简单的线程池的实现原理
Quartz SimpleThreadPool的源码,一个简单的线程池的实现原理 The pool has a fixed number of Thread s, and does not grow or shrink based on demand.(固定大小的线程池,不会增加,不会减少) 由于这个线程池的特性比较简单,易于我们去理解线程池,线程池的使用就是为了减少每次创建关闭的开销,节原创 2017-08-23 16:00:43 · 5685 阅读 · 0 评论 -
SimpleAsyncTaskExecutor(源码)简单的异步任务支持限流,ListenableFutureTask支持注册事件->FutureTask的继承
SimpleAsyncTaskExecutor 异步执行用户任务的SimpleAsyncTaskExecutor。每次执行客户提交给它的任务时,它会启动新的线程,并允许开发者控制并发线程的上限(concurrencyLimit),从而起到一定的资源节流作用。默认时,concurrencyLimit取值为-1,即不启用资源节流。<bean id="simpleAsyncTaskExecutor"原创 2017-09-30 15:15:17 · 15056 阅读 · 1 评论 -
Spring定时任务的实现方式--ScheduledExecutorService and ScheduledExecutorFactoryBean的简单源码解析以及使用
ScheduledExecutorFactoryBean的简单源码解析以及使用 ScheduledExecutorFactoryBean 配合ScheduledExecutorTask将JDK原来的ScheduledExecutorService提供的三种API进行了统一的封装,使用相同的方式去执行,非常的便捷,封装的思路也是比较厉害的,很多的东西值得我们去思考和学习。原生的Scheduled原创 2017-10-10 20:20:15 · 6102 阅读 · 0 评论 -
Excel工具类
package Util;import java.awt.image.BufferedImage;import java.io.ByteArrayOutputStream;import java.io.IOException;import java.io.OutputStream;import java.lang.reflect.Method;import java.net.URL;im原创 2016-05-24 16:59:57 · 685 阅读 · 0 评论