Struts2的学习自我总结】的更多相关文章

Struts2是一个轻量的的开源的框架,可以实现mvc的模式,起初struts和webwork两家公司都存在,后来strus的技术要落后一些,但是使用人群比较广泛,为了避免今后struts被淘汰,struts公司和webwork公司两家合并了,然后有了现在的struts2,struts2和struts有很大的区别. struts2的工作流程是这么去走的.首先,客户端(client)发起一个请求(request)给服务器(server),服务器接受了请求之后首先通过http协议找到所请求的这个项目…
看struts2源代码已有一段时日,从今天開始,就做一个总结吧. 首先,先看看怎么调试struts2源代码吧,主要是下面步骤: 使用Myeclipse创建一个webproject 导入struts2须要的jar包 如图: 让jar包关联源文件 在上图中的jar包右键,选择properties->java source attach,假设关联成功,双击jar包下的某个class文件就会显示java源码了. 双击.class文件,在源码关键地方设置断点 部署project到Tomcat Tomcat…
Struts2框架学习(三) 数据处理 Struts2框架框架使用OGNL语言和值栈技术实现数据的流转处理. 值栈就相当于一个容器,用来存放数据,而OGNL是一种快速查询数据的语言. 值栈:ValueStack一种数据结构,操作数据的方式为:先进后出 OGNL : Object-GraphNavigation Language(对象图形导航语言)将多个对象的关系使用一种树形的结构展现出来,更像一个图形,那么如果需要对树形结构的节点数据进行操作,那么可以使用 对象.属性 的方式进行操作,OGNL技…
Struts2框架学习(二) Action Struts2框架中的Action类是一个单独的javabean对象.不像Struts1中还要去继承HttpServlet,耦合度减小了. 1,流程 拦截器拦截请求,创建代理Action对象,执行方法,返回结果,界面跳转. 拦截器解析请求路径,获取Action的名称,到配置文件中查找action的完整类名,利用反射创建对象. 每请求一次,就创建一个对象,所以action是多例的,也是线程安全的. 2,关系 请求的路径和配置文件的对应关系: 配置文件中包…
Struts2框架学习(一) 1,Struts2框架介绍 Struts2框架是MVC流程框架,适合分层开发.框架应用实现不依赖于Servlet,使用大量的拦截器来处理用户请求,属于无侵入式的设计. 2,Struts2框架的流程原理 1)请求先到达Filter中央控制器 2)然后为Action创建代理类 3)将各个服务存放在拦截器中,执行完拦截器后再去执行action类行action类,action类调用service,再调用dao 4)得到结果字符串,创建result对象 5)转向相应的视图.…
上一个月一直在学习STRUTS2,学习的是尚硅谷佟刚老师的视频,因为很喜欢佟刚老师的声音,而且他讲的很细,笔记做的也多,基本上是照着他的视频完整的敲了一遍代码,下面就把学习到的知识梳理一遍,最后把项目分享一下,有需要的可以下载一下.佟刚老师是新建了很多个工程,而我是把所有的内容放在一个工程中的,所以可能有些乱. 工程的结构: 自己也照着所说的笔记自己敲了一遍.所以不但有代码,还有note.txt文件. 想看的话可以去尚硅谷官网去下载一下相关视频. 尚硅谷视频 下面就说一说我印象深刻的一些东西吧.…
Struts2进阶学习4 自定义拦截器的使用 核心配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.3.dtd"&…
Struts2进阶学习3 OGNL表达式与Struts2的整合 核心配置文件与页面 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN" "http://struts.apache.org/dtds/struts-2.…
Struts2基础学习2 项目结构,测试页面与实体类 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/ht…
[struts2]<package>的配置:https://www.cnblogs.com/ningvsban/p/3734562.html struts2  具体学习资料 :http://www.iteye.com/topic/1124526…
---- Struts2的学习途径 (downpour) http://www.iteye.com/wiki/struts2/1306-struts2-way-of-learning ---- Struts2的学习资料 (downpour) http://www.iteye.com/wiki/struts2/1314-struts2-of-learning-materials ---- Struts2免费学习资料下载 (robbin) http://www.iteye.com/wiki/stru…
Java之struts2框架学习 About Struts2 Struts也是一款MVC框架 , Struts2是Struts的下一代产品,是在Struts1和WebWork的技术基础上进行了合并的全新的Struts2框架 其全新的Struts2的体系结构与Struts1的体系结构差别巨大.Struts2以WebWork为核心 Struts2=Struts1+WebWork,而WebWork的核心就是XWork. XWork提供了很多核心功能:前端拦截机(interceptor),运行时表单属性…
1.Struts2的前身是Opensymphony的Webwork2,实际上Strut和Webwork2合并后形成Struts2.   2.一个HelloWord示例 1)创建Web应用,所需要的Jar包为: 2)配置Struts2     在web.xml文件中配置如下: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns="http://java.sun.com/xml/ns/j…
这是开博的第一篇,我希望每天把我学到的东西记录下来,成为一个知识库,方便以后的学习和分享 在项目中看到用struts2注解来做,很方便,做了一个用户登录的例子 1.加载所需jar包 commons-fileupload-1.2.1 jar commons-io-1.4.jar freemarker-2.3.15.jar ognl-2.7.3 jar struts2-core-2.1.8 jar xwork-core-2.1.6 jar struts2-json-plugin-2.1.8.1 ja…
一.Struts2框架的概述 Struts2是一种基于MVC模式的轻量级Web框架,它自问世以来,就受到了广大Web开发者的关注,并广泛应用于各种企业系统的开发中.目前掌握 Struts2框架几乎成为Wcb开发者的必备技能之一. 接下来将针对 Struts2的特点.安装以及执行流程等内容进行详细的讲解. 1.1 什么是Struts2 在介绍 Struts2之前,先来认识一下 Struts1.Struts1是最早的基于MVC模式的轻量级Web框架,它能够合理的划分代码结构,并包含验证框架.国际化框…
一.Struts2访问Servlet的API 前面已经对 Struts2的流程已经执行完成了,但是如果表单中有参数如何进行接收又或者我们需要向页面保存一些数据,又要如何完成呢?我们可以通过学习 Struts2访问 Servlet的API来实现这样的功能. 在 Struts2中, Action并没有直接和 Servlet api进行耦合,也就是说在 Struts2的 Action中不能直接访问 Servlet api.虽然 Struts2中的 Action访问 Servlet API麻烦一些,但是…
一.Struts2的拦截器 1.1 拦截器概述 拦截器,在AOP( Aspect-Oriented Programming)中用于在某个方法或字段被访问之前,进行拦截然后在之前或之后加入某些操作.拦截是AOP的一种实现策略. 在 Webwork的中文文档的解释为-拦截器是动态拦截 Action调用的对象.它提供了一种机制可以使开发者可以定义在一个 action执行的前后执行的代码,也可以在一个 action执行前阻止其执行.同时也是提供了一种可以提取 action中可重用的部分的方式. 谈到拦截…
今天在家里学习了Struts2中的国际化技术,国际化技术其实我的理解就是同一个网站项目或者同一个网页能够自由切换或者自适应本地语言,并根据本地语言进行网页展示. 实现Struts2中的国际化的方法是: 一.首先在Struts.xml中配置固定的节点. 即添加两个节点:<constant name="struts.custom.i18n.resources" values="XXX"/> <constant name="struts.i18…
day02 下面是在每个Action之前都会执行的拦截器,这段代码来自与struts-default.xml文件. <interceptor-stack name="defaultStack"> <interceptor-ref name="exception"/> <interceptor-ref name="alias"/> <interceptor-ref name="servletCon…
day01 Struts2概述 1 什么是框架 试想一下,人与人之间不同之处多,还是相同之处多呢?当然是相同之处多,不同之处少!人都有头,而且头都在脖子上面! 软件之间也是相同之处多,不同之处少,框架就是把软件中相同的部分抽取出来而形成的.开发人员在框架的基础之上进行开发,那么只需要给出软件独有部分即可. 软件相同之处称之为应用组件,不同之处称之为业务组件.框架就是已经完成了应用组件这部分的半成品软件. 应用框架应该具有如下特征: 1)       已经知道它们在其它程序上工作的很好:(经过良好…
一.OGNL常用符号(接上一篇文章): 1.#号 1)<s:property value="#request.username"/> 作用于struts2的域对象,而不是普通域对象 2)<s:property value="#user.username"/>作用于JavaBean对象 3)<s:property value="#username"/>作用于普通字符串,如果value只是一个字符串的话,不是Jav…
一.知识点学习 1.struts2中包含以下6种对象,requestMap,sessionMap,applicationMap,paramtersMap,attr,valueStack; 1)requestMap用来存放包含当前HttpServletRequest的属性(attribute)的Map,简单来说就是request域中的值; 2)sessionMap用来存放包含当前HttpSession的属性(attribute)的Map 3)applicationMap用来存放包含当前应用的Ser…
一.拦截器,拦截器栈 1.拦截器的作用 拦截器本质上和servlet的过滤器是一样的.在struts2中,拦截器能够对Action前后进行拦截,拦截器是一个可插拨的,你可以选择使用拦截器,也可以卸载拦截器. 2.拦截器执行顺序 在struts.xml文件中,<intercepto-ref/>中先引用的先执行,后引用的后执行.如果某个拦截器出错或不允许通过,那么下一个拦截器是不允许执行的. 需要拦截哪个Action,就在哪个Action对应的<action>标签中配置即可. 在部署w…
拦截器 一:1:概念:Interceptor拦截器类似于我们学习过的过滤器,是可以再action执行前后执行的代码.是web开发时,常用的技术.比如,权限控制,日志记录. 2:多个拦截器Interceptor连在一起组成了Interceptor栈.拦截器是AOP面向切面编程的一种实现,具有热插拔的效应. 3:Struts2拦截器,每个拦截器类只有一个对象实例,即采用了单利模式.所有引用这个拦截器的action都共享着一拦截器类的实例. 拦截器和过滤器的区别 1:拦截器和过滤器的概念非常类似 2:…
本章要点 —  Struts 1框架的基本知识 — 使用Struts 1框架开发Web应用 —  WebWork框架的基本知识 — 使用WebWork框架开发Web应用 — 在Eclipse中整合Tomcat — 使用Eclipse开发Web应用 — 为Web应用增加Struts 2支持 —  Struts 2框架的MVC组件 —  Struts 2框架的流程 — 通过web.xml文件加载Struts 2框架 — 通过struts.properties文件配置Struts 2属性 —  str…
本章要点 —  Struts 2的下载和安装 — 纯手工创建一个Web应用 — 纯手工创建一个Struts 2应用 — 实现Struts 2的Action — 配置Struts 2的Action — 在Action中访问HttpSession — 在JSP中输出Action的返回值 — 使用Struts 2的表单标签 — 程序国际化初步 — 数据校验初步 前面已经简要介绍了Struts 2的起源,以及Struts 2的两个前身:Struts 1和WebWork,并详细对比了Struts 2和St…
一. 取得session 3种方法1.context.getSession() -->>Map对象 2.HttpServletRequest request =(HttpServletRequest)ctx.get(ServletActionContext.HTTP_REQUEST);  再通过request 对象取得HttpSession 3.实现SessionAware接口,让strtus自动注入session实例给我们.  二. 1.创建新项目,基本和Struts的学习-属性驱动和模型驱…
常见问题及注意事项: 1.下载struts2时,要看清所下载的版本,不同版本web.xml配置路径不同! 2. 导入jar包时,导入的包要完全准确,缺少或过多的会导致缺失或冲突! 3. RegisterAction-validation.xml 客户端校验无效,暂未解决. 1. 下载struts2软件包 下载地址:http://struts.apache.org/download.cgi#struts25132. 在web工程中导入struts包中的jar文件 2.1 将下载好的struts包下…
1) -->下载开发包,网址:http://struts.apache.org/download.cgi 本文使用的是struts-2.5.2-all开发包 2) -->导入jar包,具体的jar包可以从以下方法获得: 解压打开开发包,在apps文件夹,解压struts2-rest-showcase.war包(在libs下找到jar包)导入相关jar包: 3) -->配置web.xml文件,最新版本: <filter> <filter-name>struts2&l…
Interceptor的设计思想,其实是Spring里面的AOP思想,尽管Struts2又有自己的Interceptor但是,在实际开发中,用的较少,SSH整合之后你可以采用AOP事务处理进行拦截,更方便 ---------------------------------华丽的分割线--------------------------------------- 从一个简单的DEMO入手,正常情况下,客户端可以直接访问我的Action,但是我不想让他们访问,就在Struts2和Action之间架设…