美文网首页
[Struts2]3-一个小项目

[Struts2]3-一个小项目

作者: 我相信你爱过gg | 来源:发表于2017-02-09 18:11 被阅读45次

我们使用一个小项目来更好的理解一下struts.xml配置文件中的一些元素

创建一个 login.jsp页面

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>用户登陆</title>
</head>
<body>
<form action="/loginAction" method="post">
    用户名:<input type="text" name="user.name"/><br/>
    密码:<input type="text" name="user.pwd"/><br/>
    <input type="submit" value="登录">
</form>
</body>
</html>

创建用户类

public class User {
    private String name;
    private String pwd;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }
}

创建一个Login类 此类主要用于处理用户登录

public class Login extends ActionSupport {

    private User user = new User();

    @Override
    public String execute() throws Exception {
        if ("user1".equals(user.getName()) && "pwd1".equals(user.getPwd())){
            return "ok";
        }
        return "err";
    }

    public User getUser() {
        return user;
    }

    public void setUser(User user) {
        this.user = user;
    }
}

配置struts.xml文件

<?xml version="1.0" encoding="UTF-8"?>

        <!DOCTYPE struts PUBLIC
                "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
                "http://struts.apache.org/dtds/struts-2.5.dtd">

<struts>
        <package name="user" extends="struts-default" namespace="/">
                <action name="loginAction" class="cc.xxxxx.service.Login">
                        <result name="ok">/index.jsp</result>
                        <result name="err">/login.jsp</result>
                </action>
        </package>
</struts>

或许你有几个问题

问:为什么需要创建Login类并继承ActionSupport类?
答:Login类用于对用户的请求做处理。

问:在Struts2中,提供了多种实现Action的方式。
答:三种。
第一种:实现Action 接口。
第二种:继承ActionSupport 类。
第三种:不是实现也不继承。
注意:上述三种方式都必须重写或存在execute()方法。
在Action中所有用于处理请求的方法都必须返回字串符类型。

问:stuts.xml文件配置的元素以及属性
答:package 元素用于定义Struts2处理请求的逻辑单元,name属性为必须并且唯一,用来指定包名称。
extends 属性类似于Java中的extends关键字,用于指定要扩展的包。
namespace 属性为你action的包名。这里不是类的包名,这里类似于一个请求路径。

action 元素用于配置Struts2框架的"工作单元" Action类。action元素将一个请求的URL对应到一个Action类。name属性是必须的,表示action的名字;class属性是可选的,用于设定Action类的全限定名。

result 元素用来设定Action类处理结束后,系统下一步将要做什么。name属性表示result的逻辑视图名称,必须与Action类返回的字符串进行匹配;而result元素的值表示与逻辑视图名称对应的物理资源之间的映射,用来指定这个结果对应的实际资源的位置。

相关文章

  • [Struts2]3-一个小项目

    我们使用一个小项目来更好的理解一下struts.xml配置文件中的一些元素 创建一个 login.jsp页面 创建...

  • Struts2

    在eclipse使用struts2,配置流程: 准备工作: 下载好struts2的jar包 建立一个web项目 导...

  • 一、struts2项目环境搭建

    创建一个动态web项目 struts2配置文件编写

  • Struts2__Action

    struts2配置 找一个基础的struts2的项目 将WEB-INF目录下的jar包拷贝过来 将struts.x...

  • 002--Struts2配置文件加载顺序

    通过上一篇,对Struts2有了一个基本的认识,并成功的运行了基于Struts2的第一个web项目。在讲解配置文件...

  • SSH框架笔记01_SSH整合的两种方式

    1. 框架回顾 2. 创建项目,引入jar包 2.1 Struts2的jar包 基础包:..\struts2\st...

  • 1-小程序简介

    1-获取一个微信小程序的AppId 2-创建项目 3-编写代码 最关键的部分,app.js、app.json、ap...

  • Struts2学习

    本节概览1、搭建一个struts2项目2、struts.xmlpackage -> action -> resul...

  • Maven-项目管理利器

    Maven-项目管理利器 当我们做一个项目时,可能要用到很多个框架,比如Struts2、Spring Boot、M...

  • Struts2拦截器

    自定义拦截器: 从struts2的apps中拷贝相应jar包 然后建struts2项目 加入到buildpath ...

网友评论

      本文标题:[Struts2]3-一个小项目

      本文链接:https://www.haomeiwen.com/subject/ulcwittx.html