Struts2--使用JSP显示系统当前时间

来源:互联网 发布:美服lol汉化补丁mac 编辑:程序博客网 时间:2024/05/22 10:31

使用JSP显示系统当前时间

====================================================

使用struts2要导入jar包如下:

<dependency>  <groupId>org.apache.struts</groupId>  <artifactId>struts2-core</artifactId>  <version>2.3.24</version></dependency>

----------------------------------------------------------

由于struts2使用过滤器Filter来处理请求,则先在web.xml文件中配置过滤器(要先导入Tomcat的包)

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" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5">  <display-name>struts_1</display-name>    <!-- 配置过滤器 -->  <filter>    <filter-name>struts</filter-name>    <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>  </filter>  <filter-mapping>    <filter-name>struts</filter-name>    <url-pattern>/*</url-pattern>  </filter-mapping></web-app>

----------------------------------------------------------

struts.xml配置文件必须使用该名称

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE struts PUBLIC    "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"    "http://struts.apache.org/dtds/struts-2.3.dtd">    <!-- resource/struts.xml 相当于spring-mvc.xml--><struts>  <!-- http://localhost:8080/struts_1/demo/time -->  <!-- namespace 用于定义一级请求路径       name 定义该模块(package)的名称,与namespace没有任何关系     extends="struts-default" 自动继承了struts-default.xml 中定义环境信息  -->  <!-- 在package中定义url与控制器和视图对应关系            哪个URL被哪个控制器处理, 返回结果映射到哪个JSP视图 -->  <package namespace="/demo" name="demo" extends="struts-default">    <!-- 在请求/demo/hello时候Struts就会利用反射创建 DemoAction 对象,并且执行execute方法 -->    <action name="time" class="cn.tedu.TimeAction">      <!-- <result>用于处理execute方法返回值与JSP 视图的对应关系       也就是再转发到哪个页面   -->      <result name="time1">/WEB-INF/time.jsp</result>    </action>  </package></struts>

----------------------------------------------------------

子控制器Action:

package cn.tedu;public class TimeAction {public String execute(){System.out.println("输出时间!");return "time1";}}

----------------------------------------------------------

time.jsp:

<%@ page language="java" contentType="text/html; charset=UTF-8"    pageEncoding="UTF-8" import="java.util.Date,java.text.SimpleDateFormat"%><%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %><!DOCTYPE html><html><head><meta charset="UTF-8" /><title>当前系统时间</title></head><body>  <%  Date date = new Date();  SimpleDateFormat sdf = new SimpleDateFormat("yyyy年-MM月-dd日   hh时:mm分:ss秒");  String now = sdf.format(date);  %>  <p>利用导入的包生成系统时间:</p>  <%= now %>    <p>利用JSP自带的useBean生成系统时间:</p>  <jsp:useBean id="time" class="java.util.Date" />  <fmt:formatDate value="${time }" pattern="yyyy年-MM月-dd日   hh时:mm分:ss秒" />  </body></html>

----------------------------------------------------------

页面输出结果:

利用导入的包生成系统时间:

2017年-09月-08日 02时:42分:54秒

利用JSP自带的useBean生成系统时间:

2017年-09月-08日 02时:42分:54秒

----------------------------------------------------------