`

java時間函數應該注意的地方

阅读更多
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> daily progres report<script type="text/javascript" src="&lt;%=request.getContextPath()%&gt;/jscript/mootools-release-1.11.js"></script><link href="&lt;%=request.getContextPath()%&gt;/css/baseAll.css" rel="stylesheet" type="text/css"> <link href="&lt;%=request.getContextPath()%&gt;/css/base.css" rel="stylesheet" type="text/css"> <style type="text/css"> <!-- .STYLE1 { font-size: 36px; font-family: "Times New Roman", Times, serif; font-weight: bold; } .STYLE2 { font-weight: bold; font-family: "Times New Roman", Times, serif; color: #FF0000; } --> </style> <script type="text/javascript"> function myedit(oid) { var b=oid; var c=b.substring(9,b.length); var pid="1_"+c; //var aid="2_"+c; document.getElementById(pid).readOnly=false; //document.getElementById(aid).readOnly=false; //var docm=document.getElementById(editlist).value; //docm=docm+c+","; //alert(docm); //document.getElementById(edit1).value=docm; } function check1(oid) { var b=oid; var c=b.substring(2,b.length); var you="1_"+c; if(c==0) { var d=Math.round(c)+1; var behind="1_"+d; var a=document.getElementById(behind).value; var e=a.substring(0,a.length-1); var f=document.getElementById(you).value; alert('f='+f+'_a='+a); var g=f.substring(0,f.length-1); var h=Math.round(e); var i=Math.round(g); if(i>h) { document.getElementById("warning").value="錯誤位置﹕第2行﹐第"+d+"欄。"+"錯誤原因:輸入值應該小于后面表格欄位值,大于前面表格欄位的值。"; document.getElementById("show").style.display="block"; document.getElementById("save").disabled="true"; }else{ checkSuccess(); } } var j=document.getElementById("recordtext").value; if(c==j-1) { var d=Math.round(c)-1; var before="1_"+d; var a=document.getElementById(before).value; var e=a.substring(0,a.length-1); var f=document.getElementById(you).value; alert('f2='+f+'_a='+a); var g=f.substring(0,f.length-1); var h=Math.round(e); var i=Math.round(g); if(i<h) { document.getElementById("warning").value="錯誤位置﹕第2行﹐第"+j+"欄。"+"錯誤原因:輸入值應該小于后面表格欄位值,大于前面表格欄位的值。"; document.getElementById("show").style.display="block"; document.getElementById("save").disabled="true"; }else{ checkSuccess(); } } if(c<j-1 && c>0) { var d=Math.round(c)-1; var l=d+2; var before="1_"+d; var behind="1_"+l; var a=document.getElementById(before).value; var k=document.getElementById(behind).value; var e=a.substring(0,a.length-1); var m=k.substring(0,k.length-1); var f=document.getElementById(you).value; var g=f.substring(0,f.length-1); //var h=Math.round(e); //var i=Math.round(g); //var i=Math.round(m); var h =Math.pow(e,3); var i=Math.pow(g,3); var n=Math.pow(m,3); if(i<h || i>n) { document.getElementById("warning").value="錯誤位置﹕第2行﹐第"+l+"欄。"+"錯誤原因:輸入值應該小于后面表格欄位值,大于前面表格欄位的值。"; document.getElementById("show").style.display="block"; document.getElementById("save").disabled=true; } else { checkSuccess(); } } } function checkSuccess(){ document.getElementById("show").style.display='none'; document.getElementById("save").disabled=false; } function reset1() { document.getElementById("show").style.display="none"; document.getElementById("save").disabled=false; } function savehidden(oid) { //alert("ddd"); var a=oid; var b=a.substring(2,a.length); var c="1_"+b; var d=document.getElementById(c).value; //alert(d); var e="w_"+b document.getElementById(e).value=d; } //Ajax------------------------------------- var myAjax; function first() { var a=document.getElementById("subid").value; var url="<%=request.getContextPath()%>/tms/testdrive/teststatus.do?method=DailyProgressAjax&&subid="+a+"&&start1="+document.getElementById("start1").value+"&&end1="+document.getElementById("end1").value; second(url); } function second(url){ myAjax = new Ajax(url,{method: 'post',onComplete:third}); myAjax.setHeader('RequestType','ajax'); myAjax.request(); } function third(txt,xml) { //alert(xml.xml); var len=document.getElementById("recordtext").value; var tag=xml.getElementsByTagName("str"); if(tag.length>0) for(var i=0;i<len;i++) { document.getElementById("1_"+i).value=tag[i].firstChild.nodeValue+"%"; } } function getSave() { var recordtext = document.getElementById("recordtext").value; var subid = document.getElementById("subid").value; var start1 = document.getElementById("start1").value; var end1 = document.getElementById("end1").value; document.myform.action = 'teststatus.do?recordtext='+recordtext+'&subid='+subid+'&start1='+start1+'&end1='+end1; document.myform.submit(); } </script>
Daily Progress
result=(List) request.getAttribute("tdpmlist"); Integer alen=result.size(); if(result!=null && result.size()>0) { System.out.println("Hello World!"); } long end = Long.parseLong(request.getAttribute("end1").toString()); long start =Long.parseLong(request.getAttribute("start1").toString());//select start SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); //System.out.println("=start="+sdf.format(start)); //System.out.println("=end="+sdf.format(end)); String t = sdf.format(new Date()); long today = 0; try { today = sdf.parse(t).getTime(); } catch (ParseException e) { e.printStackTrace(); } %>
today){ countDay = (end - today)/(1000*3600*24); int passDay = 0; for(j=i;j<countday passday="passDay" string s="" try java.util.date tempday='sdf.parse("2002-02-28");' long tempday2="1000*3600*24*passDay" today tempday.settime catch e e.printstacktrace><td> <input type="text" value="&lt;%=s%&gt;" id="&lt;%=0%&gt;_&lt;%=j%&gt;" name="&lt;%=0%&gt;_&lt;%=j%&gt;" readonly> </td> </countday> 3) //{ //str=str.substring(0,3); //} str=str+"%"; //System.out.println("r="+r+"___str=="+str); planStr = str; planId =id; %> today){ for(j=i;j<countday><td> <input type="text" id="&lt;%=1%&gt;_&lt;%=j%&gt;" name="&lt;%=1%&gt;_&lt;%=j%&gt;" value="&lt;%=planStr%&gt;" onchange="check1(this.id)"><input type="hidden" id="w_&lt;%=j%&gt;" name="w_&lt;%=j%&gt;"><input type="hidden" id="3_&lt;%=j%&gt;" name="3_&lt;%=j%&gt;" value="&lt;%=planStr%&gt;"><input type="hidden" id="4_&lt;%=j%&gt;" name="4_&lt;%=j%&gt;" value="&lt;%=planId%&gt;"> </td> </countday> 3) { str=str.substring(0,4); } str=str+"%"; } else { str="N/A"; } actualStr=str; %> today){ for(j=i;j<countday><td> <input type="text" value="&lt;%=actualStr%&gt;" id="&lt;%=2%&gt;_&lt;%=j%&gt;" name="&lt;%=2%&gt;_&lt;%=j%&gt;" readonly> </td> </countday>
Date <!-- <input type="button" value="Edit" id="button_<%=0%>_<%=temp%>" onclick="myedit(this.id)"> -->
Plan
Actual




分享到:
评论

相关推荐

    Java编程思想(完整版)

    2.6 构建Java程序:正式构建自己的第一个Java程序前,还有几个问题需要注意。 2.6.1 名字的可见性 2.6.2 使用其他组件 2.6.3 static关键字 2.7 我们的第一个Java程序 2.8 注释和嵌入文档 2.8.1 注释文档 2.8.2 具体...

    java 编程入门思考

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    Java初学者入门教学

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    java联想(中文)

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    JAVA_Thinking in Java

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    Thinking in Java简体中文(全)

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    Thinking in Java 中文第四版+习题答案

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    java 面试题 总结

     GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收...

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm

    JAVA_Thinking in Java(中文版 由yyc,spirit整理).chm ------------------------------------------------- 本教程由yyc,spirit整理 ------------------------------------------------- “Thinking in Java...

    超爽的自学课件(java)

    &lt;br&gt;(2) 第2章:一切都是对象 本章将大家带到可以着手写自己的第一个Java程序的地方,所以必须对一些基本概念作出解释,其中包括对象“句柄”的概念;怎样创建一个对象;对基本数据类型和数组的一个介绍;...

    Think in Java(中文版)chm格式

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1...

    Thinking in Java(中文版 由yyc,spirit整理).chm

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    超级有影响力霸气的Java面试题大全文档

     GC是垃圾收集的意思(Gabage Collection),内存处理是编程人员容易出现问题的地方,忘记或者错误的内存回收会导致程序或系统的不稳定甚至崩溃,Java提供的GC功能可以自动监测对象是否超过作用域从而达到自动回收...

    java认证所有课程

    这个范例中的一些地方值得注意。它们将在以下的几节中讨论。 定义多重接口 这个类由第4行中的如下代码声明: implements MouseMotionListener, MouseListener 声明多个接口时,可以用逗号隔开。 监听多个源 如果...

    java线程池概念.txt

    3:对线程池的基本使用及其部分源码的分析(注意:这里的源码分析是基于jdk1.6;) a:线程池的状态 volatile int runState; static final int RUNNING = 0; 运行状态 static final int SHUTDOWN = 1; 关闭状态;...

    java-servlet-api.doc

    Java Servlet API说明文档 绪言 这是一份关于2.1版JavaServletAPI的说明文档,作为对这本文档的补充,你可以到http://java.sun.com/products/servlet/index.html下面下载Javadoc格式的文档。 谁需要读这份文档 这份...

    ThinkInJava

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    thinkinjava

    1.7 对象的创建和存在时间 1.7.1 集合与继承器 1.7.2 单根结构 1.7.3 集合库与方便使用集合 1.7.4 清除时的困境:由谁负责清除? 1.8 违例控制:解决错误 1.9 多线程 1.10 永久性 1.11 Java和因特网 1.11.1 什么是...

    DWR.xml配置文件说明书(含源码)

    这里有两个地方需要注意: 仅仅通过反射方法没有办法知道集合元素中的类型,所以上面的两个converter能将任何集合转换成相对javascript而言有意义的对象.然而没有办法将不同的集合类类型分别采用不同的转换方法.因为...

    深入理解Android:卷I--详细书签版

    2.3.2 Java的native函数和总结 17 2.4 JNI层MediaScanner的分析 17 2.4.1 注册JNI函数 18 2.4.2 数据类型转换 22 2.4.3 JNIEnv介绍 24 2.4.4 通过JNIEnv操作jobject 25 2.4.5 jstring介绍 27 2.4.6 JNI类型...

Global site tag (gtag.js) - Google Analytics