Java的Struts框架中的if/else标签使用详解

这些标签执行可在每一种语言找到的一种基本条件流程。 'If'标签可用于本身或与“Else If''标签和/或单/多'Else'标签,如下图所示:

<s:if test="%{false}">
  <div>Will Not Be Executed</div>
</s:if>
<s:elseif test="%{true}">
  <div>Will Be Executed</div>
</s:elseif>
<s:else>
  <div>Will Not Be Executed</div>
</s:else>

创建动作类:

package com.yiibai.struts2;

public class HelloWorldAction{
  private String name;

  public String execute() throws Exception {
   return "success";
  }

  public String getName() {
   return name;
  }

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

创建视图
让我们有index.jsp文件如下:

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
 pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Hello World</title>
</head>
<body>
  <h1>Hello World From Struts2</h1>
  <form action="hello">
   <label for="name">Please pick a name</label><br/>
   <select name="name">
     <option name="Mike">Mike</option>
     <option name="Jason">Jason</option>
     <option name="Mark">Mark</option>
   </select>
   <input type="submit" value="Say Hello"/>
  </form>
</body>
</html>

接下来 helloWorld.jsp 演示使用, if, else 和 elseif 标签:

<%@ page contentType="text/html; charset=UTF-8" %>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
<head>
<title>Example of If and Else</title>
</head>
<body>
<b>Example of If and Else</b><br/>
<s:if test="name=='Mike'">
  You have selected 'Mike'.
</s:if>
<s:elseif test="name=='Jason'">
  You have selected 'Jason'
</s:elseif>
<s:else>
  You have not selected 'Mike' or 'Jason'.
</s:else>
</body>
</html>

在这里,如果标签返回true,如果“test”属性中指定的条件返回true。在我们的例子中,我们比较反对“Mike”。如果这个名字是Mike,标签返回true,我们打印的字符串,否则“elseif”块被执行,如果不满意,那么被执行else块。这是从传统的,如果没有什么不同,if, else if 可以在Java语言中。

配置文件
struts.xml 应该像这样:

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

   <action name="hello"
      class="com.yiibai.struts2.HelloWorldAction"
      method="execute">
      <result name="success">/HelloWorld.jsp</result>
   </action>

  </package>
</struts>

web.xml 应该像这样:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xmlns="http://java.sun.com/xml/ns/javaee"
  xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
  xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"
  id="WebApp_ID" version="3.0">

  <display-name>Struts 2</display-name>
  <welcome-file-list>
   <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
  <filter>
   <filter-name>struts2</filter-name>
   <filter-class>
     org.apache.struts2.dispatcher.FilterDispatcher
   </filter-class>
  </filter>

  <filter-mapping>
   <filter-name>struts2</filter-name>
   <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

右键点击项目名称,并单击 Export > WAR File创建一个WAR文件。然后部署此WAR在Tomcat的webapps目录下。最后,启动Tomcat服务器和尝试访问URL http://localhost:8080/HelloWorldStruts2/index.jsp。这会给出以下画面:

现在选择“Mark”,并提交页面。您应该看到翻页

(0)

相关推荐

  • Java的Struts框架中<results>标签的使用方法

    <results>标签在Struts2的MVC框架的视图中所扮演的角色.动作是负责执行业务逻辑.执行业务逻辑后,接下来的步骤是使用<results>标签显示的视图. 经常有一些附带导航规则的结果.例如,如果在操作方法是对用户进行验证,有三种可能的结果. (一)成功登录:(二)不成功的登录,用户名或密码错误:(三)帐户锁定. 在这种情况下的动作方法将被配置呈现的结果有三种可能的结果字符串和三个不同的看法.我们已经看到在前面的例子. 但是,Struts2 不配合使用JSP作为视图技术.

  • jsp struts1 标签实例详解第1/2页

    1,TagForm.java 复制代码 代码如下: package com.tarena.struts.tag.form; import org.apache.struts.action.*; import javax.servlet.http.*; import java.util.*; public class TagForm extends ActionForm { private int id; private String userName; private String passwo

  • struts2的select标签用法实例分析

    本文实例讲述了struts2的select标签用法.分享给大家供大家参考.具体如下: 项目中遇到个小问题,总结下. 关于struts2 select标签的使用. struts2 中从别的表中遍历数据 填充进入下拉菜单 用<s:select>标签显示. struts2的版本为2.1.8 <s:select       list=""       name=""       value=""       headerKey=&quo

  • struts2标签总结_动力节点Java学院整理

    先看一下Struts2标签的分类吧.然后分类总结一下即可. 由于控制标签用的比较多,所以放在了前边.好首先看一下控制标签吧. 一.控制标签,JSTL大家应该都使用过,其实Struts2的控制标签和那个特别像的,主要是对EL表达式满足不了的进行补充使用.这里简单看一下吧: 1. if--elseif--else,用来控制选择输出的标签: <span style="font-size:18px;"><html xmlns="http://www.w3.org/1

  • jsp 开发之struts2中s:select标签的使用

    jsp 开发之struts2中s:select标签的使用 1.第一个例子: <s:select list="{'aa','bb','cc'}" theme="simple" headerKey="00" headerValue="00"></s:select> 2.第二个例子: <s:select list="#{1:'aa',2:'bb',3:'cc'}" label=&qu

  • 简单说明Java的Struts框架中merge标签的使用方法

    merge标签合并标记需要两个或两个以上的列表作为参数,并把它们合并在一起,如下所示: <s:merge var="myMergedIterator"> <s:param value="%{myList1}" /> <s:param value="%{myList2}" /> <s:param value="%{myList3}" /> </s:merge> <

  • Struts2的s:radio标签使用及用jquery添加change事件

    struts2中s:radio标签的使用总结 遇到的问题:在使用该标签时,设置了默认选中项,但提交数据返回后,单选框不能显示之前选中的项,仍然为默认选项 通过测试得出以下结论: 以<s:radio name="user.sex" list="%{#{'1':'男','0':'女'}}" theme="simple"></s:radio>为例 在使用s:radio标签的时候,如果要使该标签默认选中一项,可以通过两种方法 1.

  • Struts之logic标签库详解

    1.logic:empty logic:empty标签是用来判断是否为空的.如果为空,该标签体中嵌入的内容就会被处理.该标签用于以下情况: 当Java对象为null时 当String对象为""时 当java.util.Collection对象中的isEmpty()返回true时 当java.util.Map对象中的isEmpty()返回true时 下面的代码示例了logic:empty标签判断集合persons是否为空: <logic:empty name="listF

  • Struts2 自定义下拉框Tag标签

    自定义标签主要包括三个步骤: 1.编写java类,继承TagSupport类: 2.创建tld文件,影射标签名和标签的java类: 3.jsp页面引入tld. 例子:自定义下拉框标签 如果页面上有下拉选择框,通常最好的解决方法是使用数据字典,因为有可能多个页面 使用同一个下拉框,便于后台统一维护. 自定义Tag类 import java.io.IOException; import javax.servlet.jsp.JspException; import javax.servlet.jsp.

  • Java的Struts框架中append标签与generator标签的使用

    append 标签: 这些append标签需要两个或两个以上的列表作为参数,并追加它们放在一起,如下图所示: <s:append var="myAppendIterator"> <s:param value="%{myList1}" /> <s:param value="%{myList2}" /> <s:param value="%{myList3}" /> </s:ap

随机推荐