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

 更新时间:2015年12月03日 18:36:03   投稿:goldensun  
这篇文章主要介绍了Java的Struts框架中的if/else标签使用详解,Struts是Java的SSH三大web开发框架之一,需要的朋友可以参考下

这些标签执行可在每一种语言找到的一种基本条件流程。 '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。这会给出以下画面:

2015123183516308.jpg (560×282)

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

2015123183538774.jpg (560×277)

相关文章

  • java中几种http请求方式示例详解

    java中几种http请求方式示例详解

    在日常工作和学习中有很多地方都需要发送HTTP请求,下面这篇文章主要给大家介绍了关于java中几种http请求方式的相关资料,文中通过代码介绍的非常详细,需要的朋友可以参考下
    2023-11-11
  • classpath和classpath*的区别详解

    classpath和classpath*的区别详解

    这篇文章主要为大家介绍了classpath和classpath*的区别详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-10-10
  • 详解如何在Elasticsearch中搜索空值

    详解如何在Elasticsearch中搜索空值

    这篇文章主要为大家介绍了如何在Elasticsearch中搜索空值的方法示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-01-01
  • Spring,hibernate,struts经典面试笔试题(含答案)

    Spring,hibernate,struts经典面试笔试题(含答案)

    这篇文章主要介绍了Spring,hibernate,struts经典面试笔试题极其参考含答案,涉及SSH基本概念,原理与使用技巧,需要的朋友可以参考下
    2016-03-03
  • springboot项目启动指定对应环境的方法

    springboot项目启动指定对应环境的方法

    这篇文章主要介绍了springboot项目启动指定对应环境的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-08-08
  • SocketIo+SpringMvc实现文件的上传下载功能

    SocketIo+SpringMvc实现文件的上传下载功能

    这篇文章主要介绍了SocketIo+SpringMvc实现文件的上传下载功能,socketIo不仅可以用来做聊天工具,也可以实现局域网。文中给出了实现代码,需要的朋友可以参考下
    2018-08-08
  • springboot 使用yml配置文件自定义属性的操作代码

    springboot 使用yml配置文件自定义属性的操作代码

    在SpringBoot中yml/yaml文件可以自定义一些属性,以供注入给自定义bean对象的属性,主要通过空格和层次来实现,类似于python代码,本文通过实例代码给大家介绍springboot 使用yml配置文件自定义属性,感兴趣的朋友跟随小编一起看看吧
    2024-03-03
  • java web实现网上手机销售系统

    java web实现网上手机销售系统

    这篇文章主要为大家详细介绍了java web实现网上手机销售系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-08-08
  • Spring Boot Admin邮件警报整合过程解析

    Spring Boot Admin邮件警报整合过程解析

    这篇文章主要介绍了Spring Boot Admin邮件警报整合过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-03-03
  • java 并发线程个数的如何确定

    java 并发线程个数的如何确定

    这篇文章主要介绍了java 并发线程个数的如何确定,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12

最新评论