博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts 2初体验
阅读量:6257 次
发布时间:2019-06-22

本文共 4141 字,大约阅读时间需要 13 分钟。

Struts2简介:

    Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。

Struts 2 目录结构:

    apps目录:Struts2示例应用程序
    docs目录:Struts2指南、向导、API文档
    lib目录:Struts 2的发行包及其依赖包
    src目录:Struts 2项目源代码

使用Struts 2 开发程序的基本步骤

--手动添加Struts支持

    1.第一步:加载Struts2 类库,既是添加jar包

        1. commons-logging-1.1.x.jar ASF出品的日志包,struts2使用这个日志包来支持JDK和Log4j的日志记录。

        2. freemarker-2.3.x.jar 表现层框架,定义了struts2的可视组件主题,struts2的UI标签的模版,使用FreeMark编写
        3. ognl-2.6.x.jar 对象图导航语言(Object Graphic Navigation Language),struts2框架通过其读写对象属性,一种功能强大的表达式语言
        4. struts2-core-2.x.x.jar struts2的核心类库
        5. xwork.jar webwork的核心库,struts2在其上构建
        6. commons-fileupload-1.2.1.jar 文件上传组件,2.1.6版本后必须加入此文件
        7.struts2-dojo-plugin-2.3.4     为struts所提供的一些控件例如:日历

     2.第二步:配置web.xml

index.jsp
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
struts2
/*

    

    3.第三步:开发视图层页面login.jsp

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%><%String path = request.getContextPath();String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";%>              登录页面        

登录页面

用户名:
密码:

 

    4.第四步:开发控制层com.struts包下或com.action包

package com.struts;/** * 控制层 * @author asus * */public class UserAction {    /**      * 此属性用来接收form表单提交过来的值,属性名与form表单中name属性名一致     * 必须生成get,set方法 */    private String uname;    private String upassword;        public String execute(){        if(uname!=null && uname.equals("admin") && upassword.equals("123")){            //进入则代表账号密码输入正确            return "success";        }        return "error";    }    /** JavaBean */    public String getUname() {        return uname;    }    public void setUname(String uname) {        this.uname = uname;    }    public String getUpassword() {        return upassword;    }    public void setUpassword(String upassword) {        this.upassword = upassword;    }    }

    5.第五步:配置Struts 2配置文件src下创建(struts.xml)需要选TDT struts-2.1.dtd

/loginSuccess.jsp
/login.jsp

    6.第六步:部署、运行项目

--自动添加Struts支持

    --MyEclipse自动添加Struts 支持

      右键项目-->MyEclipse-->Add Struts Capabilities

    注意:Hibernate+Struts2时,若两个支持都是自动生成的则会有一个  antlr-2.7.2.jar 包冲突。必须去掉一个。一般是移掉Struts2的。

    附加移除操作图:

      

 

使用对象接收from表的提交的值

属性设值的方式

(1):简单:在Action设置属性,生成SET与GET方法。

参数的名称与属性的名称一致。

(2):Action中设置Bean的属性

Bean必须生成SET、GET方法。Bean不可以实例化。

Bean中必须要有一个默认的空参数的构造方法。

参数的名称 = bean的名称.bean中属性的名称。

 

Struts 2访问Servlet API

/** Struts 2访问Servlet API         */        /**1.与Servlet API解耦的访问方式*/            //上下文对象            ActionContext context = ActionContext.getContext();            //request范围            Map
request=(Map
) context.get("request"); request.put("num1", 1); //session范围 Map
session = context.getSession(); session.put("num2", 2); //application范围 Map
application = context.getApplication(); application.put("num3", 3); /** 2.与Servlet API耦合的访问方式*/ //request范围 HttpServletRequest request = ServletActionContext.getRequest(); request.setAttribute("num1", 4); //session范围 HttpSession session = ServletActionContext.getRequest().getSession(); session.setAttribute("num2", 5); //application范围 ServletContext application = ServletActionContext.getServletContext(); application.setAttribute("num3", 6);

 

转载地址:http://vmtsa.baihongyu.com/

你可能感兴趣的文章
dll的概念 dll导出变量 函数 类
查看>>
HDUOJ------------1051Wooden Sticks
查看>>
Winform开发框架之权限管理系统改进的经验总结(4)--用户分级管理
查看>>
SQLSERVER PRINT语句的换行
查看>>
Web Service 的工作原理
查看>>
tesseract ocr文字识别Android实例程序和训练工具全部源代码
查看>>
嵌入式操作系统的调试
查看>>
DroidPHP-A PHP Webserver for android
查看>>
iOS用全局宏的概念理解xcode中的设置 preprocessor macros
查看>>
浮沉乱世,一些话对自己说
查看>>
桌面应用框架 OneRing
查看>>
解决Boost.Regex对中文支持不好的问题
查看>>
Error : Weblogic Maven Plugin deployment WebLogic 12c
查看>>
W3C小组宣布:HTML5标准制定完成
查看>>
dispatch_group_async 使用详解
查看>>
3d引擎列表
查看>>
[Ant] Ant之MacroDef—“宏
查看>>
WEB架构师成长之路-架构师都要懂哪些知识 转
查看>>
C#中使用TCP通信
查看>>
Swift入门篇-swift简介
查看>>