-
例子: http://localhost:8080/product_one/hellowworld.jsp可以进入result.jsp页面 http://localhost:8080/product_one/aaa/ddd/ccc/hellowworld.jsp也可以进入result.jsp页面 Action搜索顺序: http://localhost:8080/struts2/path1/path2/path3/student.action 第一步:判断package是否存在,如:path1/path2/path3/ 如果package存在 第二步:则判断该package中action是否存在,如果不存在则去默认namespace的package里面寻找action 第三步:如果没有,则报错 如果package不存在: 第二步:检查上一级路径的package是否存在(直到默认namespace),重复第一步 第三步:如果没有则报错 如果请求为/login.action,系统会根据根命名空间("/")中查找名为login的Action,如果在根命名空间中找到了名为login的Action,则该Action处理用户的请求;否则系统将转为在默认命名空间中寻找名为login的Action,如果默认的命名空间中有名为login的Action,则由该Action处理用户的请求。如果两个命名空间中都找不到名为login的Action,那么系统将出现错误。查看全部
-
servlet api: httpRequest、httpResponse、servletContext 3个api对应jsp面向对象:request、response、application servlet中可以直接调用servlet api struts2 Action中execute没有任何参数,也就是不存在servlet api struts2 提供了3种方式访问servlet api: 1.ActionContext类 2.实现***Aware接口 3.ServletActionCotext类查看全部
-
深入讲解struts的八个主要步骤: 1.访问Servlet API 2.Action搜索顺序 3.动态方法调用 4.指定多个配置文件 5.默认Action 6.Struts2后缀 7.接受参数 8.处理结果类型查看全部
-
web.xml 任何MVC框架都需要与Web应用整合,这就不得不借用于web.xml文件,只有配置web.xml文件中Servlet才会被应用加载 Model2:JSP+JavaBean+Servlet 通常,所有MVC框架都需要Web应用加载一个核心控制器,对于Struts2框架而言,需要加载StrutsPerpareAndExecuteFilter,只负责Web应用加载StrutsPerpareAndExecuteFilter,StrutsPerpareAndExecuteFilter将会加载Struts2框架。 遇到.acton文件就会拦截并进行处理 struts.xml struts2的核心配置文件,在开发过程中利用率最高。 该文件主要负责管理Action的映射,以及该Action包含的Result定义等。 struts.xml中包含的内容: 1、全局属性 2、用户请求和相应Action之间的对应关系 3、Action可能会用到的参数和返回结果 4、各种拦截器的配置 struts.properties struts2框架的全局属性文件,自动加载 和strusts.xml在一个路径 该文件包含很多key-value键值对。 这个文件可以不要,可以在structs.xml中进行配置,使用constant元素可以替换 .dtd就是约束struts.xml中可以有哪些标签不能有哪些标签 可以通过 <include file=“”>包含其他文件 可以把每个功能模块独立到一个xml配置文件中,然后用Include节点引用 <package> package提供了将多个Action组织成为一个模块的方式 package的名字必须是唯一的,可以在这个包上加一些拓展的包 <package name="包名" extends="继承的父类的名称" abstract设置package的属性为抽象,抽象的package不能定义action的值, ture或false namespace 包的命名空间> <interceptors>为拦截器 可以为拦截器定义name(名称)和class(类路径) <interceptor-stack>拦截器栈 <default-interceptor-ref name="">定义默认的拦截器,每个Action都会自动引用查看全部
-
用户的请求HttpServletRequest--->过滤器filter--->ActionMapper(.action)请求---->过滤器---->ActionProxy---->通过ConfigurationManager读取struts.xml中的ActionInvocation具体的Action类---->通过ActionProxy创建Action反向实例---->拦截器--->action,返回result(字符串对象)对应的视图---->拦截器---->HttpServletResponse返回请求查看全部
-
创建默认action,类似于错误页面。查看全部
-
Apache Struts2的环境要求: Servlet API 2.4以上 JSP API 2.0以上 Java 5以上(在Struts2会用到Annotation) ____________*******_____________ 搭建Struts2环境步骤 1、下载相关的jar包 http://struts.apache.org/; 2、创建web项目; 3、创建并完善相关配置文件; 4、创建Action并测试启动。查看全部
-
JSP+JavaBean=Model-1:适用于小型网站的开发 JSP+Servlet+JavaBean=Model-2:最典型的MVC模式 MVC是模型(Model)、视图(View)和控制器(Controller)的缩写;MVC是一种软件设计典范,用一种业务逻辑、数据、界面显示分离的方法组织代码,将业务逻辑聚集到一个部件里面,在改进和个性化定制界面及用户交互的同时,不需要重新编写业务逻辑。在Struts中,Controller就是action查看全部
-
Struts是什么? Struts是流行和成熟的基于MVC设计模式的Web应用程序框架。 使用Struts的目的: 为了帮助我们减少在运用MVC设计模型来开发Web应用时间查看全部
-
asa查看全部
-
要导入的包:(共9个) commons-fileupload(上传下载包) commons-io(输入输出包) commons-lang 3-3.2(基础包) commons-logging(日志包) freemarker(模板引擎,通过模板生成文本输出的通用工具) structs2-core(核心包) xwork-core(一些类基于xwork) ognl(表达式) javassist-3.11.0.GA.jar(解析java类文件的一个包) 之后配置web.xml文档 web项目在启动tomcat时第一个启动的文件就是web.xml 首先定义过滤器 <filter> <filter-name>struct2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> 这里写完后按住ctrl点击鼠标左键如果可以跳转则证明正确 </filter> filter的映射 <filter-mapping> <filter-name>struct2</filter-name> <url-pattern>/*</url-pattern> /*是所有的都需要过滤 </filter-mapping> 映射与文件的filter-name应该保持一致 之后再src中创建struts的核心xml struts.xml <?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"> <struts> </struts> 之后创建action包 创建action类让其继承ActionSupport Struts2中有一个默认的方法不指定方法名的话有一个execute()方法 之后去配置struts.xml中的action文件 [ 收起全文 ]查看全部
-
处理结果类型: <result name="success">/success.jsp</result> 注意:result元素中的name就是result元素的逻辑视图名称;如果省略了name属性,系统将采用默认的name属性值,默认为success;另外/表示上下文路径,如果不带/,则是其父元素action元素的namespace指定的路径。 系统内置属性:见截图查看全部
-
Struts2处理流程:查看全部
-
接收参数的3种方式: 1、使用Action的属性接收; 2、使用DomainModel接收参数; 3、使用ModelDriven接收参数; action接收JSP页面传输的参数: 【1、使用action类的属性接收参数: a.在action类中定义成员变量,并添加get、set方法; b.在JSP页面中Form表单的Action属性指向对应的action,input控件的name属性和Action类中定义的成员变量一致。 【2、使用DomainModel接收参数: a.创建一个实体javaBean类,定义成员变量,并添加get、set方法; b.在action类中以之前创建的实体类(如user)作为成员变量,并添加get、set方法,此实体类不需要实例化对象; c.在JSP页面中Form表单的Action属性指向对应的action,input控件的name属性需要指定到实体类的属性(如name=user.username); 【3、使用ModeDriven接收参数: 1使用ModelDriven<T>接口,这个action必须实现这个接口的public T getModel()方法。 2此时声明的属性必须实例化,eg: private User user = new User(); 同时不需要getter和setter。 3前端的name也只需要写username和password就可以,不需要再加域了。这种方法时最推荐的方法,因为可以减少前后端的耦合查看全部
-
配置Struts2后缀的3种方式: 1、在Struts.xml中配置 <constant name="struts.action.extension" value="配置的后缀"></constant> 2、在Struts.properties中配置:见截图 3、在web.xml中配置,不常用查看全部
举报
0/150
提交
取消