Struts1 生成Action请求的几种方式分析

1  直接硬编码

<a href="/Lesson14_Struts1_Demo1//user/regUserDo.do">注册</a><br/>

项目名,请求后缀,都是固定死的

2  使用EL表达式

<a href="${pageContext.request.contextPath}/user/regUserDo.do">注册</a><br/>

项目名称实现了动态获取,但是请求后缀还是固定

3  使用Strtus1的html标签

<%@ taglib prefix="html" uri="http://struts.apache.org/tags-html" %>
<html:link action="/user/regUserDo">注册</html:link><br/>

同时html:link标签还能够附加参数并且对其进行URL编码

<%
            Map<String,String> parMap = new HashMap<>();
            parMap.put("x","1");
            parMap.put("y","2");
            parMap.put("z","3");
            request.setAttribute("parMap",parMap);
            Date now = new Date();
            request.setAttribute("now",now);
            request.setAttribute("name","张三李四咯");
        %>
        <%--参数名为username,从web作用域中查找名为name的值--%>
        <html:link action="/regUser" paramId="username" paramName="name">注册 - 对参数URL编码</html:link><br/>
        <html:link action="/regUser" paramId="t" paramName="now" paramProperty="time">对象的某个属性作为参数</html:link><br/>
        <html:link action="/regUser" name="parMap">Web作用域中的Map作为参数集合</html:link><br/>
        如果需要设置的请求参数是某个对象的Map类型成员变量,则可以使用 name+property两个属性进行设置 对于生成的请求地址,会自动添加项目名与请求后缀
        例如:<html:link action="/regUser">注册</html:link>
时间: 2024-10-13 21:51:30

Struts1 生成Action请求的几种方式分析的相关文章

解决 SharePoint 2010 拒绝访问爬网内容源错误的小技巧(禁用环回请求的两种方式)

这里有一条解决在SharePoint 2010搜索爬网时遇到的“拒绝访问错误”的小技巧. 首先要检查默认内容访问帐户是否具有相应的访问权限,或者添加一条相应的爬网规则.如果目标资源库是一个SharePoint库,验证一下该帐号是否具有对该SharePoint web应用程序具有至少“完全读取”的权限. 当我在升级上来的SharePoint环境中对我新建的博客URL进行爬网时遇到了这个错误. 这个错误发生在当你运行Windows 2008 R2和SharePoint 2010并且爬网进程试图访问一

生成freeswitch事件的几种方式

本文描述了生成freeswitch事件的几种方式,这里记录下,也方便我以后查阅. 操作系统:debian8.5_x64 freeswitch 版本 : 1.6.8 在freeswitch代码中加入事件 产生内置事件(以SWITCH_EVENT_MODULE_LOAD为例): switch_event_t *event; if (switch_event_create(&event, SWITCH_EVENT_MODULE_LOAD) == SWITCH_STATUS_SUCCESS) { swi

android 向服务器Get和Post请求的两种方式,android向服务器发送文件,自己组装协议和借助第三方开源

/** * @author [email protected] * @time 20140606 */ package com.intbird.utils; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream

C#中Post请求的两种方式发送参数链和Body的

POST请求 有两种方式 一种是组装key=value这种参数对的方式 一种是直接把一个字符串发送过去 作为body的方式 我们在postman中可以看到 sfdsafd sdfsdfds public class KeyWordController : BaseController { private string listClassUrl = "http://192.168.1.171:8789/keywords/list_class"; public ActionResult L

JVM 在遇到OOM(OutOfMemoryError)时生成Dump文件的三种方式

JVM 在遇到OOM(OutOfMemoryError)时生成Dump文件的三种方式,以及如何使用Eclips Memory Analyzer(MAT)插件进行堆内存分析. 方法一: jmap -dump:format=b,file=文件名 [pid] 例如: jmap -dump:format=b,file=/usr/local/base/02.hprof 12942 方法二: 让JVM在遇到OOM(OutOfMemoryError)时生成Dump文件,需要配置一些信息 -XX:+HeapDu

WebAPI GET和POST请求的几种方式

GET请求 1.无参数get请求 一般get请求有两种写法,一种是$.get()   一种是$.ajax({type:"get"}),我个人比较喜欢用后者. 下面例子主要是get无参数请求,获取人员列表并将数据返回到前台,并将返回的json数据转换成字符串弹出,以便知道是否请求成功,并且返回的数据是否正确 1 $.ajax({ 2 url: "/api/Person/getList", 3 type: "get", 4 success: func

springmvc 前端 发ajax请求的几种方式

一.传json单值或对象 1.前端 1 var data = {'id':id,'name':name}; 2 $.ajax({ 3 type:"POST", 4 url:"user/saveUser", 5 dataType:"json", 6 //contentType:"application/json", //不能添加这个头 7 data:data, //这里不能进行JSON.stringify,发送请求的数据在:fo

maven生成war包的两种方式

war包即对WEB应用程序进行打包,用于应用容器的部署.如在jboss中只要把war包丢入deploy目录下即可发布自己的应用了.打包方式有很多中,很多工具本身就支持此功能.下面主要介绍通过maven来操作的两种方式: 方法一: 即第一反应的那种啦,就是利用maven的maven-war-plugin. <build> <plugins> ...... <plugin> <groupId>org.apache.maven.plugins</groupI

PHP发送HTTP请求的几种方式

转发:https://blog.tanteng.me/2017/07/php-curl-guzzlehttp/ 1)PHP开发中我们常用CURL 方式封装 HTTP请求,什么是CURL? CURL 是一个用来传输数据的工具,支持多种协议,如在 Linux 下用 curl 命令行可以发送各种 HTTP 请求.PHP 的 cURL 是一个底层的库,它能根据不同协议跟各种服务器通讯,HTTP 协议是其中一种. 现代化的 PHP 开发框架中经常会用到一个包,叫做 GuzzleHttp,它是一个 HTTP