`
mengqingyu
  • 浏览: 328556 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论
文章列表
由于struts2、hibernate通过默认配置文件不支持通配符配置,所以下面介绍一下servlet基于spring通配符读取器读取xml的扩展功能。 <!-- 自定义配置文件包路径,可配置多个不同的参数和路径 --> <context-param> <param-name>projectPackageName</param-name> <param-value>com/test/web/*/</param-value> </context-param> public class Applicat ...
        工作中经常用到各种导出WORD、EXCEL、PPT所以做出了通用半自动化的功能,由实施人员去实施这些,可以不写代码实现所需业务的导出,下面简单介绍一下设计思路poi+freemarker+jacob+xml。         导出word设计思路:将wo ...
工作中遇到了抓取多个项目数据并且有多种验证方式包括Http标准验证和非标准验证NTLM、BASIC,写了个较通用的抓数框架,支持多线程,用到的开源框架有HttpClient 4.23、Jsoup、JSONObject、Spring3.0,注意HttpClient版本不同版本API不同。 设计思路:基于bean+spring配置文件方式,配置多个项目属性,实现项目自动登录,实现通用接口或抽象类,自定义解析类,最后通过url传参,反射实例化对象,实现方法的通用。 <?xml version="1.0" encoding="UTF-8"?> &l ...
一.Tomcat容器层级结构 分为四个等级,由四个子容器组成,Container容器:Engine->Host->Servlet容器->多个Context->多个Wrapper。真正管理Servlet的容器是Context容器,一个Context对应一个Web工程,Context直接管理Servlet在容器中的包装类Wrapper。 二.Servlet容器的启动过程 添加一个Web应用时将会创建一个StandardContext容器,并且给这个Context容器设置必要的参数,如url和path,最后将这个Context容器加到父容器Host中。接下来将会调用To ...
一.Javac 1.Javac编译器的作用 将符合Java语言规范的源代码转化成符合Java虚拟机规范的Java字节码。 2.编译器主要的几个处理阶段 词法分析、语法分析、语义分析和代码生成,基于访问者模式来遍历语法树的过程。 二.ClassLoader 将Class加载到JVM中,审查每个类应该由谁加载,将Class字节码重新解析成JVM统一要求的对象格式。 1.ClassLoader等级加载机制 (1)Bootstrap ClassLoader,主要加载JVM自身工作需要的类,这个ClassLoader完全是JVM自己控制的,没有更高一级的父加载器,也没有 ...
工作中用到日志功能,参考网上一些资料,写了个比较通用的日志框架,现在拿出来分享,内容没有做太多解释,如有不清楚的地方可以给我留言或是通过网上查资料来解决。 设计思路:通过AOP进入方法之前拦截做行为日志记录,方法抛异常拦截做错误日志记录。实现自定义注解,可以存入行为中文注释,也可以配置成完全根据注解来决定是否记录日志的策略,支持控制台、文件、数据库、邮件和异步处理等功能以及针对数据库可以添加行为统计、异常统计和钻取明细等等。 web.xml文件配置如下: <!-- 日志 --> <context-param> <param-name>log4jConfig ...
在公司做培训时用到,顺便在这里做个总结。 1.生产者消费者模式         某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。在生产者与消费者之间在加个缓冲区,我们形象的称之为仓库,生产者负责往仓库了进商品,而消费者负责从仓库里拿商品,这就构成了生产者消费者模式。 /** * * 类功能描述:数据对象 * * @author <a href="mailto:qingyu.meng21@gmail.com">mengqin ...
//懒汉 class LazySingleton{ private static LazySingleton singleton; private LazySingleton(){ } public static LazySingleton getInstance(){ synchronized(this){ if(singleton==null){ singleton=new LazySingleton(); } return singleton; } } } //恶汉 clas ...
一.应用服务器负载均衡 1.链路负载均衡 通过DNS解析域名时,将客户端的访问解析成不同的IP,分配到不同的入口,同时尽可能保证所访问的入口是所有入口中可能较快的一个。 2.软件负载均衡 访问时生成页面的任务会被分配给其中一台服务器完成,这个过程要保证公正、公平、平均。 3.硬件负载均衡 二.页面优化 1.减少请求次数 通过合并CSS和Javascript文件来减少请求次数或是将资源文件分布在多个域名下来绕过浏览器并发加载的限制。 2.压缩CSS和Javascript代码。 通过对文件代码内容删除换行和空格来减少代码存储空间。 3.优化图片 通过对图片进行截取和缩放大小来 ...
动态生成,编译,运行java文件,jdk动态代理底层实现就是利用此方法,demo已上传。 package com.code.test; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.net.MalformedURLException; im ...
quartz配置文件中可以通过以下两种配置读取方式 org.quartz.jobStore.class = org.quartz.simpl.RAMJobStore(从内存中读取定时任务) org.quartz.jobStore.class = org.quartz.impl.jdbcjobstore.JobStoreTX(从数据库中读取定时任务) 以JobStoreTX为例,它最核心的组成部分是Scheduler、Trigger、JobDetail,然后给Scheduler配置个线程QuartzSchedulerThread,此线程在服务器启动时初始化Scheduler时启动,等待Sched ...
表单设计器设计思路 1.页面布局 分为3个部分(设计器图片已上传) (1)组件,用来画表单的基础工具,可以用Ext的tree实现。 (2)设计区域,就是一个配上背景图片的div。 (3)右侧属性栏,每个组件都有自己的属性配置,可以用Ext的PropertyGrid来实现。 2.组件拖拽到设计区 可以通过ext自带的拖拽功能很容易实现。设定拖拽源为tree,拖拽目标位设计区div,代码如下: dropTarget = new Ext.dd.DropTarget(Ext.getDom('pageId'), { ddGroup: 'DDGroup', n ...

[置顶] js闭包

最近在做前台表单合计功能时,用到了动态绑定标签响应事件,遇到了闭包的问题,下面阐述一下我对闭包的理解和遇到的问题,如有不对请多多指教。 闭包是内部函数使用了函数外部的局部变量,当执行完外部代码之后,本来它的作用域已经结束,但它的变量并没有被销毁,因为它的内部函数正在使用它,它并不是使用该变量创建时的值,相反,它使用外部函数中该变量最后的值。 官方的解释是:闭包是一个拥有许多变量和绑定了这些变量的环境的表达式(通常是一个函数),因而这些变量也是该表达式的一部分。 //示例代码 var array = []; for(var i=0;i<4;i++) { var obj = ...
利用断点走了一遍spring-security源码的核心部分,下面根据自己的理解对源码做了一些解释,过滤器开头的标号是运行时默认配置调用的顺序,理解了原理,我们可以通过继承和实现接口的方式扩展过滤器,权限验证器,数据查询器,投票器等等...... 1.SecurityContextPersistenceFilter        从HttpSession中获取SecurityContext上下文 2.logoutFilter                            如果访问地址为/j_spring_security_logout,LogoutFilter将注销用户 3.Ab ...
最近对spring-security3做了一些初步了解,搜集了一些配置资料,整理如下: 1、在spring-security官网下载最新jar然后拷贝jar到项目的lib下。 2、然后在web.xml中添加配置,内容如下: <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class> org.springframework.web.filter.DelegatingFilterProxy </filter-class& ...
Global site tag (gtag.js) - Google Analytics