自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 动态规划思考3

动态规划的思考(三)标签: 算法动态规划c++dp2016-07-20 22:08 143人阅读 评论(0)收藏举报本文章已收录于:分类: 动态规划(12) 作者同类文章X版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]一个问题换零钱方

2016-12-20 11:04:48 543

转载 动态规划思考2

动态规划的思考(2)标签: 算法c++动态规划dptopcoder2016-07-19 12:43 55人阅读 评论(0)收藏举报本文章已收录于:分类: 动态规划(12) 作者同类文章X目录(?)[+]Dynamic Programming From Novice t

2016-12-20 11:03:56 816

转载 动态规划思考1

动态规划的思考(1)这是知乎上的一个提问:转载回答:作者:徐凯强链接:https://www.zhihu.com/question/23995189/answer/35324479来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。动态规划中递推式的求解方法不是动态规划的本质。我曾经作为省队成员参加过NOI,保送

2016-12-20 11:02:13 412

原创 利用javadoc定制自己的接口文档(三)

这一篇我将介绍自己是如何将注解名称从代码中抽出,如何设计model层的数据结构,如何将数据及文件的生成从doclet中抽出来,及针对freemarker模板针对这些数据结构所做的修改,从而有了第三代doclet——doclet3

2016-09-15 17:37:14 1390 1

原创 tomcat类加载体系

jvm中有一个很重要的模块,就是类加载机制,而且由于其双亲加载机制的设计,保证了java核心库的安全性,更进一步,保证了共享对象这一机制,从而达到信息的高度共享。有意思的是,java的ClassLoader并不是final的,也就是我们完全可以通过继承它而改写这个类加载体系,tomcat就是这么做的。这篇博客就是来介绍tomcat为了实现其实际的需求,改写类加载体系的。

2016-09-09 22:22:11 596

原创 tomcat安全加载CLASS分析

前言在《通过tomcat源码查看其如何实现应用相互隔离》中,我介绍了在Bootstrap的init方法中,其中有关类加载器的执行有3步:初始化commonLoader、catalinaLoader和sharedLoader;将catalinaLoader设置为Tomcat主线程的线程上下文类加载器;线程安全的加载class。这篇博客就是介绍如何tomcat线程安全的加载class。安全加载C

2016-09-05 16:37:55 1202 1

原创 通过tomcat源码查看其如何实现热部署

前言看完《通过tomcat源码查看其如何实现应用相互隔离》, 关于tomcat是如何做到热部署的,相信不用说也能猜到个十之八九。简单讲就是定期检查是否需要热部署,如果需要,则将类装载器也重新装载,并且去重新装载其他相关类。代码分析首先来看一个后台的定期检查,该定期检查是StandardContext的一个后台线程,会做reload的check,过期session清理等等,这里的modified实际上

2016-09-01 17:09:52 772

原创 通过tomcat源码查看其如何实现应用相互隔离

tomcat之所以创造了一堆自己的classloader体系,其目的之一就是为了实现应用的相互隔离,而对于许多应用,需要有共享的lib以便不浪费资源。那么,tomcat是如何实现这些功能的呢?通过tomcat源码,我会为大家详细介绍

2016-09-01 17:04:35 4531

原创 tomcat context.xml文件配置<Loader delegate="true" />作用

都知道tomcat的类加载机制和jvm的类加载机制不同,但是却很少有人知道tomcat的类加载机制是有一个开关来控制它的加载顺序。这个开关,就是<Loader delegate="true">

2016-09-01 07:32:21 6511

原创 tomcat的启动过程(从startup.bat谈起)

自己在做后台开发时,每次都是直接运行startup.sh。但是运行之后tomcat到底干了啥,自己也是一脸懵逼。于是专门去研究了研究tomcat启动过程。在此做个记录

2016-08-28 11:03:21 6318

原创 利用javadoc定制自己的接口文档(二)

上一篇我们介绍了doclet及其命令行选项,最后是自己自定义的doclet代码,思路很简单,就是利用doclet读取代码在方法上面的注解,然后将这些注解的值写到模板中,最后输出到指定位置。在第一代doclet中,自己将html模板,java模板,自定义标签名称等都写在一起,耦合性极强。这一篇就是利用freemarker将其中的模板从中抽出来,于是有了第二代doclet——freemarker

2016-08-21 16:46:44 1871

原创 后台消息推送框架设计

最开始自己公司的后台推送系统只能是用户在线时推送,推送消息也不会保存,若用户离线,那么这条推送消息就再也无法获取。更让人头疼的是:推送的内容和推送系统是耦合在一起的,这样往往在改一处代码的同时,会出现意想不到的bug。着就更加坚定了自己要把推送代码重构的决心了。下面就是自己的整个设计过程和期间遇到的问题,写出来和大家分享一下,望大家多多指教。

2016-08-21 10:57:12 23638 6

原创 利用javadoc定制自己的接口文档(一)

后台开发人员在对外提供接口时也需要提供接口文档,而文档维护是一件成本很高的事情,尤其是自己在公司实习的时候,最初使用的是excel做接口文档,更是被折磨的苦不堪言。这也是自己为什么下定决心设计这个接口文档框架。下面自己将用几篇博客来介绍自己的开发和迭代过程,这其中将设计javadoc,freemarker,和一些设计模式的应用。

2016-08-13 21:32:36 7470 1

原创 java web中的中文编码问题

编码问题一直都困扰着开发人员,尤其是在java中更加明显,因为java是跨平台语音。下面我将会几个常用的编码格式进行一个简单的比较,然后就java web中涉及的边解码和JS中涉及的编解码进行分析

2016-08-09 22:37:30 661

空空如也

空空如也

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

TA关注的人

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