log4g.docx
- 文档编号:11916245
- 上传时间:2023-06-03
- 格式:DOCX
- 页数:27
- 大小:60.03KB
log4g.docx
《log4g.docx》由会员分享,可在线阅读,更多相关《log4g.docx(27页珍藏版)》请在冰点文库上搜索。
log4g
publicstaticStringnumtochinese(Stringinput){
Strings1="零壹贰叁肆伍陆柒捌玖";
Strings4="分角整元拾佰仟万拾佰仟亿拾佰仟";
Stringtemp="";
Stringresult="";
if(input==null)return"输入字串不是数字串只能包括以下字符(′0′~′9′,′.′),输入字串最大只能精确到仟亿,小数点只能两位!
";
temp=input.trim();
floatf;
try{
f=Float.parseFloat(temp);
}catch(Exceptione){return"输入字串不是数字串只能包括以下字符(′0′~′9′,′.′),输入字串最大只能精确到仟亿,小数点只能两位!
";}
intlen=0;
if(temp.indexOf(".")==-1)len=temp.length();
elselen=temp.indexOf(".");
if(len>s4.length()-3)return("输入字串最大只能精确到仟亿,小数点只能两位!
");
intn1,n2=0;
Stringnum="";
Stringunit="";
for(inti=0;i if(i>len+2){break;} if(i==len){continue;} n1=Integer.parseInt(String.valueOf(temp.charAt(i))); num=s1.substring(n1,n1+1); n1=len-i+2; unit=s4.substring(n1,n1+1); result=result.concat(num).concat(unit); } if((len==temp.length())||(len==temp.length()-1))result=result.concat("整"); if(len==temp.length()-2)result=result.concat("零分"); returnresult; } cdredfox发表于16: 56: 10 | 阅读全文 | 评论(0) | 引用(0) | 编辑 Log4j使用介绍-java技术 2006-06-06 Log4j由三个重要的组件构成: 日志信息的优先级,日志信息的输出目的地,日志信息的输出格式。 日志信息的优先级从高到低有ERROR、WARN、INFO、DEBUG,分别用来指定这条日志信息的重要程度;日志信息的输出目的地指定了日志将打印到控制台还是文件中;而输出格式则控制了日志信息的显示内容。 一、定义配置文件 其实您也可以完全不使用配置文件,而是在代码中配置Log4j环境。 但是,使用配置文件将使您的应用程序更加灵活。 Log4j支持两种配置文件格式,一种是XML格式的文件,一种是Java特性文件(键=值)。 下面我们介绍使用Java特性文件做为配置文件的方法(properties): 1.配置根Logger,其语法为: log4j.rootLogger=[level],appenderName,appenderName,… 其中,level是日志记录的优先级,分为OFF、FATAL、ERROR、WARN、INFO、DEBUG、ALL或者您定义的级别。 Log4j建议只使用四个级别,优先级从高到低分别是ERROR、WARN、INFO、DEBUG。 通过在这里定义的级别,您可以控制到应用程序中相应级别的日志信息的开关。 比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来。 appenderName就是指定日志信息输出到哪个地方。 您可以同时指定多个输出目的地 2.配置日志信息输出目的地Appender,其语法为 log4j.appender.appenderName=fully.qualified.name.of.appender.class log4j.appender.appenderName.option1=value1 … log4j.appender.appenderName.option=valueN 其中,Log4j提供的appender有以下几种: org.apache.log4j.ConsoleAppender(控制台), org.apache.log4j.FileAppender(文件), org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方) 3.配置日志信息的格式(布局),其语法为: log4j.appender.appenderName.layout=fully.qualified.name.of.layout.class log4j.appender.appenderName.layout.option1=value1 … log4j.appender.appenderName.layout.option=valueN 其中,Log4j提供的layout有以下几种: org.apache.log4j.HTMLLayout(以HTML表格形式布局), org.apache.log4j.PatternLayout(可以灵活地指定布局模式), org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串), org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息) Log4J采用类似C语言中的printf函数的打印格式格式化日志信息,打印参数如下: %m输出代码中指定的消息 %p输出优先级,即DEBUG,INFO,WARN,ERROR,FATAL %r输出自应用启动到输出该log信息耗费的毫秒数 %c输出所属的类目,通常就是所在类的全名 %t输出产生该日志事件的线程名 %n输出一个回车换行符,Windows平台为“\r\n”,Unix平台为“\n” %d输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如: %d{yyyMMMddHH: mm: ss,SSS},输出类似: 2002年10月18日22: 10: 28,921 %l输出日志事件的发生位置,包括类目名、发生的线程,以及在代码中的行数。 举例: Testlog4.main(TestLog4.java: 10) 二、在代码中使用Log4j 1.得到记录器 使用Log4j,第一步就是获取日志记录器,这个记录器将负责控制日志信息。 其语法为: publicstaticLoggergetLogger(Stringname) 通过指定的名字获得记录器,如果必要的话,则为这个名字创建一个新的记录器。 Name一般取本类的名字,比如: staticLoggerlogger=Logger.getLogger(ServerWithLog4j.class.getName()) 2.读取配置文件 当获得了日志记录器之后,第二步将配置Log4j环境,其语法为: BasicConfigurator.configure(): 自动快速地使用缺省Log4j环境。 PropertyConfigurator.configure(StringconfigFilename): 读取使用Java的特性文件编写的配置文件。 DOMConfigurator.configure(Stringfilename): 读取XML形式的配置文件。 3.插入记录信息(格式化日志信息) 当上两个必要步骤执行完毕,您就可以轻松地使用不同优先级别的日志记录语句插入到您想记录日志的任何地方,其语法如下: Logger.debug(Objectmessage); Logger.info(Objectmessage); Logger.warn(Objectmessage); Logger.error(Objectmessage); cdredfox发表于16: 46: 45 | 阅读全文 | 评论(0) | 引用(0) | 编辑 华为面试题-java技术 2006-05-20 第一部分: 选择题 QUESTIONNO: 1 1、publicclassTest{ publicstaticvoidchangeStr(Stringstr){ str="welcome"; } publicstaticvoidmain(String[]args){ Stringstr="1234"; changeStr(str); System.out.println(str); } } Pleasewritetheoutputresult: 1234 QUESTIONNO: 2 1.publicclassTest{ 2.staticbooleanfoo(charc){ 3.System.out.print(c); 4.returntrue; 5.} 6.publicstaticvoidmain(String[]argv){ 7.inti=0; 8.for(foo('A');foo('B')&&(i<2);foo('C')){ 9.i++; 10.foo('D'); 12.} 13.} 14.} Whatistheresult? A A.ABDCBDCB B.ABCDABCD C.Compilationfails. D.Anexceptionisthrownatruntime. QUESTIONNO: 3 1.classA{ 2.protectedintmethod1(inta,intb){return0;} 3.} WhichtwoarevalidinaclassthatextendsclassA? (Choosetwo) A.publicintmethod1(inta,intb){return0;} B.privateintmethod1(inta,intb){return0;} C.privateintmethod1(inta,longb){return0;} D.publicshortmethod1(inta,intb){return0;} E.staticprotectedintmethod1(inta,intb){return0;} QUESTIONNO: 4 1.publicclassOuter{ 2.publicvoidsomeOuterMethod(){ 3.//Line3 4.} 5.publicclassInner{} 6.publicstaticvoidmain(String[]argv){ 7.Outero=newOuter(); 8.//Line8 9.} 10.} WhichinstantiatesaninstanceofInner? A.newInner();//Atline3 B.newInner();//Atline8 C.newo.Inner();//Atline8 D.newOuter.Inner();//Atline8//newOuter().newInner() QUESTIONNO: 5 WhichmethodisusedbyaservlettoplaceitssessionIDinaURLthatiswrittentotheservlet’sresponseoutputstream? A.TheencodeURLmethodoftheHttpServletRequestinterface. B.TheencodeURLmethodoftheHttpServletResponseinterface. C.TherewriteURLmethodoftheHttpServletRequestinterface. D.TherewriteURLmethodoftheHttpServletResponseinterface. QUESTIONNO: 6 Whichtwoareequivalent? (Choosetwo) A.<%=YoshiBean.size%> B.<%=YoshiBean.getSize()%> C.<%=YoshiBean.getProperty("size")%> D. getPropertyid="YoshiBean"param="size"/> E. getPropertyname="YoshiBean"param="size"/> F. getPropertyid="YoshiBean"property="size"/> G. getPropertyname="YoshiBean"property="size"/> QUESTIONNO: 7 Whichofthefollowingstatementsregardingthelifecycleofasessionbeanarecorrect? 1. java.lang.IllegalStateExceptionisthrownifSessionContext.getEJBObject()isinvokedwhenastatefulsessionbeaninstanceispassivated. 2. SessionContext.getRollbackOnly()doesnotthrowanexceptionwhenasessionbeanwithbean-managedtransactiondemarcationisactivated. 3. AnexceptionisnotthrownwhenSessionContext.getUserTransaction()iscalledintheafterBeginmethodofabeanwithcontainer-managedtransactions. 4. JNDIaccesstojava: comp/envispermittedinalltheSessionSynchronizationmethodsofastatefulsessionbeanwithcontainer-managedtransactiondemarcation. 5. AccessingresourcemanagersintheSessionSynchronization.afterBeginmethodofastatefulsessionbeanwithbean-managedtransactiondoesnotthrowanexception. 第二部分: 概念题 1. 描述Struts体系结构? 对应各个部分的开发工作主要包括哪些? 2. XML包括哪些解释技术,区别是什么? 3. JSP有哪些内置对象和动作? 它们的作用分别是什么? 4、SQL问答题 SELECT*FROMTABLE 和 SELECT*FROMTABLE WHERENAMELIKE'%%'ANDADDRLIKE'%%' AND(1_ADDRLIKE'%%'OR2_ADDRLIKE'%%' OR3_ADDRLIKE'%%'OR4_ADDRLIKE'%%') 的检索结果为何不同? 5、SQL问答题 表结构: 1、 表名: g_cardapply 字段(字段名/类型/长度): g_applyno varchar 8;//申请单号(关键字) g_applydate bigint 8;//申请日期 g_state varchar 2;//申请状态 2、 表名: g_cardapplydetail 字段(字段名/类型/长度): g_applyno varchar 8;//申请单号(关键字) g_name varchar 30;//申请人姓名 g_idcard varchar 18;//申请人身份证号 g_state varchar 2;//申请状态 其中,两个表的关联字段为申请单号。 题目: 1、 查询身份证号码为440401*********的申请日期 2、 查询同一个身份证号码有两条以上记录的身份证号码及记录个数 3、 将身份证号码为440401*********的记录在两个表中的申请状态均改为07 4、 删除g_cardapplydetail表中所有姓李的记录 cdredfox发表于14: 20: 08 | 阅读全文 | 评论(0) | 引用(0) | 编辑 微软公司的JDBC数据库包的一个BUG-java技术 2006-05-19 昨天再写项目的时候.写了一个对数据库中一张表的记录进行操作的时候.报出一个莫名奇妙的异常. ResultSetcannotre-readrowdataforcolumn2. 从字面意思理解.是说不能重复的读取第二条记录,可是我仔细检查我的代码: //根据产品的ID号查找商品的信息 publicListBeanfindList(Stringid){ this.lid=id; DBManagerdb=DBManager.getInstance(); ListBeanlb=newListBean(); ResultSetrs=db.executeQuery("select*fromlistwherelid="+lid+ ""); try{ while(rs.next()){ System.out.println("现在还没有出错"); lb.setContent(rs.getString(3)); lb.setLmessage(rs.getString(4)); lb.setLname(rs.getString (2)); lb.setLpic(rs.getString(7)); lb.setLpre(rs.getString(6)); lb.setLprice(rs.getString(5)); lb.setSource(rs.getString(9)); returnlb; } }catch(SQLExceptionex){ ex.printStackTrace(); System.out.println("这里出错"); returnnull; } returnnull; } 根本就没有重复的读取第二条记录呀,到底是什么原因呢.尝试的很多方法.都没有成功. 后来无意之间.把顺序改动一下. lb.setLname(rs.getString (2)); lb.setContent(rs.getString(3)); lb.setLmessage(rs.getString(4)); 这次竟然没有报错了.? ? ? 到底是什么原因呢,查找相关的资料.与实验得出结论.: 微软提供的JDBC连接数据库MSSQL包.有一个BUG.当你的表中有image,text字段的时候.他会默认的按有序来读取.如果你无序的读取的话.就不能读取成功.因为这两种类型的字段.系统会默认的按照他记录集里面的顺序读出来.所以就会出现读两次的异常报出. 晕...发现了微软公司的两个BUG了...都是数据库的. cdredfox发表于11: 53: 33 | 阅读全文 | 评论(0) | 引用(0) | 编辑 五一安排-java技术 2006-04-30 没有什么地方好去了.又不想回家.安排如下: 五一: HAPPY一天 五二: 接触一下j2ee框架技术. 五三: 开始学习UML 五四: 数据结构 五五: 深化了解MVC结构. 五六: JSP学习 五七: 接触美学 cdredfox发表于08: 13: 15 | 阅读全文 | 评论(0) | 引用(0) | 编辑 奇怪的sql问题-java技术 2006-03-30 今天用JDBC与mssql连接时出现了一个很奇怪的现象.我用的是驱动程序连接.以往都能很正常的连接.可是今天连接.却出现下面的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- log4g