weblogic 教程中date

微信公众号
php中data()函数与时间不准确做法
Loading...
date_default_timezone_set(PRC);&&
/*把时间调到北京时间,php教程5默认为格林威治标准时间*/
a:&& &am&或是&pm&
A:&& &AM&或是&PM&
d:&& 几日,两位数字,若不足则补零;从&01&至&31&
D:&&& 星期几,3个英文字母,如:&Fri&
F:&&& 月份,英文全名,如:&January&
h:&&& 12小时制的小时,从&01&至&12&
H:&&& 24小时制的小时,从&00&至&23&
g:&&& 12小时制的小时,不补零;从&1&至&12&
G:&&& 24小时制的小时,不补零;从&0&至&23&
j:&&& 几日,不足不被零;从&1&至&31&
l:&&& 星期几,英文全名,如:&Friday&
m:&&& 月份,两位数字,从&01&至&12&
n:&&& 月份,两位数字,不补零;从&1&至&12&
M:&&& 月份,3个英文字母;如:&Jan&
s:&& 秒;从&00&至&59&
S:&&& 字尾加英文序数,两个英文字母,如:&21th&
t:&&& 指定月份的天数,从&28&至&31&
U:&&& 总秒数
w:&&& 数字型的星期几,从&0(星期天)&至&6(星期六)&
Y:&&& 年,四位数字
y:&&& 年,两位数字
z: 一年中的第几天;从&1&至&366&
==================================================================
1,年-月-日
表示年可以用大写的Y和小写y;
表示月可以用大写F、大写M、小写m和小写n(分别表示字符和数字的两种方式);
表示日可以用小写d和小写j,大写S表示日期的后缀。
echo date('Y-m-j');
echo date('y-n-j');
大写Y表示年四位数字,而小写y表示年的两位数字;
小写m表示月份的数字(带前导),而小写n则表示不带前导的月份数字。
echo date('Y-M-j');
2007-Feb-6
echo date('Y-m-d');
大写M表示月份的3个缩写字符,而小写m则表示月份的数字(带前导0);
没有大写的J,只有小写j表示月份的日期,无前导o;若需要月份带前导则使用小写d。
echo date('Y-M-j');
2007-Feb-6
echo date('Y-F-jS');
2007-February-6th
大写M表示月份的3个缩写字符,而大写F表示月份的英文全写。(没有小写f)
大写S表示日期的后缀,比如&st&、&nd&、&rd&和&th&,具体看日期数字为何。
2,时:分:秒
默认情况下,PHP解释显示的时间为&格林威治标准时间&,与我们本地的时间相差8个小时。
echo date('g:i:s a');
5:56:57 am
echo date('h:i:s A');
05:56:57 AM
小写g表示12小时制,无前导0,而小写h则表示有前导0的12小时制。
当使用12小时制时需要表明上下午,小写a表示小写的&am&和&pm&,大写A表示大写的&AM&和&PM&。
echo date('G:i:s');
大写G表示24小时制的小时数,但是不带前导的;使用大写的H表示带前导的24小时制小时数
字母g表示小时不带前导,字母h表示小时带前导;
小写g、h表示12小时制,大写G、H表示24小时制。
3,闰年、星期、天
echo date('L');
今年是否闰年:0
echo date('l');
今天是:Tuesday
echo date('D');
今天是:Tue
大写L表示判断今年是否闰年,布尔值,为真返回1,否则为0;
小写l表示当天是星期几的英文全写(Tuesday);
而使用大写D表示星期几的3个字符缩写(Tue)。
echo date('w');
今天星期:2
echo date('W');
本周是全年中的第 06 周
小写w表示星期几,数字形式表示
大写W表示一年中的星期数
echo date('t');
本月是 28 天
echo date('z');
今天是今年的第 36 天
小写t表示当前月份又多少天
小写z表示今天是本年中第几天
echo date('T');
大写T表示服务器的时间区域设置
echo date('I');
大写I表示判断当前是否为夏令时,为真返回1,否则为0
echo date('U');
大写U表示从日到现在的总秒数,就是Unix时间纪元的UNIX时间戳。
echo date('c');
T14:24:43+00:00
小写c表示ISO8601日期,日期格式为YYYY-MM-DD,用字母T来间隔,时间格式为HH:MM:SS,时区使用格林威治标准时间(GMT)的偏差来表示。
echo date('r');
Tue, 06 Feb :52 +0000
小写r表示RFC822日期。
5、格式化时间
echo $row[&t_time&];&&& 将输出
echo date(&Y-m-d&,($row[&t_time&]));&& 将输出
注,由于$row[&t_time&]得到的时间已经是一个字符串,所以需要用strtotime( 字串转时间戳)转一下,否则输出的错误
今天用echo $showtime=date(&Y-m-d H:i:s&)获取系统时间时,发现获取的时间与系统的时间不符。
研究了一番发现,PHP默认设置的时间是以格林威治时区为标准的,所以我们必须把PHP的时区设定改为北京时间。
操作方法:
打开php.ini文件,一般在PHP的安装根目录下
找到其中的;date.timezone
删掉date.timezone前面的分号,并改成date.timezone = PRC
存盘,并重新启动Apahce服务(有时用Apache的restart功能会有问题,建议先stop然后再start)
让我们重新检验一下echo $showtime=date(&Y-m-d H:i:s&)。
echo date('Y-m-d');
解决方法就是修改目录下的php.ini文件里的date.timezone
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
; date.timezone =
; Defines the default timezone used by the date functions
; http://php.net/date.timezone
date.timezone = Asia/Shanghai
相关推荐:1、2、3、4、5、6、7、8、9、10、
猜你喜欢:1、2、3、4、5、6、7、8、9、10、
推荐电影:1、2、3、4、5、6、7、8、9、10、
热门关键词:
随机关键词:
正在加载...
热评文章评分 4.1, 满分 5 星10 票评分 3.7, 满分 5 星10 票评分 3.7, 满分 5 星10 票评分 3.6, 满分 5 星10 票评分 3.6, 满分 5 星10 票访问Weblogic中部署的ADF应用时,报ORA-01005错误_数据库技术_Linux公社-Linux系统门户网站
你好,游客
访问Weblogic中部署的ADF应用时,报ORA-01005错误
来源:Linux社区&
作者:luyushuang
今天在将 Summit Demo 部署到独立的Weblogic中时,一直报ORA-01005异常;在Integrated Weblogic中运行则是一直正常。
主要异常Log如下:
####&Apr 29, :40 PM CST& &Notice& &Diagnostics& && &AdminServer& &[STANDBY] ExecuteThread: '5' for queue: 'weblogic.kernel.Default (self-tuning)'& &&WLS Kernel&& && &11d1def534ea1be0:-294091cd:13e00-08d4& &2& &BEA-320068& &Watch 'UncheckedException' with severity 'Notice' on server 'AdminServer' has triggered at Apr 29, :39 PM CST. Notification details: WatchRuleType: Log WatchRule: (SEVERITY = 'Error') AND ((MSGID = 'WL-101020') OR (MSGID = 'WL-101017') OR (MSGID = 'WL-000802') OR (MSGID = 'BEA-101020') OR (MSGID = 'BEA-101017') OR (MSGID = 'BEA-000802')) WatchData: DATE = Apr 29, :39 PM CST SERVER = AdminServer MESSAGE = [ServletContext@[app:SummitADF_application1 module:SummitADF-ViewController-context-root path:/SummitADF-ViewController-context-root spec-version:2.5]] Servlet failed with Exceptionoracle.jbo.NoDefException: JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-25058. Error message parameters are {0=Attribute, 1=Id, 2=Id}&at oracle.jbo.uicli.binding.JUCtrlValueBinding.getAttributeDef(JUCtrlValueBinding.java:552)&... ...&... ...
Caused By: oracle.jbo.DMLException: JBO-29114 ADFContext is not setup to process messages for this exception. Use the exception stack trace and error code to investigate the root cause of this exception. Root cause error code is JBO-26061. &at oracle.jbo.server.ConnectionPool.createConnection(ConnectionPool.java:207)&... ...&... ...&Caused By: java.sql.SQLException: ORA-01005: logon denied&at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:462)&... ...&... ...
不理解为何密码会是空,还好有谷哥,解决方案:&在FMW_HOME/user_projects/domains/yourdomain/bin/setDomainEnv.sh中的JAVA_PROPERTIES中加如下参数:
-Djps.app.credential.overwrite.allowed=true
JAVA_PROPERTIES="-Dplatform.home=${WL_HOME} -Dwls.home=${WLS_HOME} -Dweblogic.home=${WLS_HOME} -Djps.app.credential.overwrite.allowed=true "
然后重启Weblogic,再访问应用,一切正常。。。
&更多Oracle相关信息见 专题页面
相关资讯 & & &
图片资讯 & & &
   同意评论声明
   发表
尊重网上道德,遵守中华人民共和国的各项有关法律法规
承担一切因您的行为而直接或间接导致的民事或刑事法律责任
本站管理人员有权保留或删除其管辖留言中的任意内容
本站有权在网站内转载或引用您的评论
参与本评论即表明您已经阅读并接受上述条款服务器:weblogic的jsp问题解决方法 ― IT技术 - 赛迪网
服务器:weblogic的jsp问题解决方法
发布时间: 08:04&&&& 来源:赛迪网论坛&&&&作者:
问题1:weblogic&的数据库连接数目在程序运行中不断增长,最后连接数目超过最大数,导致weblogic服务关闭原因:在操作完数据库后,没有关闭数据库连接;或者是返回结果集(Resultset),而无法在jsp中关闭数据库连接。解决方法:1.&&&&在操作完数据库要关闭数据库连接。2.&&&&尽量不要返回结果集Resultset,&可以返回Vector(一个字段)、Hashtable(多个字段),这样可以在javabean中关闭数据库。3.&&&&如果javabean中返回的是结果集(Resultset),也可以在javaBean中写一个connectDB(连接数据库)、closeDB(关闭数据库)的方法,然后jsp里面调用connectDB(),建立数据库连接,同时就可以对数据库进行操作了,操作数据库完毕,可以通过closeDB()&来关闭数据库。使用第二种方法问题2:在运行某一个jsp&程序的时候,weblogic&的内存陡然增长,而且居高不下。最终导致weblogic&内存不足,甚至当机。原因:过度使用内存。解决方法:1.&&&&由于数据量比较大,在对字符串进行操作的时候,使用&+&进行字符串连接,而&&&相信大家对String都非常熟悉,我们也经常要用它来做字符串的连接什么的,例如:String&a&=b+c&file://b,c&都是String&但是在实际的编译中却是这样:&String&a=new&StringBuffer().append(b).append(c).toString()&显然,在一个简单的语句中却意外的多生成了2个对象:.StringBuffer()&.toString返回的一个String我们比较一下这两段程序的性能:程序片断一:StringBuffer&s=new&StringBuffer();long&start&=&System.currentTimeMillis();for&(int&i=0;i<10000;i++){s1+="a";}long&stop&=&System.currentTimeMillis();System.out.println(stop-start);程序片断二:&StringBuffer&s=new&StringBuffer(10000);//long&start=System.currentTimeMillis();&for&(int&i=0;i<10000;i++){s.append("a");&}long&stop=System.currentTimeMillis();System.out.println(stop-start);比较一下结果,差距很明显。至于为什么String的连接这么做,因为String无法直接改变其长度,而必须采用StringBuffer的用法。因此建议使用StringBuffer&的append&方法来进行字符串相连。2.&&&&在解决这个问题的时候,我也尝试使用上面的方法,效果并不是很明显(消耗内存上)。后来在显示大量数据的时候,避免字符串相连的步骤,而直接使用out.println(),直接输出。问题3:Java并不阻止程序占用过多的内存,当对象向堆所请求的内存不足时,垃圾收集器(Garbage&Collector)就会自动启动,释放那些引用数为零的对象所占用的内存,Java也不会自动释放无用的对象的引用,如果程序忘记释放指向对象的引用,则程序运行时的内存随着时间的推移而增加,发生所谓内存泄漏(memory&leaks),创建对象不但消耗CPU的时间和内存,同时,为释放对象内存JVM需不停地启动垃圾收集器(Garbage&Collector),这也会消耗大量的CPU时间。&&&&&解决方法:&由于在运行一段时间jsp程序后,weblogic&的内存会有一个缓慢的增长,这样也会导致内存溢出,为了避免这总现象的出现,最终的解决方法是:&编写一个servlet程序,在启动服务器的时候,启动一个这个servlet,每隔20分钟运行在服务器端运行一次,来定时回收内存。&问题4:log文件里面的调试信息没有注释去掉。&解决方法:在程序通过后,尽量把调试的信息注释去掉。同时在捕捉错误的时候要写明程序名称,方便查找,这一点做的还不够。最好能写一个记录log的方法,以便程序调用。问题5改善性能,提高速度。具体实例:&我们再来看一个有关Vector类的代码片段:for(int&I=0;&I<v.size();&I++)&{&System.out.println(&v.get(I).getClass().toString());&}如果v包含100,000个元素,这个代码片段将调用v.size()方法100,000次。虽然size方法是一个简单的方法,但它仍旧需要一次方法调用的开销,至少JVM需要为它配置以及清除堆栈环境。在这里,for循环内部的代码不会以任何方式修改Vector类型对象v的大小,因此上面的代码最好改写成下面这种形式:int&size&=&v.size();&for(int&I=0;&I<&I++)&{&System.out.println(&v.get(I).getClass().toString());&}虽然这是一个简单的改动,但它仍旧赢得了性能。毕竟,每一个CPU周期都是宝贵的。问题&6:在&jsp&文件里面&不要写&因为java&不需要引入此包就可以引用里面的类文件。问题7:使用vector+hashtable&一次返回查询结果resulset.解决方法:&记录集:将一条记录放到一个hashtable里面,然后把它再&&&&&&&添加到vector里面,循环记录下结果集,返回vector具体见后面的java文件的部分代码(不包扩数据库的连接和关闭)&package&/********************************************&*****&Title:&&&&&&hashtable_vector_rs&&&*****&Description:&数据显示&&&&&&&&&&&&*****&Copyright:&&Copyright&(c)&2002&&&&*****&Company:&&&&&&&DHC&&&&&&&&&&&&&*****&author:&&&&&wangyl&&&&&&&&&&&&&&&&*****&version:&&&&1.0&&&&&&&&&&&&&&&&&&&*****&说明:&*****&记录集:一条记录用放到一个hashtable里面,然后把它再&&&&&&&放到vector里面,循环记录下结果集,返回vector&&&&&&&*********************************************/import&java.io.*;import&java.sql.*;import&java.util.*;import&java.text.*;public&class&hashtable_vector_rs{&&&&/*----------------------------------------------------------------*/&&&&/*&函数名称:&getMultiRowInfo&&&&/*&功能描述:&返回记录集,放到Hashtable里面&&&&/*&参数:&&&&sql&语句,字段个数&&&&/*&返回值:&&&成功---htable,&失败---null&&&&/*----------------------------------------------------------------*/&&&&public&Vector&ListResult(String&sqlStatement,int&num)&&&&{&&&&&&&&Vector&ListRs=new&Vector();&&&&&&&&&&&&&&&&try&&&&&&&&{&&&&&&&&&&&&connectDB();&&&&&&&&&&&&rs=stmt.executeQuery(sqlStatement);&&&&&&&&&&&&//判断字段数据类型&&&&&&&&&&&&&//date型&返回&93&&&&&&&&&&&&&//int型&返回&2,4&&&&&&&&&&&&//bigint型&返回&3&&&&&&&&&&&&&//String型&返回&12&&&&&&&&&&&&//(char&型)返回&1&&&&&&&&&&&&int&t&=&-1;&&&&&&&&&&&&rsmd&=&rs.getMetaData();&&&&&&&&&&&&int&ColumnCount=0;&&&&&&&&&&&&if(num>0)&&&&&&&&&&&&&&&&ColumnCount&=&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&ColumnCount&=&rsmd.getColumnCount();&&&&&&&&&&&&while(rs.next())&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&Hashtable&htable&=new&Hashtable();&&&&&&&&&&&&&&&&for&(int&i&=&1;&i&<=&ColumnC&i++)&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&t=rsmd.getColumnType(i);&&&&&&&&&&&&&&&&&&&&System.out.println("i="+i+",t="+t+"name="+rsmd.getColumnName(i));&&&&&&&&&&&&&&&&&&&&&if(t==12||t==1||t==3)&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&if(rs.getString(i)==null||&rs.getString(i).equals(""))&&&&&&&&&&&&&&&&&&&&&&&&&&&&htable.put(rsmd.getColumnName(i),"");&&&&&&&&&&&&&&&&&&&&&&&&else&&&&&&&&&&&&&&&&&&&&&&&&&&&&htable.put(rsmd.getColumnName(i),rs.getString(i));&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&if(t==93)&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&htable.put(rsmd.getColumnName(i),rs.getDate(i).toString());&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&&&&&else&if(t==2||t==4)&&&&&&&&&&&&&&&&&&&&{&&&&&&&&&&&&&&&&&&&&&&&&htable.put(rsmd.getColumnName(i),Integer.toString(rs.getInt(i)));&&&&&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&}&&&&&&&&&&&&&&&&ListRs.add(htable);&&&&&&&&&&&&}//e&&&&&&&&&&&&return&ListRs;&&&&&&&&&&&&&&&&&&&&&&&&}&&&&&&&&catch(Exception&listError)&&&&&&&&{&&&&&&&&&&&&System.out.println("数据库操作失败!"+listError);&&&&&&&&&&&&return&&&&&&&&&}&&&&&&&&&finally&&&&&&&&{&&&&&&&&&&&&try&&&&&&&&&&&&{&&&&&&&&&&&&&&&&closeDB();&&&&&&&&&&&&}&&&&&&&&&&&&&&&&catch(Exception&closeErr)&&&&&&&&&&&&{&&&&&&&&&&&&&&&&System.out.println("关闭数据库出错:"+closeErr);&&&&&&&&&&&&&&&&}&&&&&&&&}&&&&&&&&&}}
[ &] 字体[ &] [ &] [ &] [ &] &[ &]
【相关文章】
【客户需求反馈表】
更多资料 
了解方案 
详细需求信息请在此处填写!当前位置: >
> 在tomcat上可运行通过,但是在weblogic运行报错的java日期函数问题因为本地编译环境是
在tomcat上可运行通过,但是在weblogic运行报错的java日期函数问题因为本地编译环境是
hjmhpan & at
在tomcat上可运行通过,但是在weblogic运行报错的java日期函数问题因为本地编译环境是tomcat,但需要发布到服务器weblogic环境中去。一个困扰我很久的问题,Date类日期函数在tomcat上可运行通过,但是在weblogic上运行报错,,如以下例子:
Date & tmpDate & = &
if(rsPlan.getRowCount()& 0){
& tmpDate & = & rs.getDate(0, &PLAN_TIME &) & // & *
& SimpleDateFormat & fm & = & new &
& SimpleDateFormat( &yyyy-MM &);
& String & strTime & = & fm.format(tmpDate); & //在weblogic上运行失败
将 & * & 处的代码改为
tmpDate & = & new & java.sql.Date(rsPlan.getDate(0, &PLAN_TIME &).getTime());依然
报错,报错为:
& java.lang.NullPointerException &
& at & java.util.Calendar.setTime(Calendar.java(Compiled & Code)) &
& at & java.text.SimpleDateFormat.format(SimpleDateFormat.java(Compiled & Code)) &
& at & java.text.SimpleDateFormat.format(SimpleDateFormat.java(Compiled & Code)) &
& at & java.text.DateFormat.format(DateFormat.java(Compiled & Code)) &
& at & ponent.ckplan.cmp_ck_cycle_monProcessor.showInitPage(CommonProcessor.java:71)
& at & ponent.ckplan.cmp_ck_cycle_plan_add.ShowHandler.handleEvent(ShowHandler.java:19)
& at & ponent.ckplan.cmp_ck_cycle_plan_add.ShowHandler.handleEvent(ShowHandler.java:19)
& at & ponent.handleEventInner(Unknown & Source) &
本问题标题:
本问题地址:
温馨提示:本问题已经关闭,不能解答。
暂无合适的专家
&&&&&&&&&&&&&&&
希赛网 版权所有 & &&&&湘教QS2-164&&增值电信业务经营许可证湘B2-}

我要回帖

更多关于 weblogic.xml 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信