自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

转载 VUE实战项目-数据转换之道

前言 公司的这个项目从去年底启动、至今经历winform版本与当前的VUE两个版本,前后经历不足3个月的时间。从纯技术角度来看,推进速度都很优异。究其原因,大抵我们都是喜欢“偷懒”的程序员,把能封装、能公用的代码尽可能的整合起来。多写一行代码都觉得遭罪。一路懒下来,倒也有所收获。接下来进行一些总结,不求大而全,只求小而精,不积小流无以成江海。数据转换之道...

2019-02-28 00:01:00 272

转载 利用Thread.stop完成方法执行超时中断

示例代码可以从github上获取https://github.com/git-simm/simm-framework.git接上篇博客《FutureTask子线程取消执行的状态判断》一、业务场景:  系统中存在多种场景并发操作事务执行时互锁的情况,导致任务积压,系统崩溃。先做了各场景业务的性能调整,但是并发互锁依然无法避免。于是开始考虑选取调用频繁的同步功能作为死锁的牺牲品...

2018-09-22 21:42:00 216

转载 FutureTask子任务取消执行的状态判断

示例代码可以从github上获取https://github.com/git-simm/simm-framework.git一、业务场景:  系统中存在多种场景并发操作事务执行时互锁的情况,导致任务积压,系统崩溃。先做了各场景业务的性能调整,但是并发互锁依然无法避免。于是开始考虑选取调用频繁的同步功能作为死锁的牺牲品,取消执行,释放锁。二、处理方案:  在这里优先...

2018-09-22 20:34:00 504

转载 切分大任务成多个子任务(事务),汇总后统一提交或回滚

示例代码可以从github上获取https://github.com/git-simm/simm-framework.git一、业务场景:  系统中存在一个盘库的功能,用户一次盘库形成一两万条的盘库明细单,一次性提交给服务器进行处理。服务器性能比较优越,平均也得运行30秒左右。性能上需要进行优化。二、处理方案:  做过代码分析后,发现单线程逻辑没有什么优化空间。开...

2018-09-22 19:31:00 850

转载 线程同步synchronized,wait,notifyAll 测试示例

https://www.cnblogs.com/LipeiNet/p/6475851.html一 synchronizedsynchronized中文解释是同步,那么什么是同步呢,解释就是程序中用于控制不同线程间操作发生相对顺序的机制,通俗来讲就是2点,第一要有多线程,第二当多个线程同时竞争某个资源的时候会有先后顺序。在java中有三种写synchronized的方式第...

2018-09-14 10:43:00 117

转载 IDEA+DevTools实现热部署功能

开发IDE: Intellij IDEA 2018.1 SpringBoot:1.5.9.RELEASE热部署  大家都知道在项目开发过程中,常常会改动页面数据或者修改数据结构,为了显示改动效果,往往需要重启应用查看改变效果,其实就是重新编译生成了新的Class文件,这个文件里记录着和代码等对应的各种信息,然后Class文件将被虚拟机的ClassLoader加载。而热部...

2018-08-27 10:35:00 125

转载 springboot-条件化注解

  在项目中,有时会遇到我们的Configuration、Bean、Service等等的bean组件需要依条件按需加载的情况。那么Spring Boot怎么做的呢?它为此定义了许多有趣的条件,当我们将它们运用到我们的bean上时,就可以实现动态的加载控制了。  自动配置中使用的条件化注解  举个栗子:公司同事做了一个公用的sso服务,业务系统可以选择性进行集成。当配置文件设置...

2018-08-24 14:59:00 105

转载 JSON不对称反序列化映射方案

源码Git地址: https://github.com/git-simm/simm-framework.git (欢迎大家提交优化代码 ^_^)一、业务场景  公司先有业务系统,后来觉得需要抽离公共的底层权限服务。再加上之前的业务对象命名不规范,这次想要一次搞定。面对这种场景,摆在我面前的有三套方案。用底层权限服务提供的数据格式,把业务代码中不规范的引用都改一遍。影响面实...

2018-08-09 22:43:00 196

转载 MySQL事务隔离级别测试实例

https://www.cnblogs.com/huanongying/p/7021555.htmlMySQL事务隔离级别事务隔离级别脏读不可重复读幻读读未提交(read-uncommitted)是是是不可重复读(read-committed)否是是可重复读(repeatable-read)...

2018-08-07 20:50:00 99

转载 Hashmap原理分析

开局先转载一篇博文《深入理解HashMap》。在跟踪了HashMap的源码后,本想自己做些总结,后来再网上看到这篇博文,个人觉得总结的很好,于是就顺手牵来,做个知识备份☺Hashmap是一种非常常用的、应用广泛的数据类型,最近研究到相关的内容,就正好复习一下。网上关于hashmap的文章很多,但到底是自己学习的总结,就发出来跟大家一起分享,一起讨论。1、HashMap的数据结构...

2018-06-04 17:43:00 92

转载 IDEA内嵌Jetty启动SpringMvc项目

  这段时间本意是想要研究一下Netty的多线程异步NIO通讯框架,看完原理想要做下源码分析。查找资料发现Jetty框架底层支持用Netty做web请求的多线程分发处理,于是就筹备着将Jetty框架内嵌到手头的一个测试项目中,调试源码分析实现原理。结果这集成一搞就是两天,有些细节部分还是要真正接触之后才会了解,为此特意整理博客一篇,就集成过程中的问题做一下总结。  项目说明:Mave...

2018-06-02 22:35:00 430

转载 Java 8 函数式接口

转载自:http://www.runoob.com/java/java8-functional-interfaces.html ,仅做备份,方便查找。函数式接口(Functional Interface)就是一个有且仅有一个抽象方法,但是可以有多个非抽象方法的接口。函数式接口可以被隐式转换为lambda表达式。函数式接口可以现有的函数友好地支持 lambda。JDK 1....

2018-05-31 15:01:00 79

转载 IntelliJ+AntBuild+Tomcat实现Maven站点的热部署

  这段时间要研究WebGL技术,做一下三维建模项目,涉及到较多的前端编码。eclipse编译器那令人着急的编码提示功能,以及丑恶的界面对项目的开展造成了一定的阻碍。为解决这个问题,转向IntelliJ Idea这款IDE,下载了最新版,完成破解,开启新征程。  历史证明摸着石头过河,总是要喝两口水的。征服之路:一、创建多模块的Maven项目,与eclipse建项过程差不多,...

2018-04-13 15:43:00 269

转载 C#一个简单的定时表达式(HH:mm:ss)解析

前言  为客户开发了一个日志监控程序,监听各频道是否正常工作。其中有一个功能是这样的,当所有频道正常运行一段时间后,语音提示值班人员系统运行正常。一开始,想法比较简单,设置了一个变量,在线程不断轮询的过程中去统计连续正常运行的总时长,当达到设置的阀值后,提交一条语音播报任务。后来,客户反馈他们需要定点去值班,顺道查看下软件是否正常,听听语音播报。一沟通,好吧,做个类似于cron表达式...

2018-03-01 15:57:00 675

转载 java-redis集合数据操作示例(三)

 redis系列博文,redis连接管理类的代码请跳转查看《java-redis字符类数据操作示例(一)》。一、集合类型缓存测试类public class SetTest { /** * 主测试方案 */ @Test public void test() { RedisUtil.instance.ru...

2018-02-27 16:55:00 239

转载 java-redis列表数据操作示例(二)

 接上篇博文《java-redis字符类数据操作示例(一)》,redis连接管理类的代码请跳转查看。一、列表类型缓存测试类public class ListTest { /** * 主测试方案 */ @Test public void test() { RedisUtil.instance.run(c...

2018-02-27 14:24:00 124

转载 java-redis字符类数据操作示例(一)

 对于大部分程序猿来讲,学习新知识重在编码实践,于我也是这样。现在初识redis,一直看文章难免感觉是浮光掠影,印象不深。所以间隙中,将自己的测试代码整理成博客,旨在加深记忆并提醒自己对待编程要用心沉下去,起码得要搞清楚各api的正确用法。本次示例主要是对redis string类型的api进行测试,为测试代码创建了一个数据库连接管理类,统一处理连接的创建与关闭。创建一个功能函数式接口,...

2018-02-26 17:11:00 118

转载 java-redis初探

一、Redis 简介  Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。  Redis 与其他 key - value 缓存产品有以下三个特点:Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zs...

2018-02-24 17:08:00 80

转载 传统IO与NIO(channel-to-channel)文件拷贝的探索与性能比对

  Channel-to-channel传输是可以极其快速的,特别是在底层操作系统提供本地支持的时候。某些操作系统可以不必通过用户空间传递数据而进行直接的数据传输。对于大量的数据传输,这会是一个巨大的帮助。——摘抄至《Java NIO》  今天学习了NIO的channel-to-channel的数据传输方式,为了对其有一个较清晰的认识,特意进行测试,并与java-io的传统传输方式进...

2018-01-18 16:29:00 303

转载 使用nio对磁盘下的文件进行过滤

  上篇博文讲到为了解决tomcat日志自动清理的问题,翻看了tomcat-juli这个jar包。在FileHandler类下有一个利用nio完成对磁盘下过期文件进行过滤的功能实现,正好这段时间正在学习nio框架,所以特意抽离源码做了一下测试。以下将提供测试代码(主要代码摘抄自tomcat-juli.jar源码),与君共勉。package nio;import java....

2018-01-17 16:08:00 109

转载 Tomcat8.5.24日志自动清理(maxDays)功能探究

前言 测试人员反馈tomcat目录下的日志占用空间很大,需要自动清理。接到这个反馈时,想象着应该是一个很简单的功能,tomcat应该已经实现了日志的自动清理功能。于是乎,我先到网上查询了如何自动清除tomcat日志,结果发现搜索结果最靠谱的也就是自己写个定时清理脚本,放入系统启动计划中。卧槽,不是吧,这功能还得自己单独处理!不应该吧!为了解答自己的疑惑,我毅然访问了tomcat官网,...

2018-01-16 21:52:00 735

转载 Servlet3.0+springmvc5+log4j2正确的开启姿势(WebLookUp)

前言 java社区占据市场份额比较大的日志组件由log4j 1.×,到logback,再到整合后的升级版 log4j 2.×,有网友测试后据说log4j2的性能最NB。于是开始往自己的springmvc5项目中整合log4j2框架。第一次使用,没什么经验,再加上网上出现的资料大多是旧版本,还有些介绍过于集中log4j2的属性说明,对于项目集成益处有限。接下来我结合自己这次的整合经验,...

2017-12-28 22:56:00 242

转载 jersey2.26+spring5+jpa一步步搭建restful服务

前言 首先,为什么想选择Jersey做restful服务呢?我个人比较喜欢它的插件化设计,可以方便的注入自己的全局处理逻辑。再一个就是可以生成wadl描述文件,供查询服务方法。所以在学习spring的过程中,特意抽时间做了jersey+spring集成的验证。在本次搭建的过程中,为了在jersey服务中启动spring事务,从网上查阅了不少。先是看到com.sun.jersey例子,...

2017-12-27 17:50:00 415

转载 JPA数据懒加载LAZY配合事务@Transactional使用(三)

上篇博文《JPA数据懒加载LAZY和实时加载EAGER(二)》讲到,如果使用懒加载来调用关联数据,必须要保证主查询session(数据库连接会话)的生命周期没有结束,否则,你是无法抽取到数据的。那么如果保证自己想要获取关联数据时,数据库会话session还存在呢?今天讲解一种方法,借助Spring提供的@Transactional注解来实现方法内部的操作在同一次数据库连接中执行。需...

2017-12-22 17:42:00 969

转载 JPA数据懒加载LAZY和实时加载EAGER(二)

懒加载LAZY和实时加载EAGER的概念,在各种开发语言中都有广泛应用。其目的是实现关联数据的选择性加载,懒加载是在属性被引用时,才生成查询语句,抽取相关联数据。而实时加载则是执行完主查询后,不管是否被引用,立马执行后续的关联数据查询。社区里有人认为懒加载这种功能比较鸡肋,这种事仁者见仁,智者见智啦,个人觉得依自己业务场景而定。 顺带说一句,使用懒加载来调用关联数据,必须要...

2017-12-21 18:34:00 626

转载 自定义JpaUtil,快速完成Hql执行逻辑(一)

 这段时间学习Spring Data JPA功能模块。Java持久性API(简称JAP)是类和方法的集合,以海量数据关系映射持久并存储到数据库,这是由Oracle公司提供方案技术。在JAVA社区,深受爱戴,作为老少皆宜,大小通吃的存在,可以快速实现访问数据库功能。其官方推崇的是通过继承JpaRepository<T, ID>接口,实现一个个的领域仓储(即基础表的增删改查方法组...

2017-12-20 17:35:00 451

转载 Spring-Security 自定义Filter完成验证码校验

 Spring-Security的功能主要是由一堆Filter构成过滤器链来实现,每个Filter都会完成自己的一部分工作。我今天要做的是对UsernamePasswordAuthenticationFilter进行扩展,新增一个Filter,完成对登录页面的校验码的验证。下面先给一张过滤器的说明,接下来讲自定义的登录验证Filter。 https://docs.spring....

2017-12-13 15:03:00 540

转载 spring 代码中获取ApplicationContext(@AutoWired,ApplicationListener)

2017年度全网原创IT博主评选活动投票:http://www.itbang.me/goVote/234  学习spring框架时间不长,一点一滴都得亲力亲为。今天忽然觉得老是通过@Autowired自动装载组件不太舒服,老是要到类下写注解。于是考虑直接获取ApplicationContext,调用getBean去获取自己想要的Bean实例。网上查了资料,一开始错了方向,通过加...

2017-12-11 11:29:00 606

转载 Spring-Security+Freemarker 开启跨域请求伪造防护功能

CSRF简介——摘抄自《Spring实战(第4版)》 我们可以回忆一下,当一个POST请求提交到“/spittles”上时,SpittleController将会为用户创建一个新的Spittle对象。但是,如果这个POST请求来源于其他站点的话,会怎么样呢?如果在其他站点提交如下表单,这个POST请求会造成什么样的结果呢?假设你禁不住获得一辆新汽车的诱惑,点击了按钮——那么...

2017-12-08 18:05:00 367

转载 Tomcat8+Spring-Security 启用安全通道(https)的一步步实现

近日学习Spring Security框架,学习到利用安全框架完成系统的安全通道控制时,来来回回遇到了不少问题。spring教程上写的略简单,对于我等小白来讲不足以支撑看书编码,好在网络上有资料可以查询,在吸取了他人经验,再结合自身的调试,最终实现了想要的效果。接下来,我就一步一步还原这个实现的过程,请往下看。 一、关于Tomcat的证书安装,ssl监听端口的实现说明...

2017-12-08 12:11:00 541

转载 Spring-Security自定义登录页&inMemoryAuthentication验证

Spring Security是为基于Spring的应用程序提供声明式安全保护的安全性框架。框架下内容比较多,可以做到按照角色权限对请求路径进行限制。今天主要验证自定义登录页,在内存用户存储中进行请求的权限校验。闲话休提,下面直接探讨我的验证过程,如果有比较好的意见,欢迎各位指正。1、系统使用Maven进行jar包管理,spring用的5.0版本。首先在pom文件中添加Sprin...

2017-12-06 18:29:00 791

转载 spring 完成multipart数据上传

spring中多媒体文件的上传,通过配置 MultipartResolver 实现。MultipartResolver 的实现类有两个:一、StandardServletMultipartResolver;二、CommonsMultipartResolver。通常来讲StandardServletMultipartResolver会是最佳选择,它依赖于Servlet 3.0对mult...

2017-12-05 15:07:00 107

转载 spring 运行时属性值注入

继续spring学习,今天介绍两种外部属性值注入的方式。当你需要读取配置信息时,可以快速读取。 开始之前先创建属性文件site.properties,放在classpath下面#数据库配置 ###database.oracle.platform=org.hibernate.dialect.Oracle9iDialectdatabase.mysql.platfor...

2017-12-05 11:12:00 124

转载 spring 组件@Scope(request,session)示例

上回说到, spring组件的注解Scope大约有singleton、prototype、request、session、global session 这么几种常用的场景。这里需要特别说明一下,根据源代码显示 Scope注解分为ConfigurableBeanFactory和WebApplicationContext两个大类,ConfigurableBeanFactory包含(sin...

2017-11-30 22:27:00 391

转载 spring 组件自动装载示例(@ComponentScan,@Component,@Scope)

今天学习spring的bean组件装载功能,个人不太喜欢xml文件一个个配置bean的方式,所以主要学习测试注解式的自动装载方式。下面将简单说明下@Component的用法,简单入门示例献给大家。 实现主要步骤说明:1、ApplicationContext.xml(spring上下文环境配置)文件先配置好需要自动扫描的包位置。注册完成后,在spring初始化上下文环境时,...

2017-11-29 16:39:00 168

转载 SpringMVC+FreeMarker实现静态资源文件自动添加版本号(md5)

近日切换java开发,开始学习springframework。在实现静态资源文件自动计算版本号的实例时,因为不熟悉框架,走了不少弯路,好在最终解决了问题。这里写篇文章记录一下实现,也希望对大家有些用处。开发工具: eclipse,spring版本:5.0.1.RELEASE 功能用途:为静态资源文件计算版本号,可以避免客户端缓存了静态资源后,无法及时刷新服务器上最新版本文件的问...

2017-11-28 15:24:00 343

转载 解决方案下显示的网站名称被追加编号的问题解决方法

问题描述只看标题 大家是不是觉得有点不知所以?好吧,直接上图,大家请往下看。如图中所示,我用VS2012编辑器添加一个解决方案[TestSolution],接着我先添加一个网站[Test],然后因为路径选择不对,就把站点文件删除重建,结果就有了上图显示的问题了。大家会不会觉得奇怪,为什么我的物理文件夹名字是 Test,但是解决方案打开就成了 Test(1) 这么个...

2014-08-25 14:14:00 117

空空如也

空空如也

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

TA关注的人

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