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)

相关文章

  • Maven实现自己的starter依赖

    Maven实现自己的starter依赖

    本文主要介绍了Maven实现自己的starter依赖,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-04-04
  • java反射之方法反射的基本操作方法

    java反射之方法反射的基本操作方法

    下面小编就为大家带来一篇java反射之方法反射的基本操作方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Spring 使用注解方式进行事务管理配置方式

    Spring 使用注解方式进行事务管理配置方式

    本篇文章主要介绍了Spring 使用注解方式进行事务管理配置方式,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • SpringMVC下实现Excel文件上传下载

    SpringMVC下实现Excel文件上传下载

    这篇文章主要为大家详细介绍了SpringMVC下实现Excel文件上传下载,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03
  • Java实现在线预览的示例代码(openOffice实现)

    Java实现在线预览的示例代码(openOffice实现)

    本篇文章主要介绍了Java实现在线预览的示例代码(openOffice实现),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-11-11
  • Springboot+Stomp协议实现聊天功能

    Springboot+Stomp协议实现聊天功能

    本示例实现一个功能,前端通过websocket发送消息给后端服务,后端服务接收到该消息时,原样将消息返回给前端,前端技术栈html+stomp.js,后端SpringBoot,需要的朋友可以参考下
    2024-02-02
  • 一篇文章带你入门java注解

    一篇文章带你入门java注解

    这篇文章主要介绍了Java注解详细介绍,本文讲解了Java注解是什么、Java注解基础知识、Java注解类型、定义Java注解类型的注意事项等内容,需要的朋友可以参考下
    2021-08-08
  • 对spring task和线程池的深入研究

    对spring task和线程池的深入研究

    这篇文章主要介绍了对spring task和线程池的深入研究,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • Java详细解析==和equals的区别

    Java详细解析==和equals的区别

    这篇文章主要介绍了Java中==和equals()的区别,,==可以使用在基本数据类型变量和引用数据类型变量中,equals()是方法,只能用于引用数据类型,需要的朋友可以参考下
    2022-04-04
  • ShardingSphere数据库读写分离算法及测试示例详解

    ShardingSphere数据库读写分离算法及测试示例详解

    这篇文章主要为大家介绍了ShardingSphere数据库读写分离算法及测试示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-03-03

最新评论