Struts2使用通配符加载配置文件和通配符方法的底层实现学习
摘要:Struts2中,可以在struts2的配置文件中,使用include的节点,来加载配置文件。例如: 1 <!DOCTYPE struts PUBLIC 2 "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" 3 "http://struts.apache.org/dtds/struts-2.0.dtd"> 4 <struts> 5 <include file="Home.xml"/> 6 <include fil
阅读全文
posted @
2013-03-31 15:22
Coldest Winter
阅读(1267)
推荐(0)
Struts2使用通配符完成方法和action的调用
摘要:官网对struts2通配符使用的介绍:Wildcard Mappings<actionname="*_*"class="com.netshuai.action.{1}Action"method="{2}"><resultname="success">/{2}_{1}Success.jsp</result></action>如上所示,所有文件都采用统一的命名规范,第一个*为分类名称,第二个*为操作名,{1}和{2}分别代表第一个和第二个*的替换值,所有action实现类
阅读全文
posted @
2013-03-31 09:04
Coldest Winter
阅读(424)
推荐(0)
Struts2中properties文件参数定义在XML中通过Constant节点定义的原理
摘要:在Struts2中提供了两种类型的框架级配置文件,XML格式和.properties,其中系统提供的dafault.properties文件是struts2默认的框架级参数配置,struts.properties是struts2默认的应用级的参数配置,包含所有的应用级的参数对框架级的参数的覆盖,XML中配置properties文件的格式如下: <constant name="struts.devMode" value="false" /> 本文将从内部的实现原理,来告诉读者,Struts2是如何实现将struts2的XML文件的constan
阅读全文
posted @
2013-03-25 22:05
Coldest Winter
阅读(497)
推荐(0)
Struts 2框架结构图
摘要:网址:http://struts.apache.org/development/2.x/docs/the-struts-2-request-flow.html 核心控制器FilterDispatcher是Struts 2框架的基础,包含了框架内部的控制流程和处理机制。业务控制器Action和业务逻辑组件是需要用户来自己实现的。用户在开发Action和业务逻辑组件的同时,还需要编写相关的配置文件,供核心控制器FilterDispatcher来使用。 Struts 2的工作流程相对于Struts 1要简单,与WebWork框架基本相同,所以说Struts 2是WebWork的升级版本。St...
阅读全文
posted @
2013-02-28 07:51
Coldest Winter
阅读(635)
推荐(0)
Struts2中拦截器实现AOP的原理分析
摘要:在Struts2中,使用了拦截器来实现AOP(面向切面编程)的功能,下面来模拟实现该功能:基于 Struts 2 拦截器实现细粒度的基于角色的存取控制:http://www.ibm.com/developerworks/cn/java/j-lo-struts2-rbac/图片网址:http://blog.csdn.net/yezi77321660/article/details/3960779接口类:Aops.javapackage com.testaop;import com.testaop.imp.TestAop;public interface Aops { public ...
阅读全文
posted @
2013-02-28 07:47
Coldest Winter
阅读(519)
推荐(0)
Struts2源码学习-DefaultConfiguration的RuntimeConfigurationImpl方法(运行期改造)
摘要:DefaultConfiguration的RuntimeConfigurationImpl方法是对所有的packageConfig进行namespace的重新分类,这样做的目的在于当Xwork框架响应Http请求时,可以根据namepace进行URL匹配。下面介绍这个方法的,它也用到了递归方法 这个方法主要是将程序配置中的数据结构创建成一个内部的运行中的配置文件,Xwork可以在其中查找一个action,他将数据结构扁平化处理,使数据更加容易的访问,他接受一个ActionConfig,将它的包和包的父包(EXTENDS关键字指定的包)的公共对象找到,例如:如果一个action包含了一...
阅读全文
posted @
2013-02-03 08:22
Coldest Winter
阅读(447)
推荐(0)
Struts源码学习-XmlConfigurationProvider的loadPackages()方法递归调用
摘要:最近在学习Struts2,在阅读源码的过程中,学习到了一些比较金典的算法逻辑,现在分享一个递归算法的使用:个人感觉这个算法非常的精妙,见识了递归算法使用的高明之处,现在将源码粘贴出来:1、类:XmlConfigurationProvider的loadPackages方法,该方法主要是将配置文件(XML)文件中的package节点的配置信息读取出来: 1 public void loadPackages() throws ConfigurationException { 2 List<Element> reloads = new ArrayList<Element>...
阅读全文
posted @
2013-02-01 22:48
Coldest Winter
阅读(550)
推荐(0)
Struts2源码学习网址:
摘要:http://blog.csdn.net/java2000_wl/article/details/7572828http://downpour.iteye.com/category/54022http://www.cnblogs.com/yangjin-55/archive/2012/05/16/2786550.htmlhttp://rubbing-struts2.iteye.com/blog/1582443http://www.doc88.com/p-317622531483.htmlhttp://struts.apache.org/2.3.8/docs/testing-actions.ht
阅读全文
posted @
2013-01-06 06:49
Coldest Winter
阅读(135)
推荐(0)
使用SVN检出Struts Spring Hibernate源码(转)
摘要:网址:http://zhaohe162.blog.163.com/blog/static/382167972011117022439/使用SVN检出Struts Spring Hibernate源码2011-12-07 12:02:02|分类:SVN|标签:springstrutshibernatesvntomcat|字号订阅Spring Spring源码是由springframework.org维护管理的,spring-framework 是spring 3.0以上版本spring-maintenance 是spring 3.0以下版本spring-security是原Acegi演变出的sp
阅读全文
posted @
2012-12-27 22:42
Coldest Winter
阅读(405)
推荐(0)
JAVA中调用存储过程和函数
摘要:参考网址:http://www.exampledepot.com/egs/java.sql/CallProcedure.htmlCalling a Stored Procedure in a DatabaseThis example demonstrates how to call stored procedures with IN, OUT, and IN/OUT parameters.COPYCallableStatement cs;try { // Call a procedure with no parameters cs = connection.prepareCall("
阅读全文
posted @
2012-04-15 14:31
Coldest Winter
阅读(431)
推荐(0)
接口的匿名实现
摘要:匿名类是不能有名称的类,所以没办法引用它们。必须在创建时,作为new语句的一部分来声明它们。 这就要采用另一种形式的new语句,如下所示: new <类或接口> <类的主体> 这种形式的new语句声明一个新的匿名类,它对一个给定的类进行扩展,或者实现一个给定的接口。它还创建那个类的一个新实例,并把它作为语句的结果而返回。要扩展的类和要实现的接口是new语句的操作数,后跟匿名类的主体。 如果匿名类对另一个类进行扩展,它的主体可以访问类的成员、覆盖它的方法等等,这和其他任何标准的类都是一样的。如果匿名类实现了一个接口,它的主体必须实现接口的方法。如下所示的例子:接口:1 p
阅读全文
posted @
2012-03-11 20:09
Coldest Winter
阅读(1081)
推荐(0)
Struts2 Design pattern - Builder pattern
摘要:以下是本文的参考网址:http://www.javacamp.org/designPattern/http://coolxing.iteye.com/blog/1446760http://luchar.iteye.com/blog/179619构造模式是一种对象的创建方式,它可以将一个复杂对象的内部构造特征与内部的构建过程完全分开,构造模式的种类很多,(有多种实现方式,每个实现方式不同,但是原理是相同的)可以总结出,构造模式主要设计四个角色:1、客户端角色(Client):调用具体的构造器,完成对象的构建,注意,这个角色只负责构造器的创建和选择,对于产品的具体信息不知晓。2、抽象构造器角色(B
阅读全文
posted @
2012-03-11 07:52
Coldest Winter
阅读(374)
推荐(0)
Struts2 Design pattern - ThreadLocal pattern
摘要:ThreadLocal模式是为了解决多线程程序中,数据共享的问题,ThreadLocal模式贯穿了整个Struts2和Xwork框架。
阅读全文
posted @
2012-03-10 20:44
Coldest Winter
阅读(130)
推荐(0)
Java Thread And Runnable
摘要:进程:它是程序的一次动态执行过程,它需要经历从代码加载,到代码执行,到执行完毕的一个完整过程,这个过程也是进程从产生、发展到最终消亡的过程。线程:线程是比进程更小的执行单位,它是在进程的基础上进一步划分,所谓多线程,是指一个进程在执行的过程可以产生多个更小的程序单元,这些更小的单元-称为线程。这些线程可以同时存在,同时运行,一个进程可能产生多个同时执行的线程。----------java中进程的实现:1、继承Thread类实现多线程: 1 package com.dyj.test; 2 3 public class TestThread extends Thread { 4 5 p...
阅读全文
posted @
2012-03-10 19:59
Coldest Winter
阅读(554)
推荐(0)
Oracle Lock and Hibernage Lock
摘要:http://orafaq.com/node/854ORACLE锁: Oracle uses locks to control concurrent access to data. A lock gives you temporary ownership of a database resource such as a table or row of data. Thus, data cannot be changed by other users until you finish with it. You need never explicitly lock a resource becau
阅读全文
posted @
2012-03-10 12:06
Coldest Winter
阅读(300)
推荐(0)
Reflect in Java
摘要:java反射的使用: 1 package com.test.struts2; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.Field; 5 import java.lang.reflect.Method; 6 7 import com.opensymphony.module.sitemesh.util.ClassLoaderUtil; 8 9 public class TestReflect { 10 11 private String userName; 12 1...
阅读全文
posted @
2012-03-06 20:26
Coldest Winter
阅读(276)
推荐(0)
本文为转载-------Web常使用的功能经验笔记第1季 -转载自刘岩
摘要:Web常使用的功能经验笔记第1季刘岩Email:suhuanzheng7784877@163.com前言Apache的Struts2已经是很流行的MVC Web框架了,很多Web开发人员都是使用它做为Web框架。它是在 struts 和WebWork的技术基础上进行了合并,全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为WebWork的更新产品。因为Struts 2和S
阅读全文
posted @
2011-05-17 11:26
Coldest Winter
阅读(476)
推荐(0)