开发者不必在Spring中去注册action,尽管可以这么去做,通常Struts框架会自动地从action mapping中创建action对象 struts2-spring-plugin-x-x-x.jar插件中有一个struts-plugin.xml文件,该文件内容如下所示: <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN" "http:…
6. 问题六: 在JSP中获取值栈的数据 * 总结几个小问题: > 访问root中数据 不需要# > 访问context其它对象数据 加 # > 如果向root中存入对象的话,优先使用push方法. > 如果向root中存入集合的话,优先要使用set方法. * 在OgnlContext中获取数据 > 在Action中向域对象中存入值 > request:<s:property value="#request.username"/> >…
在struts1.xAction类的execute方法中,有四个参数,其中两个就是response和request.而在Struts2中,并没有任何参数,因此,就不能简单地从execute方法获得HttpServletResponse或HttpServletRequest对象了. 但在Struts2 Action类中仍然有很多方法可以获得这些对象.下面就列出四种获得这些对象的方法. [方法1]使用Struts2 Aware拦截器       这种方法需要Action类实现相应的拦截器接口.如我们…
5. 问题五: 向值栈保存数据 (主要针对root栈) > valueStack.push(Object obj); * push方法的底层调用root对象的push方法(把元素添加到0位置) > valueStack.set(String key, Object obj);set往里面存储map集合 * 源码获取map集合(map有可能是已经存在的,有可能是新创建的),把map集合push到栈顶,再把数据存入到map集合中. > 在jsp中 通过 <s:debug /> 查…
转载请把头部出处链接和尾部二维码一起转载,本文出自逆流的鱼yuiop:http://blog.csdn.net/hejjunlin/article/details/53386117 我最近正在参加CSDN 2016年度博客之星评选,来来来,开车咯,赶紧帮投票吧! 时间:11月28日到12月18日每天都可以为我投一票 投票地址:http://blog.csdn.net/vote/candidate.html?username=hejjunlin 上一章介绍MediaCodec的说明及状态图,从今天…
1,错误: java.lang.NullPointerException: Module 'null' not found.错误原因,struts运行需要的.jar文件拷贝不足,应该把它们加入到classpath中. 2,连接oracle出错,no suitable driver 错误原因不在于驱动有误,而是由于url写错了, jdbc:oracle:thin:@127.0.0.1:1521:mydatabase 写成了:jdbc:oracle.thin:@127.0.0.1:1521:myda…
虽然目前Struts MVC框架不怎么用了,但它确是个能帮助大家很好地入门Web MVC框架,而且,一些历史项目可能还用Struts,反正技多不压身,大家如果能在面试中通过项目证明自己Struts这块也很熟,这也是个非常好的加分项. 这里我们就从搭建Struts基本框架入手,再深入讲解些面试中常会靠到的Struts知识点,本文的文字和案例根据java web轻量级开发面试教程改编. /////////////////////////////////////////////////////////…
此系列博文基于同一个项目已上传至github 传送门 JavaWeb_(Struts2框架)Struts创建Action的三种方式 传送门 JavaWeb_(Struts2框架)struts.xml核心配置.动态方法调用.结果集的处理 传送门 JavaWeb_(Struts2框架)Log4j的配置以及解决中文乱码 传送门 JavaWeb_(Struts2框架)参数传递之接收参数与传递参数 传送门 JavaWeb_(Struts2框架)Ognl小案例查询帖子 传送门 JavaWeb_(Struts…
action接收请求参数 在web开发中,去接收请求参数来获得表单信息非常的常见,自己也总结整理了有关Struts2通过action接收请求参数的几种方法. Struts2 提供三种数据封装的方式: (1)  Action 本身作为model对象,通过成员setter封装 (2)  创建独立model对象,页面通过ognl表达式封装 (3)   使用ModelDriven接口,对请求数据进行封装(推荐) 下面我们来讲解第一种:  (1)   Action类本身作为model对象通过成员的sett…
在jsp页面中获取action中的值: 1.写一个action类OgnlAction类: 需要注意的地方: 如果在aciton中直接使用ognl表达式,将值存储的值栈中,是不能通过跳转将值传到jsp页面中的.因为result标签的默认跳转方式为请求转发方式,所以这里我们将值存储到并行域中. import javax.servlet.http.HttpServletRequest; import org.apache.struts2.ServletActionContext; import com…
Struts的核心业务 Struts核心业务有很多,这里主要介绍了比较简单一些的: 请求数据的处理,和数据自动封装,类型自动转换 1.Struts中数据处理 1.1.方式1:直接过去servletapi 核心类:ServletActionContext提供的静态方法 /** * * 数据处理方式1: */ public class dataAction extends ActionSupport{ public String execute() throws Exception { //1.请求…
前言:本篇文章是本人这周学习的一个小结,在自我总结的同时,希望也能够给其他同学带来一点帮助.本文主要知识是参照书本上的知识点以及网上其他博客文章,在上机操练后的所得,具体源码主要来自http://blog.csdn.net/lovesummerforever/article/details/17348871. 本文主要包括以下三点:MVC设计模式基本概念.Struts工作原理.使用Struts框架实现用户登陆具体实例操作. 一.        MVC设计模式 在了解MVC模式之前,先要弄清楚什么…
ActionError类从不独立进行错误处理,它们总是被存储在ActionErrors对象中.ActionErrors对象保存ActionError类的集合以及它们特定的属性值,我们可以使用自己定义的属性值,或是使用ActionErrors.GLOBAL_ERROR. 下面是典型Action类的perform()中错误处理情况: MyForm form = (MyForm) form; if (number == -1) { ActionErrors errors = new ActionErr…
Struts框架 struts框架具有组件的模块化,灵活性和重用性的优点,同时简化了基于MVC的web应用程序的开发. 本章详细讨论struts架构.我们将看到struts是如何清晰地区分控制,事务逻辑和外观,从而简化了开发应用程序过程的.我们还将介绍struts提供的类如何使得开发工作更加简单,这些类包括: l         控制程序流程的类 l         实现和执行程序事务逻辑的类 l         自定义的标记库使得创建和验证HTML表单更加容易 1. Struts压缩包内容 文…
一.DynaActionForm的引入意义 使用ActionForm把表单数据单独封装起来,而且提供了自动的数据验证,简化了代码的编写,给我们带来了极大的方便. 但是,ActionForm也存在一些明显的不足: 1.如果ActionForm对应的HTML表单添加或删除一些属性,ActionForm类就可能需要修改并重新编译;所以如果HTML表单是动态的,那么ActionForm就无能为力了; 2.ActionForm增加了项目中类的数量! 3.对于安全性要求不高的系统,ActionForm的数据…
SSH 框架学习之初识Java中的Action.Dao.Service.Model-----------------------------学到就要查,自己动手动脑!!!   基础知识目前不够,有感性认识即可 首先这是现在最基本的分层方式,结合了SSH架构.modle层就是对应的数据库表的实体类.Dao层是使用了Hibernate连接数据库.操作数据库(增删改查).Service层:引用对应的Dao数据库操作,在这里可以编写自己需要的代码(比如简单的判断).Action层:引用对应的Servic…
一.下载struts2.0.1 http://struts.apache.org/downloads.html,下载struts-2.0.1-all.zip,这个压缩包中包含了开发struts2所需的struts2-core.jar核心包以及其它struts2所依赖的JAR文件,另外还有一些struts2的示例程序以及一些HTML的API文档. 二.试用struts2.0.1 . 新建一个WEB工程,将struts--all.zip压缩包中的lib目录下的所有jar文件拷贝到WEB工程的/WEB…
案例剖析中介绍了一个自己写的mystruts框架,这里开始简单的认识struts框架. 1.先看一个简单的struts开发的例子来熟悉一下流程 Struts就是基于mvc模式的框架! (struts其实也是servlet封装,提高开发效率!) Struts开发步骤: 1.web项目,引入struts - jar包 2. web.xml中,引入struts的核心功能 配置过滤器,通过配置一个过滤器来引入structs中的一些服务--org.apache.struts2.dispatcher.ng.…
即将开始着手写这个项目,所以希望通过这篇博客来记录自己学习的过程 今天开学第一天,就上了软件工程实践课,自己也开始着手做这个大作业了.首先我的项目名称叫做智能班车管理系统. 项目的概况: 该软件产品是针对员工数量众多的大型公司,解决其由于人员流动性大,公司缺乏完善的管理系统,无法对车辆.人员及线路等信息进行有效管理,导致管理混乱.效率低下.资源浪费等问题.在移动互联网蓬勃发展的今天,各种包含数据分析.图形可视化等技术的管理系统在企业经营过程中发挥着巨大的作用,单靠人工进行管理已经无法满足企业的发…
1.框架:是一个半成品,可以在其基础上在次开发. 2.struts2框架:它是一个web层使用的mvc框架. 3.struts2核心 1.struts2核心 2.xwork核心 4.struts2入门: 1.导jar包 struts2/apps/strut_blank.war文件 2.需要配置struts2 1.web.xml StrutsPrepareAndExecuteFilter 2.struts.xml 位置:src以下(clasess) 3.struts.xml文件中标签 <packa…
1.struts2框架开发的过程:先导包,再写配置(写struts.xml配置,还有在web.xml中进行过滤器的配置,过滤器的配置一定不能少) 2.struts框架是前端web层的框架.主要的特点:前端控制器(核心的控制器) 3.编写action,action就可以替代我们以前写的servvlet. 4.struts中提供了一些拦截器,这些拦截器用来增强一些功能.如:封装参数,我们只需要按照它的规则写,框架就可以对参数自动进行封装,而不必先获取参数再封装参数. 5.配置文件的加载顺序.一般的x…
struts是开源框架.使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间.如果我们想混合使用Servlets和JSP的优点来建立可扩展的应用,struts是一个不错的选择. Struts 是Apache软件基金会(ASF)赞助的一个开源项目.它最初是Jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目.它通过采用JavaServlet/JSP技术,实现了基于Java EEWeb应用的MVC设计模式的应用框架,是MVC经典设计模式中的一个经典产…
1.Struts应用框架介绍 (1)框架 框架最简单的形式是指已开发过并已测试过的软件的程序块,这些程序块可以在多个软件开发工程中重用.框架提供了一个概括的体系结构模版,可以用这个模板来构建特定领域中的应用程序. Framework概念并不是很新了,伴随着软件开发的发展,在多层的软件开发项目中,可重用.易扩展的,而且是经过良好测试的软件组件,越来越为人们所青睐.这意味着人们可以将充裕的时间用来分析.构建业务逻辑的应用上,而非繁杂的代码工程. 于是人们将相同类型问题的解决途径进行抽象,抽取成一个应…
2.<constant name="struts.i18n.encoding" value="UTF-8" />     指定Web应用的默认编码集,相当于调用 HttpServletRequest的setCharacterEncoding方法. 3.<constant name="struts.i18n.reload" value="false"/>    该属性设置是否每次HTTP请求到达时,系统都…
最近主要把javaweb的三大框架过一遍. (一)发展历史 传统的Java Web应用程序是采用JSP+Servlet+Javabean来实现的,这种模式实现了最基本的MVC分层,使得程序分为几层,有负责前台展示的jsp.负责流程逻辑控制的servlet一级负责数据封装的Javabean.但是这种结构仍然存在问题:如JSP页面中需要使用<%%>符号嵌入很多的java代码,造成页面结构混乱,servlet和javabean负责了大量的跳转和运算工作,耦合紧密,程序复用率低等等. Struts 为…
1.struts中Action的开发方式 继承ActionSupport类,这种方法实现的Action可以进行数据校验: 实现Action接口: 不继承任何类,不实现任何接口: 是否继承类或实现接口,struts都会进行默认拦截器的启动,拦截器的启动和Action没有关系. 2.struts中的通配符 在对action进行配置时,会有重复的情况 <action name="login" class="com.juaner.action.UserAction"…
搭建Struts框架 新建项目 [file]-[new]-[web project] 在弹出的对话框中对项目进行命名,点击[finish] 新建项目-> 点击项目右键-> MyEclipse-> Add Struts Capabilities选择Struts1.2 ->Finish 填写基本的信息,点击[finish] 搭建好之后如上图所示 新建jsp界面 login.jsp界面 <%@ page language="java" pageEncoding=…
一,什么是框架? 所谓框架就是提供了一组统一的接口和编程方式的可以重用组件,同时我们可以在框架中扩充我们自己的特定逻辑. 二,MVC设计模式 将应用程序分为3个部分:模型 Model,视图View,控制器Controller: 模型组件:负责业务逻辑: 模型包含应用程序的核心功能.模型封装了应用程序的状态.有时它包含的唯一功能就是状态.它对视图或控制器一无所知. 视图组件:负责表示业务范围的视图: 视图提供模型的表示.它是应用程序的 外观.视图可以访问模型的读方法,但不能访问写方法.此外,它对控…
前两篇讲解了struts框架的基本实现,自己感觉讲的也有些枯燥,今天拿登录的例子来做一个实现. 1.新建一个javaweb项目,并将struts的jar包拷贝到WebRoot/WEB-INF/lib下. 2.拷贝完jar包还不能进行工作,用户的请求必须达到ActionServlet,我们才能通过struts处理请求,所以还需要将ActionServlet配置在web.xml文件里面. <?xml version="1.0" encoding="UTF-8"?&…
上一篇文章,我们介绍了MVC框架的基本原理,并指出了这个基本框架中存在大量if…else的问题.今天我们来介绍一下struts框架,让struts解决这个问题. 首先,看一下粗略的时序图: ActionServlet是中央控制器,负责集区URL或分发: ActionForm负责收集表单数据,并且,struts会将表单数据转换成相应的数据类型. Action是业务层控制器. 上面就是struts大体上的实现,下面分析一下该struts框架执行流程: 1.终端客户向tomcat发出request请求…