让你的struts能处理日期类型

水环境综合管控平台完整方案 水环境综合管控平台项目(2026-2027)摘要 项目概况: 总投资5亿元的水环境综合管控平台项目,是国家数字政府与生态文明建设战略的重要实践。项目严格遵循2026年最新政策标准,整合物联网、大数据和AI技术,构建覆盖水质监测、污染溯源、生态保护等全流程的智能管控体系。 核心内容: 系统架构:采用五层设计(基础设施层至展示层),集成10大核心功能模块,包括水质动态监测、污染智能溯源和生态评估预警系统; 技术创新:运用2026年最新边缘计算和数字孪生技术,实现毫秒级水质异常响应和三维流域仿真; 实施规划:分7 阅读详情

struts使用日期包括将string自动转化为日期fill到form中,以及将form中的日期按照指定格式显示在html的textfield中。首先讲第一种情况的解决方法:

创建如下类:

import java.util.*;
import org.apache.commons.beanutils.*;
import java.text.SimpleDateFormat;

public class DateConvert implements Converter
{
  static SimpleDateFormat df = new SimpleDateFormat("yyyy/MM/dd");
  public DateConvert()
  {

  }
  public Object convert(Class type, Object value)
  {
   
    if(value==null)return null;
    if(((String)value).trim().length()==0) return null;

    if(value instanceof String)
    {
      try
      {
        return df.parse((String)value);
      }
      catch (Exception ex)
      {
        throw new ConversionException("输入的日期类型不合乎yyyy/MM/dd"
          + value.getClass());
      }

    }
    else
    {
      throw new ConversionException("输入的不是字符类型"+value.getClass());
    }

  }
}

然后在你的系统某出使用如下(如web的init方法)
ConvertUtils.register(new DateConvert(),java.util.Date.class);
参数用于表示DateConvert类负责处理java.util.Date类型的转化

第二种情况是如何显示form中日期类型到html:text中,我用的办法是修改struts的代码,重新生成一个新的struts.jar
org.apache.struts.taglib.html.BaseFieldTag的doStartTag的方法
找到 if (value != null) {results.append(ResponseUtils.filter(value))代码行下面的内容,需要修改此处代码,以便输出日期类型
如下:
if (value != null) {
            results.append(ResponseUtils.filter(value));
        } else if (redisplay || !"password".equals(type)) {
            Object value = RequestUtils.lookup(pageContext, name, property, null);
            //System.out.println("lijz "+value);
            if(value instanceof java.util.Date)
            {
               //System.out.println("date="+value);
               if (value == null)
                   value = "";
        else
        {
          java.util.Date d= (java.util.Date)value;
          try
           {

            results.append(ResponseUtils.filter(df.format(d)));
          }
          catch(Exception ex)
          {
            System.out.println("form error:"+ex.getMessage());
          }
          }
            }
           else
           {
               if (value == null)
                value = "";
                results.append(ResponseUtils.filter(value.toString()));
           }
          
       }
        results.append("/"");
        results.append(prepareEventHandlers());
        results.append(prepareStyles());
        results.append(getElementClose());

        // Print this field to our output writer
        ResponseUtils.write(pageContext, results.toString());

        // Continue processing this page
        return (EVAL_BODY_TAG);     
 
 重新编译struts成struts.jar.放到你需要的项目中
 
 原理不用多说,看看struts源代码就明白了 :)
希望能提高大家的开发效率

手把手教你用迅为RK3588核心板搭建无人机飞控系统(附完整开发指南) 本文详细介绍了如何利用迅为RK3588核心板搭建高性能无人机飞控系统,涵盖硬件选型、开发环境配置、传感器数据融合、控制算法实现及系统测试全流程。RK3588凭借其强大的计算能力和丰富接口,为无人机控制解决方案提供了理想平台,特别适合需要实时处理的复杂飞行任务。 阅读详情

相关推荐

3D IC中Memory-on-Logic堆叠测试的DFT解决方案与工程实践

在半导体行业,随着摩尔定律逼近物理极限,3D IC技术通过芯片垂直堆叠实现性能提升和异构集成,已成为重要发展方向。其核心原理是利用硅通孔(TSV)或微凸块实现芯片间电气互连,将多个不同功能的芯片(如逻辑芯片与存储芯片)集成在一个封装内。这项技术的核心价值在于能大幅提升系统性能、降低功耗并实现更小的封装尺寸。然而,芯片堆叠后,传统的测试方法面临巨大挑战,尤其是测试访问存在物理屏障,无法直接探测被覆盖的芯片接口。为此,可测试性设计(DFT)成为确保3D IC可靠性与量产可行性的关键技术。它通过在设计阶段植入专用

weixin_42521058的博客 632

java xss编码注入漏洞,Java编码安全漏洞之:跨站

Reflected_XSS_All_Clients反射跨站,来自用户的数据直接输出到客户端。修复建议使用跨站修复函数处理输出到客户端的数据字符串。修复示例如:public void XSS(HttpServletRequest request, HttpServletResponse response){String text = request.getParameter("text");Syst...

weixin_35941667的博客 2136

新手必看!Stata工具变量分析中的三大陷阱:如何正确解读LM统计量、CDW检验和Hansen J值

本文深度解析Stata工具变量分析中的三大核心检验:不可识别检验、弱IV检验和过度识别检验,帮助新手避开常见陷阱。详细解读LM统计量、CDW检验和Hansen J值的正确使用方法,提供实战案例和Stata操作指南,确保研究结论的可靠性。

weixin_29231027的博客 574

菜鸟也封装之Struts全文折叠标签.

有写网站会看到对过长的内容采用折叠.例如:优酷如下图图 1图 2当然我们可以用JSTL标签来实现该功能,为什么不刚才封装一个实用标签那?同时我们能够减少页面标签.实现我们定义一个类,基础BodyTagSupport代码如下:package org.apache.struts.taglib.custom;import javax.servlet.jsp.JspExce

KangC0701的专栏 1371

5.4 磁悬浮轴承控制系统仿真:在MATLAB/Simulink中搭建包含功放、传感器模型的闭环系统模型,进行稳定性与动态性能仿真

磁悬浮轴承控制系统仿真方法 摘要:磁悬浮轴承控制系统仿真需建立包含转子动力学、传感器、控制器、功率放大器和电磁执行器的高保真非线性模型。通过MATLAB/Simulink搭建闭环系统,重点建模传感器带宽限制与噪声、功放饱和特性以及电磁力非线性。仿真分析包括时域阶跃响应、扰动抑制测试,频域稳定性分析(伯德图、奈奎斯特图),以及参数摄动下的鲁棒性验证。关键要验证控制算法在非线性因素影响下的稳定性和动态性能,为实际系统实现提供可靠依据。仿真中需特别注意物理量单位一致性和数字控制离散化效应。

技术工作者 1108

DDS信号发生器设计避坑指南:从AD9834配置到巴特沃斯滤波实战

本文详细解析了基于AD9834芯片的DDS信号发生器设计中的关键技术要点与常见陷阱,涵盖时钟源选择、寄存器配置时序、巴特沃斯滤波器设计等核心内容。针对中高频段信号质量优化,提供了实用的解决方案和代码示例,帮助工程师规避设计误区,提升信号发生器的性能和稳定性。

2y3u4i5o6p的博客 786

原代码审计笔记-安全缺陷

目录 原代码审计笔记-安全缺陷 URL重定向: 不安全的SSL(过于宽泛的证书信托): 反射型跨站脚本: 路径操纵: 拒绝服务(StringBuilder): 整数溢出: J2EE错误配置(过度会话超时): 代码正确性:字节数组到字符串转换: 原代码审计笔记-安全缺陷 URL重定向: 问题示例: protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException .

scdncby的博客 6187

STM32单片机远程升级

stm32远程升级

fang_yang_wa的博客 1万+

java filter response_使用java的自定义过滤器Filter 处理请求request 并响应response

packagecom.enation.eop;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStream;importjava.io.InputStreamReader;importjava.io.PrintWriter;importjava.util.Collection;importjava....

weixin_33253331的博客 397

IEC 104电力规约详细解读(五) - 遥控

主站下发遥控选择命令,子站进行遥控选择返校,若成功则回答遥控选择成功报文,若失败则回答失败报文。主站下发取消遥控命令或者遥控执行命令行。子站皆以报文的镜像确认。遥控命令用来实现对一个可操作设备状态的改变。在配电自动化中,包括单点命令和双点命令。通常,单点命令用于控制单点信息对象;双点命令用于控制双点信息对象。

张二狗的博客 7353

5.3-集群电源模式解析

DSU-120 DynamIQ™集群支持9种电源模式,包括正常运行(ON)、完全断电(OFF)、三种数据保持模式(FUNC_RET、FULL_RET、MEM_RET)、两种调试模拟模式(OFF_EMU、MEM_RET_EMU),以及系统恢复模式(WARM_RST、DBG_RECOV)。这些模式通过智能管理电源状态,在保持数据完整性的同时实现功耗优化,并为系统调试和故障恢复提供支持。不同模式在RAM保持、逻辑断电和调试能力方面各有侧重,满足从正常运行到深度调试等不同场景需求。

baron-周贺贺-代码改变世界ctw 117

拼凑xml时处理特殊字符以及<bean:write filter="true"以及escapeHTM

写ajax时最容易输出xml的就是拼凑字符串拉 如何处理特殊字符串是个问题 参见以下两种方法 http://webdev.csdn.net/page/96ba432b-af4a-412c-9684-2935c617faeb   对如我而言,我需要在html页面上显示的,我只需要把特殊字符串转为实体字符     &amp;lt; &lt; 小于号 &amp;gt; &...

mingren444的博客 322

国科大学习资料--人工智能原理与算法-第六次作业解析(学长整理)

国科大学习资料–人工智能原理与算法-第六次作业解析(张文生老师主讲)(6.6、6.7、6.11) 6.6 说明如何通过使用辅助变量把诸如A+B=C这样的三元约束转变成三个二元约束。假设值域是有限的。(提示:考虑引进新变量表示变量对的值,引进约束如“X是Y变量对中的第一个元素”。)然后说明如何把多于三个变量的约束类似地转换为二元约束。说明如何通过改变变量的值域来消除一元约束。这就完整演示了任何CSP都可以转变为只含二元约束的CSP。 答:首先,我们引入一个新变量AB,假设A和B的范围均为N,AB的范围为N×N

无名何许人的博客 2872

基于Converter解决Struts无法处理日期类型的问题

 基于Struts做应用程序开发的时候,对日期数据的处理,这个是最常见的,由于Struts默认是不支持自动将网页POST的数据自动转化成Date型数据,所以,很多程序员就直接在ActionForm当中直接使用String,然后在Action当中再进行字符串跟日期数据的处理。那假如在ActionForm当中是使用Date类型呢?会出现什么问题?能用什么样的解决办法?我们先看一下在ActionForm

wangle100wangle的专栏 582

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

让struts能处理日期类型

struts使用日期,将string自动转化为日期放到到form中 在页面上输入日期类型的字符串,在action中直接拿到日期类型的数据 添加类 [code] import java.util.*; import org.apache.commons.beanutils.*; import java.text.SimpleDateFormat; public class Da...

花香蝶自来-学无止境 138

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

基于Converter解决Struts1无法处理日期类型的问题

转自http://www.suneca.com 基 于Struts做应用程序开发的时候,对日期数据的处理,这个是最常见的,由于Struts默认是不支持自动将网页POST的数据自动转化成Date型数 据,所以,很多程序员就直接在ActionForm当中直接使用String,然后在Action当中再进行字符串跟日期数据的处理。 那假如在 ActionForm当中是使用Date类型...

Jay Chang 213

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

struts1 处理日期类型转换

从在页面传过来的日期类型为String类型(用struts1 form封装),需要在action中转换为java.util.Date类型。 // Copy to business object from ActionForm,将actionForm中的属性赋值到实体类中; BeanUtils.copyProperties( dest, orig); 页面的日期是String型,Ac...

hyshucom 165

[Struts]处理表单中值为空的日期类型字段

在示范中心项目中,我们把ActionForm中日期类型的字段指定为String类型,而在对应的JavaBean中指定为java.sql.Date类型。当用户提交表单的时候,在Action里使用BeanUtils.copyProperties()方法从ActionForm构造JavaBean对象(详见利用BeanUtils在对象间复制属性)。这个方法在大部分时候都很好,但有一个问题,就是当...

diaozhuo4700的博客 193

Struts 1 中“日期类型”的表单数据处理

在表单中填写日期是个很常见的情况。在Struts 1的ActionForm中,可以根据要提交的表单数据创建对应的ActionForm Bean属性,属性的类型支持Java的基本数据类型及其包装类,还有字符串,也就是说如果你将ActionForm Bean的属性类型设为(int),Struts会自动将无法正常转换为int类型的数据都转换为0(如果属性类型为包装类,则可能得到null),可以用于实

CaiKanXP的专栏 3031
上一篇: 值得收藏的BLOG
下一篇: Sun公布Java服务器源代码? 矛头直指IBM BEA
csdnloading
博客等级 码龄11年 0粉丝 59原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值