- 浏览: 78580 次
最新评论
-
letmedown:
使用AOP是不是比这个更简单一些呢?
Java项目如何记录日志
文章列表
Interceptor(以下译为拦截器)是Struts 2的一个强有力的工具,有许多功能(feature)都是构建于它之上,如国际化、转换器,校验等。
什么是拦截器
拦截器,在AOP(Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作。拦截是AOP的一种实现策略。
在Webwork的中文文档的解释为——拦截器是动态拦截Action调用的对象。它提供了一种机制可以使开发者可以定义在一个action执行的前后执行的代码,也可以在一个action执行前阻止其执行。同时也是提供了一种可以提取action中可重用的部分的方 ...
struts2核心工作流程与原理
- 博客分类:
- Struts
1. Struts2架构图 这是Struts2官方站点提供的Struts 2 的整体结构。 2. Struts2部分类介绍 这部分从Struts2参考文档中翻译就可以了。 ActionMapper ActionMapper其实是HttpServletRequest和Action调用请求的一个映射,它屏蔽了Action对于Request等 java Servlet类的依赖。Struts2中它的默认实现类是DefaultActionMapper,ActionMapper很大的用处可以根据自己的需要来设计url格式,它自己也有Restful的实现,具体可以参考文档的docs\ac ...
概要说明
FilterDispatcher是早期struts2的过滤器,后期的都用StrutsPrepareAndExecuteFilter了,如 2.1.6、2.1.8。StrutsPrepareAndExecuteFilter名字已经很能说明问题了,prepare与execute,前者表示准备,可以说是指filter中的init方法,即配制的导入;后者表示进行过滤,指doFilter方法,即将request请求,转发给对应的 action去处理。FilterDispatcher是struts2.0.x到2.1.2版本的核心过滤器.!
StrutsPrepareAndExe ...
struts1与struts2的区别。
- 博客分类:
- Struts
1.都是MVC的WEB框架,
2 struts1的老牌框架,应用很广泛,有很好的群众基础,使用它开发风险很小,成本更低!struts2虽然基于这个框架,但是应用群众并多,相对不成熟,未知的风险和变化很多,开发人员相对不好招,使用它开发项目的风险系数更大,用人成本更高!
3.struts2毕竟是站在前辈的基础设计出来,它会改善和完善struts1中的一些缺陷,struts1中一些悬而未决问题在
Struts的ActionServlet模拟实现
Struts中,ActionServlet作为总控Servlet接受请求并转发到各Action,它的原理并不复杂,本文即展示了ActionServlet模拟实现过程。首先,在Web.xml中配置,让所有url带.go(struts用的do我用go,特意区分一下)的请求都让DispatchServlet处理,DispatchServlet就是ActionServlet模拟实现类.
<?xml version="1.0" encoding="UTF-8"?><web-app versi ...
ActionServlet
- 博客分类:
- Struts
ActionServlet继承自javax.servlet.http.HttpServlet类,其在Struts framework中扮演的角色是中心控制器。它提供一个中心位置来处理全部的终端请求。控制器ActionServlet主要负责将HTTP的客户请求信息组装后,根据配置文件的指定描述,转发到适当的处理器。按照Servelt的标准,所有得Servlet必须在web配置文件(web.xml)声明。同样,ActoinServlet必须在Web Application配置文件(web.xml)中描述,有关配置信息如下。<servlet><servlet-name>ac ...
控制反转(IoC)与依赖注入(DI)
- 博客分类:
- Spring
1.控制反转(Inversion of Control)与依赖注入(Dependency Injection)
控制反转即IoC (Inversion of Control),它把传统上由程序代码直接操控的对象的调用权交给容器,通过容器来实现对象组件的装配和管理。所谓的“控制反转”概念就是对组件对象控制权的转移,从程序代码本身转移到了外部容器。
IoC是一个很大的概念,可以用不同的方式来实现。其主要实现方式有两种:<1>依赖查找(Dependency Lookup):容器提供回调接口和上下文环境给组件。EJB和Apache Avalon都使用这种方式。<2>依赖注入 ...
input只能输入 数字 浮点
- 博客分类:
- js
小数点“.” 在keydown中为190 在keypress中为46
$("#testInput").live("click", this, function () {/*控制光标在最后*/ var curVal = $(this).val(); var ran = this.createTextRange(); ran.moveStart('character', curVal.length); ran.collapse(true); ran.select(); }).live("keydown", thi ...
Web SQL数据库
- 博客分类:
- js
简介
Web SQL数据库API实际上未包含在HTML 5规范之中,它是一个独立的规范,它引入了一套使用SQL操作客户端数据库的API。这些 SQL 语句可以直接在 js中编写运行,并且带有基本的数据库事务性的支持。
兼容浏览器
chrome 17+ Safari5+ opera11.6+ iOS Safari3.2+ Opera Mobile11.0+ Android Browser2.1+
接口
var db = openDatabase('mydb', '1.0
明星软件工程师的10种特质
- 博客分类:
- 饭后茶余
代码质量不仅成为了一个必需品,更成为了一个竞争优势。因为众多公司围绕软件而竞争,开发软件的人——软件工程师正显得越发重要。但是,你该如何发现那种百里挑一的程序员呢?在本文中,我们简明扼要地列出了明星 ...
浅析 Java Thread.join()
- 博客分类:
- Thread
一、在研究join的用法之前,先明确两件事情。
1.join方法定义在Thread类中,则调用者必须是一个线程,
例如:
Thread t = new CustomThread();//这里一般是自定义的线程类
t.start();//线程起动
t.join();//此处会抛出InterruptedException异常
2.上面的两行代码也是在一个线程里面执行的。
以上出现了两个线程,一个是我们自定义的线程类,我们实现了run方法,做一些我们需要的工作;另外一个线程,生成我们自定义线程类的对象,然后执行
customThread.start();
custom ...
Java Thread join() 的用法
- 博客分类:
- Thread
Java Thread中, join() 方法主要是让调用改方法的thread完成run方法里面的东西后, 在执行join()方法后面的代码。示例:
Java代码
class ThreadTesterA implements Runnable {
其实这主要是想说下Jquery Mobile跳转的ajax和非ajax方式的设置,如果是ajax的跳转方式,直接<a href ="#">就可以了,如下:
[html] view plaincopy
<a
Javadoc转换chm帮助文档的四种方法总结
- 博客分类:
- java
Javadoc转换chm帮助文档的四种方法总结
Googel 标签: Javadoc chm 转换 ;Javadoc ;chm ;转换 ;jd2chm ;
linux 下tomcat开机自启动
- 博客分类:
- linux
方法一:
linux 下tomcat开机自启动修改Tomcat/bin/startup.sh 为:export JAVA_HOME=/usr/java/j2sdk1.4.2_08export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar:.export PATH=$PATH:$JAVA_HOME/binexport CATALINA_HOME=/usr/local/tomcat/usr/local/tomcat/bin/catalina.sh start
在/etc/rc.d/rc.local中加入: ...