2.Struts2第一个应用

2024-09-01 16:18
文章标签 应用 第一个 struts2

本文主要是介绍2.Struts2第一个应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第二记:Struts2的第一个应用

(1)、编写struts.xml创建Action,如:ExampleAction

     <?xml version="1.0" encoding="UTF-8" ?>
     <!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
     <struts>
         <package name="default" namespace="/" extends="struts-default">

                <action name="example" class="com.struts2.house.rent.action.ExampleAction" method="login">
                            <result name="login">/login.jsp</result>
               </action>
        </package>

     </struts>
      配置说明:

      N1、name:包名,但不同于Java程序中的包名。

      N2、namespace:命名空间,默认为“/”,表示根路径下。

      N3、extends:继承,主要是继承struts2的拦截器功能。

      N4、action_name:action的名称,也可以是是别名,唯一标识。

      N5、method:表示访问该Action的login方法。

      N6、result_name:表示访问的视图名称,即jsp页面的名称。

(2)、编写Action对应的Java文件:

       public class ExampleAction{  //无侵入式实现,这里没有像Struts1一样依赖于Action

                private  String   msg;

                public String getMessage(){

                       return msg;

               }

               public   String  login(){

                      msg="Hello,World!";

                      return "login";//表示要提交的视图名称,返回的必须是string

              }

      }

(3)、视图表现层:

       在JSP中导入Struts2的标签:

      s-tag:<%@ taglib prefix="s" uri="/struts-tags" %>

      s2-tag:<%@ taglib prefix="s2" uri="/struts-tags" %>

      sx-tag:<%@ taglib prefix="sx" uri="/struts-dojo-tags"%>

      s标签:<s:property value="This is my frirst Struts2 application!" />,s标签含有许多用法:如<s:if>,<s:bean>,<s:param>,<s:iterator>...等等。

      s2标签:<s2:form  action="login">

                           <s2:textfield  name="users.name" label="username"></s2:textfield><br/>

                          <s2:password  name="users.password" label="password"><s2:password><br/>

                          <s2:submit >login</s2:submit>

                      </s2:form>

      sx标签:<sx:a targets="pageDiv" href="a_link_url" errorText="...error...">
                                  <s:property value="点这里" />
                              </sx:a>   //生成超链接..................

       EL表达式: ${message};//注意:直接获取后台传送的值,是get方法名而不是成员变量,必须提供get方法才行。

(4)访问action对应的视图:

       在浏览器中输入项目名称及其访问路径:

        如,http://localhost:8080/StrutsTest/example/login.action

        根路径:http://localhost:8080/StrutsTest/

       如果package的命名空间是"/test/user"

       则访问路径是:http://localhost:8080/StrutsTest/test/user/example/login.action

       注:”.action“可以省略不写。


这篇关于2.Struts2第一个应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1127437

相关文章

C#中的Converter的具体应用

《C#中的Converter的具体应用》C#中的Converter提供了一种灵活的类型转换机制,本文详细介绍了Converter的基本概念、使用场景,具有一定的参考价值,感兴趣的可以了解一下... 目录Converter的基本概念1. Converter委托2. 使用场景布尔型转换示例示例1:简单的字符串到

Spring Boot Actuator应用监控与管理的详细步骤

《SpringBootActuator应用监控与管理的详细步骤》SpringBootActuator是SpringBoot的监控工具,提供健康检查、性能指标、日志管理等核心功能,支持自定义和扩展端... 目录一、 Spring Boot Actuator 概述二、 集成 Spring Boot Actuat

PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例

《PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例》词嵌入解决NLP维度灾难,捕捉语义关系,PyTorch的nn.Embedding模块提供灵活实现,支持参数配置、预训练及变长... 目录一、词嵌入(Word Embedding)简介为什么需要词嵌入?二、PyTorch中的nn.Em

Spring Boot3.0新特性全面解析与应用实战

《SpringBoot3.0新特性全面解析与应用实战》SpringBoot3.0作为Spring生态系统的一个重要里程碑,带来了众多令人兴奋的新特性和改进,本文将深入解析SpringBoot3.0的... 目录核心变化概览Java版本要求提升迁移至Jakarta EE重要新特性详解1. Native Ima

Redis中Stream详解及应用小结

《Redis中Stream详解及应用小结》RedisStreams是Redis5.0引入的新功能,提供了一种类似于传统消息队列的机制,但具有更高的灵活性和可扩展性,本文给大家介绍Redis中Strea... 目录1. Redis Stream 概述2. Redis Stream 的基本操作2.1. XADD

JSONArray在Java中的应用操作实例

《JSONArray在Java中的应用操作实例》JSONArray是org.json库用于处理JSON数组的类,可将Java对象(Map/List)转换为JSON格式,提供增删改查等操作,适用于前后端... 目录1. jsONArray定义与功能1.1 JSONArray概念阐释1.1.1 什么是JSONA

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

PostgreSQL的扩展dict_int应用案例解析

《PostgreSQL的扩展dict_int应用案例解析》dict_int扩展为PostgreSQL提供了专业的整数文本处理能力,特别适合需要精确处理数字内容的搜索场景,本文给大家介绍PostgreS... 目录PostgreSQL的扩展dict_int一、扩展概述二、核心功能三、安装与启用四、字典配置方法

Python中re模块结合正则表达式的实际应用案例

《Python中re模块结合正则表达式的实际应用案例》Python中的re模块是用于处理正则表达式的强大工具,正则表达式是一种用来匹配字符串的模式,它可以在文本中搜索和匹配特定的字符串模式,这篇文章主... 目录前言re模块常用函数一、查看文本中是否包含 A 或 B 字符串二、替换多个关键词为统一格式三、提

Java MQTT实战应用

《JavaMQTT实战应用》本文详解MQTT协议,涵盖其发布/订阅机制、低功耗高效特性、三种服务质量等级(QoS0/1/2),以及客户端、代理、主题的核心概念,最后提供Linux部署教程、Sprin... 目录一、MQTT协议二、MQTT优点三、三种服务质量等级四、客户端、代理、主题1. 客户端(Clien