分类: Java

22 篇文章

JVM学习笔记二——垃圾收集算法
垃圾收集器在对堆进行回收前,第一件事情就是要确定这些对象有哪些还“存活”着,哪些已经“死去”(即不可能再被任何途径使用的对象)。 一:对象存活判断算法: 1、引用计数算法: 给对象中添加一个引用计数器,每当有一个地方引用它时,计数器值就加1; 当引用失效时,计数器值就减1;任何时刻计数器都为0的对象就是不可能再被使用的。优点: 实现简单,判定效率高…
JVM学习笔记一——内存区域
JVM是java知识体系的基石之一,任何一个java程序的运行,都要借助于他。或许对于我这种初级程序员而言,工作中很少有必要刻意去关注JVM,然而如果能对这块知识有所了解,就能够更清晰的明白程序的运行机制,从而写出更为健壮的代码,也能更好的理解java中很多处理方式的原因。周志明的深入理解Java虚拟机刚出版的时候就买了,可是一直没有看,中间偶尔抽…
java导出Excel(动态列)
java导出excel的文章网上搜索有许多,一般有两种,poi和jxl方式,但是一般导出的都是列固定的,对应的都是javabean中的一个属性,偶尔有做动态列的,也是伪动态,比如这个bean有20个字段,web端有个页面,显示出所有的20个属性,然后根据你选择了哪些属性导出,最多不能超过这20个属性,所以我说这种是伪动态的。最近遇到了一个导出要求,…
tomcat启动不生成日志
在服务器上更新项目的时候发现tomcat在启动或出现严重错误时,tomcat里的logs目录下并没有生成日志;因为tomcat版本是免安装版的,是以前同事部署的,开始以为是更换了存放日志的文件夹,查了一下,发现没有更改,日志文件夹是默认的,这就奇怪了。         经过数小时的排查最后找出问题所在,问题是在tomcat下的bin目录下的cata…
(转)你应该更新的Java知识之常用程序库
这些库有的解决了平时常见又重要的问题,有的则让Coding变得更惬意,值得全速跟进了解! 原文 在很多人眼中,Java已经是一门垂垂老矣的语言,但并不妨碍Java世界依然在前进。如果你曾离开Java,云游于其它世界,或是每日只在遗留代码中挣扎,或许是时候抬起头,看看老Java中的新东西。 Guava 一句话,只要你做Java项目,就应该用Guava…
jeecms自定义标签
最近在研究jeecms,虽然已经有很多标签了,但是由于需要,需要增加新的标签。 比如增加一个标签,可以根据会员组id查出该组下所有的会员。 其中CmsUser  CmsUserDao 及CmsUserMng原系统已有,查询会员方法也有,因此只需编写一个FreeMarker标签类就行了。此标签类需要实现TemplateDirectiveModel接口…
Eclipse下使用maven构建springmvc项目所遇问题小结
按照网上的教程搭建过程中主要遇到两个问题: 1:eclipse (mvndemo) 创建 maven 项目 添加src/main/java出问题 看教程在添加src/main/java、src/test/java 这两个souce folder的时候 显示 The folder is already a source folder. 无法添加 但是…
解决servlet调用spring中bean的问题
前段时间开发了一个web小系统,主要是和.net客户端交互,由于不是很复杂,就没有采用webservice,而是使用了HttpCLient通过json方式交互,在交互的时候想在servlet中直接调用spring的bean,这样能节省不少时间。但是直接调用总是报错,网上查了一下才知道,servlet是无法直接调用spring中的bean的,如果直接…
Spring集成Quartz配置动态任务
在开发的项目中有一个需求,需要灵活配置调度任务时间,并能自由启动或停止调度。 马上想到了在另外一个项目中用到的Quartz这个开源调度组件它提供了强大的任务调度机制,允许开发人员灵活的定义触发器的调度时间,并可对触发器和任务进行关联映射。此外,Quartz提供了调度运行环境的持久化机制,可以保存并恢复调度现场,即使系统因故障关闭,任务调度现场数据并…
在指定时间范围内随机生成一个时间
今天由于要模拟数据,要在指定时间范围内随机生成一个时间,比如指定日期范围在8月1日到31日,时间在早上8点到下午18点。 主要是用到Calendar类,不是很复杂,但是有个注意的地方,代码如下: public static Date generateTimeByLimits(Date start, Date end,int startH,int e…