您现在的位置是:首页 > 编程 > 

ssm之八 时间日期格式转换取值

2025-07-28 04:34:18
ssm之八 时间日期格式转换取值 在页面上显示所有雇员数据,注意时间格式已经做了转换,点击编辑,去控制器操作代码语言:javascript代码运行次数:0运行复制<table class="easyui-datagrid" title="雇员" style="width:700px;height:250px" data-opt

ssm之八 时间日期格式转换取值

在页面上显示所有雇员数据,注意时间格式已经做了转换,点击编辑,去控制器操作

代码语言:javascript代码运行次数:0运行复制
<table class="easyui-datagrid" title="雇员" style="width:700px;height:250px"
   data-opti="method:'get',singleSelect:true">
      <thead>
         <tr>
            <th data-opti="field:'t1',width:80">编号</th>
            <th data-opti="field:'t2',width:100">产品</th>
            <th data-opti="field:'t',width:80,align:'right'">价格</th>
            <th data-opti="field:'hiredate',width:100">雇佣时间</th>
            <th data-opti="field:'t4'">操作</th>
         </tr>
      </thead>
      <!-- 写循环; -->
       <c:forEach items="${list }" var="emp">
      <tr>
         <td>${ }</td>
         <td>${ }</td>
         <td>${emp.sal }</td>
         <td><fmt:formatDate value="${emp.hiredate }" pattern="yyyy-MM-dd HH:mm:ss"/></td>
         <td>
            <a href='emp/toAddEmp'>增加</a>
            <a href='emp/getEmp/${}'>编辑</a>
            <a href='emp/${}/deleteEmp'>删除</a>
            <a href='emp/deleteEmp2?empno=${}'>删除2</a>
         </td>
      </tr>
      </c:forEach>
   </table>
ssm之八 时间日期格式转换取值_datetimebox时间问题
ssm之八 时间日期格式转换取值_datetimebox时间问题

点击编辑,emp/getEmp/${},首先要获得当前编号的员工数据,相关dao层等代码,去系列教程前几章查看,本处不再赘述。

代码语言:javascript代码运行次数:0运行复制
@RequestMapping("/getEmp/{empno}")
  public ModelAndView getEmp(@PathVariable("empno")int empno){
    Emp emp=service.getEmp(empno);
    ModelAndView mv=new ModelAndView();
    mv.addObject("emp",emp);
    mv.setViewame("updateEmp");
    return mv;//返回出去的话,有数据,有页面;
  }

可以看到控制器代码查询完毕数据后,去了updateEmp页面,如图

ssm之八 时间日期格式转换取值_数据_0

下面我们查看更新页面代码

代码语言:javascript代码运行次数:0运行复制
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerame()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//WC//DTD HTML 4.01 Transitional//E">
<html>
  <head>
    <base href="<%=basePath%>">
    <title>My JSP 'addUser.jsp' starting page</title>
  <meta http-equiv="pragma" content="no-cache">
  <meta http-equiv="cache-control" content="no-cache">
  <meta http-equiv="expires" content="0">    
  <meta http-equiv="keywords" content="keyword1,keyword2,keyword">
  <meta http-equiv="description" content="This is my page">
  <link rel="stylesheet" href="easyui/themes/default/" type="text/css"></link>
    <link rel="stylesheet" href="easyui/themes/" type="text/css"></link>
    <script type="text/javascript" src="easyui/jquery-1.8..min.js"></script>
  <script type="text/javascript" src="easyui/js"></script>
  <script type="text/javascript" src="easyui/easyui-lang-zh_C.js"></script></head>
  <!--页面数据emp -->
  <body>
  <form method="post" action="emp/updateEmp"> 
    e编号:<input type="text" name="empno" value="${}" readonly id='empno'/><br/>
    姓名:<input type="text" name="ename" value="${ }"/><br/>
    工资:<input type="text" name="sal" value="${emp.sal }"/><br/>
    入职:<input type="text" class="easyui-datetimebox" style="width:180px" data-opti="showSeconds:true"
     name="hiredate" value="${emp.hiredate}"/><br/>${emp.hiredate}
   <input type="submit" value="修改"/>
   </form>
  </body>
</html>

请大家观察下,图1和图2,会发现时间已经出现了问题,为什么呢?我们再更新页面单独输出

代码语言:javascript代码运行次数:0运行复制
${emp.hiredate}代码

会发现时间报的是Thu Apr 06 00:00:00 CST 2017,是2017年4月6日,时间对,但是格式不对。

原来问题的症结出在这里,datetimebox控件默认格式是yyyy-mm-dd HH:mm:ss,而数据库的格式与之不匹配,因此,需要将数据库格式做下转换才可以。

可以在控制器中增加如下代码:

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

String hiredate=sdf.format(emp.getHiredate());

//sdf.setLenient(false);setLenient用于设置Calendar是否宽松解析字符串,如果为false,则严格解析;默认为true,宽松解析

println(hiredate+"----");

mv.addObject("hiredate", hiredate);

在updateEmp页面,时间值为:${hiredate}即可。如图

ssm之八 时间日期格式转换取值_datetimebox时间问题_04
ssm之八 时间日期格式转换取值_datetimebox时间问题_05

其他处理方式:众所周知​​Oracle​​​​数据库​​中的date与众不同,在Easyui中显示数据库的date类型如果不经过转化为显示为Object。因此需要经过处理。

  1. <script type="text/javascript">
  2. function​ formattime(val) {
  3. var​ year=parseInt(val.year)+1900;
  4. var​ month=(parseInt()+1);
  5. month=month>9?month:('0'+month);
  6. var​ date=parseInt(val.date);
  7. date=date>9?date:('0'+date);
  8. var​ hours=parseInt(val.hours);
  9. hours=hours>9?hours:('0'+hours);
  10. var​ minutes=parseInt();
  11. minutes=minutes>9?minutes:('0'+minutes);
  12. var​ seconds=parseInt(val.seconds);
  13. seconds=seconds>9?seconds:('0'+seconds);
  14. var​ time=year+'-'+month+'-'+date+' '+hours+':'+minutes+':'+seconds;
  15. return​ time;
  16. }
  17. </script>

利用js函数实现转换处理也可以。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。 原始发表:2022-0-10,如有侵权请联系 cloudcommunity@tencent 删除easyuissmtext数据数据库

#感谢您对电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格的认可,转载请说明来源于"电脑配置推荐网 - 最新i3 i5 i7组装电脑配置单推荐报价格

本文地址:http://www.dnpztj.cn/biancheng/1254962.html

相关标签:无
上传时间: 2025-07-28 01:26:58
留言与评论(共有 20 条评论)
本站网友 白果作用
8分钟前 发表
而数据库的格式与之不匹配
本站网友 软考成绩
26分钟前 发表
't1'
本站网友 复制的快捷键
2分钟前 发表
首先要获得当前编号的员工数据
本站网友 元武道
10分钟前 发表
ssm之八 时间日期格式转换取值 在页面上显示所有雇员数据
本站网友 电价格
11分钟前 发表
('0'+hours); ​var​ minutes=parseInt(); minutes=minutes>9?minutes
本站网友 小腿粗怎么减
22分钟前 发表
本处不再赘述
本站网友 十六个月宝宝食谱
13分钟前 发表
00
本站网友 魔教教主2
22分钟前 发表
因此需要经过处理
本站网友 宁强二手房
28分钟前 发表
ss
本站网友 鹿回头传奇
15分钟前 发表
"+request.getServerPort()+path+"/"; %> <!DOCTYPE HTML PUBLIC "-//WC//DTD HTML 4.01 Transitional//E"> <html> <head> <base href="<%=basePath%>"> <title>My JSP 'addUser.jsp' starting page</title> <meta http-equiv="pragma" content="no-cache"> <meta http-equiv="cache-control" content="no-cache"> <meta http-equiv="expires" content="0"> <meta http-equiv="keywords" content="keyword1
本站网友 国内运动品牌
29分钟前 发表
't1'
本站网友 网站源代码下载
4分钟前 发表
emp/getEmp/${}
本站网友 麦芽糖是什么
25分钟前 发表
如图ssm之八 时间日期格式转换取值_数据_0下面我们查看更新页面代码代码语言:javascript代码运行次数:0运行复制<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+"
本站网友 新华制药
25分钟前 发表
datetimebox控件默认格式是yyyy-mm-dd HH
本站网友 姬野莉梦
22分钟前 发表
180px" data-opti="showSeconds
本站网友 郑巍
26分钟前 发表
mm
本站网友 山东银联
9分钟前 发表
//"+request.getServerame()+"
本站网友 泰安房产信息网
6分钟前 发表
180px" data-opti="showSeconds
本站网友 大连香洲旅游度假区
26分钟前 发表
是2017年4月6日