??xml version="1.0" encoding="utf-8" standalone="yes"?>欧美精品导航,国产日本欧美一区二区三区在线,久久久久久久成人http://www.aygfsteel.com/henry1451/articles/208817.htmlhenry1451henry1451Wed, 18 Jun 2008 03:44:00 GMThttp://www.aygfsteel.com/henry1451/articles/208817.htmlhttp://www.aygfsteel.com/henry1451/comments/208817.htmlhttp://www.aygfsteel.com/henry1451/articles/208817.html#Feedback0http://www.aygfsteel.com/henry1451/comments/commentRss/208817.htmlhttp://www.aygfsteel.com/henry1451/services/trackbacks/208817.html     对于common-log+logj4l合在程序中使用很方?dlog4j.properties文g方式有多U?但有一U更方便的读取方?卛_log4j.properties文g攄在classes目录?则程序会(x)自动d,不需我们在程序中去读?在程序中我们直接生成一个LOG对象可以用了,
private static Log log  =  LogFactory.getLog(当前c?class);当然对于.log文g的存放位|可以放在一个单独的目录??log/ ?.


henry1451 2008-06-18 11:44 发表评论
]]>
Struts2拦截??http://www.aygfsteel.com/henry1451/articles/208252.htmlhenry1451henry1451Mon, 16 Jun 2008 02:48:00 GMThttp://www.aygfsteel.com/henry1451/articles/208252.htmlhttp://www.aygfsteel.com/henry1451/comments/208252.htmlhttp://www.aygfsteel.com/henry1451/articles/208252.html#Feedback0http://www.aygfsteel.com/henry1451/comments/commentRss/208252.htmlhttp://www.aygfsteel.com/henry1451/services/trackbacks/208252.html阅读全文

henry1451 2008-06-16 10:48 发表评论
]]>
关于BeanUtils工具的?/title><link>http://www.aygfsteel.com/henry1451/articles/207463.html</link><dc:creator>henry1451</dc:creator><author>henry1451</author><pubDate>Thu, 12 Jun 2008 09:52:00 GMT</pubDate><guid>http://www.aygfsteel.com/henry1451/articles/207463.html</guid><wfw:comment>http://www.aygfsteel.com/henry1451/comments/207463.html</wfw:comment><comments>http://www.aygfsteel.com/henry1451/articles/207463.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/henry1451/comments/commentRss/207463.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/henry1451/services/trackbacks/207463.html</trackback:ping><description><![CDATA[<br />     对于BeanUtilsq个工具Q我也用的不是很多,但是q是有点心得和大家分享下Q呵呵~~用过spring的都知道spring的MVC框架中有一个BaseCommandController对象Q利用这个对象我们就可以很方便的从客户端传递过来的参数装C个JavaBean对象中去Q而不需要我们request.getParameter("name");bean.setName(name);了,从而也化了不少的工作。其实在structs中也有这L(fng)功能的,不过它用的BeanUtilsq个工具c,也就是我今天要给大家说的q个cR? <p>    commons-beanutilslg是Jakarta Commons目l中的一个,可以到Jakarta官网上去下蝲。我们今天讨论的主要是commons-beanutils中的BeanUtilsq个c,q个c都是静态方法,可以很方便的操纵各个JavaBean对象Q包括获取属性、设|属性等Q我们以例子来进行说明?/p> <p>    假设有如下一个JavaBean对象Q?/p> <p><font color="#999900">public TestBean<br /> {<br />     private String stringValue;</font></p> <p><font color="#999900">    private int intValue;</font></p> <p><font color="#999900">    public void setStringValue(String value)<br />     {<br />         this.stringValue = value;<br />     }<br /> <br />     public String getStringValue()<br />     {<br />         return this.stringValue;<br />     }</font></p> <p><font color="#999900">    public void setIntValue(int value)<br />     {<br />         this.intValue = value;<br />     }</font></p> <p><font color="#999900">    public int getIntValue()<br />     {<br />         return this.intValue;<br />     }<br /> }</font></p> <p>    那么我们可以用BeanUtils来对其进行设|值和获取g。如下:(x)</p> <p><font color="#999900">TestBean tb = new TestBean();<br /> BeanUtils.setProperty(tb, "stringValue", "hello world!");<br /> BeanUtils.setProperty(tb, "intValue", 123);</font></p> <p>    通过上述的语句我们就可以l新new的对象设|两个属性了Q注意其中第一个参数就是我们的属性名Uͼq里也是我们在用这个工L(fng)时候最需要注意的地方。这个属性名U就是我们的TestBean中的getXXXҎ(gu)中的XXXQ比如getStringValue中其属性名U就是stringValueQ在使用属性名U的时候,除了XXX中的W一个字母不需要大写之外Q其他的部分是需要严格区分大写的,q也是JavaBean的规范?font color="#990000">q里有一炚w要特别注意的是Q如果属性名UCW一个单词(我们界定的)只有一个字母的话,那么其属性名U必d写!</font>我们可以看这样一个例子:(x)</p> <p>我们lTestBean加如下一个属性:(x)</p> <p><font color="#999900">……<br /> public void setTName(String name)<br /> {<br />     this.name = name;<br /> }</font></p> <p><font color="#999900">public void getTName()<br /> {<br />     return this.name;<br /> }<br /> ……</font></p> <p>    那么在用BeanUtilsq行属性赋值的时候,如果你这样写Q?/p> <p><font color="#999900">BeanUtils.setProperty(tb, "tName", "hello");</font></p> <p>那么׃(x)被抛Z个异常,表示q个属性找不到Q?strong><font color="#990000">因ؓ(f)按照JavaBean的规范,属性名UC如果有多个单词,则每一个单词的首字母要大写</font>Q?/strong>q里BeanUtils׃(x)认ؓ(f)属性TName是两个单词,分别是T和NameQ所以取属性的时候第一个字母必要大写Q所以其属性就应该是;TNameQ那么我们就应该如下写操作语句:(x)  </p> <p><font color="#999900">BeanUtils.setProperty(tb, "TName", "hello");</font></p> <p>    q样写才是正的。那么我们来看在B/Sl构的程序中Q如何将表单域的参数Q不一定是表单域,是参数都可以Q{换成一个JavaBean对象Q我们以上面的BeanZ子,我们在页面上q行~写如下Q?/p> <p><font color="#999900">……<br /> <form name="form1" action="/getbean.jsp"><br />     字符串|(x)<input type="text" name="<font color="#ff0000">stringValue</font>" /><br/><br />     数字|(x)<input type="text" name="<font color="#ff0000">intValue</font>" /><br/><br /> </form><br /> ……</font></p> <p>    然后我们在服务器端进行编写如下代码来获取参数Qƈl装成一个TestBean对象Q代码如下:(x)</p> <p><font color="#999900">……<br /> TestBean tb = new TestBean();<br /> <font color="#ff0000">BeanUtils.populate(tb, request.getParameterMap());</font><br /> // 使用BeanUtils工具cL获取对象的属?br /> System.out.println(BeanUtils.getProperty("stringValue"));<br /> System.out.print(BeanUtils.getProperty("intValue"));<br /> // 直接获取对象的属?br /> System.out.println(tb.getStringValue());<br /> System.out.println(tb.getIntValue());<br /> ……</font></p> <p>    我们注意刎ͼ在表单区域中~写的几个输入框的名UͼU色标识的部分)是我们的TestBean对象的属性名Uͼ然后服务器端的代码中Q我们首先用request.getParameterMap()来获取提交的参数Qƈ转换成一个map对象存储Q键是参数名Uͼ值是提交的|Q然后我们用BeanUtils的populateҎ(gu)来进行赋倹{通过打印后,我们可以看到我们输入的D成功的设|到对象中去了,可以看到单的两行代码可以搞定参数到对象的数据绑定工作,如果一个对象有十几个甚臛_十个参数属性的话,那么q样的方式将是非常简便的Q至可以少写十几行甚至几十行的代码?/p> <p>    可以看到利用BeanUtilsq个工具cd以很方便的进行JavaBean的属性操作和request的参数到JavaBean的属性绑定操作。其他的功能大家可以参看它的API文档?br /> <br />      其实Jakarta Commons目l中q有很多实用的工L(fng),?common-io,common-lang,common-logging,common-pool{等.</p> <img src ="http://www.aygfsteel.com/henry1451/aggbug/207463.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/henry1451/" target="_blank">henry1451</a> 2008-06-12 17:52 <a href="http://www.aygfsteel.com/henry1451/articles/207463.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Linux下log4j日志输出q问题http://www.aygfsteel.com/henry1451/articles/207155.htmlhenry1451henry1451Wed, 11 Jun 2008 09:06:00 GMThttp://www.aygfsteel.com/henry1451/articles/207155.htmlhttp://www.aygfsteel.com/henry1451/comments/207155.htmlhttp://www.aygfsteel.com/henry1451/articles/207155.html#Feedback0http://www.aygfsteel.com/henry1451/comments/commentRss/207155.htmlhttp://www.aygfsteel.com/henry1451/services/trackbacks/207155.html     现在log4j使用非常行,在WINDOWpȝ使用?没碰Cؕ码问?但最q在LINUX环境?到了ؕ码问?解决Ҏ(gu)只需在Log4j.xml(本h使用的是此格式的配置文g)?讄<param name="Encoding" value="UTF-8"/>属?卛_解决.

?
1) l本人测?只有字W编码设?UTF-8",才能解决q问题,如果设ؓ(f):GB2312,GBK{都q是?x)出Cؕ?
2) 只需在此处设|下字符~码卛_,不需在程序中对要输出的内容进行编?而且即对输出的内容q行~码,也无于?q是?x)出Cؕ码的情况.


henry1451 2008-06-11 17:06 发表评论
]]>
关于Log4j的?/title><link>http://www.aygfsteel.com/henry1451/articles/207073.html</link><dc:creator>henry1451</dc:creator><author>henry1451</author><pubDate>Wed, 11 Jun 2008 03:20:00 GMT</pubDate><guid>http://www.aygfsteel.com/henry1451/articles/207073.html</guid><wfw:comment>http://www.aygfsteel.com/henry1451/comments/207073.html</wfw:comment><comments>http://www.aygfsteel.com/henry1451/articles/207073.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/henry1451/comments/commentRss/207073.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/henry1451/services/trackbacks/207073.html</trackback:ping><description><![CDATA[<br />     应用E序?Z相关信息记录下?大多数选用<font style="background-color: #c4ecc9">Log4j</font>开源插?但现在更行的做法是,<font style="background-color: #c4ecc9">Log4j+comm-logl合使用.<br /> <br /> 下面单介l下使用Ҏ(gu):<br /> <br /> 1) <font style="background-color: #c4ecc9">private static Log log  =  LogFactory.getLog(当前c?class);</font> <br /> <br /> 定义一个Log 对象,通过comm-log包中的LogFactory.getLogҎ(gu)来获?参数是当前类;<br /> <br /> 2) <font style="background-color: #c4ecc9">PropertyConfigurator.configure("./conf/log4j.properties");</font><br /> <br /> 加蝲配置文g,配置文g?properties,.xml两种格式,如果是前?可以用上面的方式加蝲,如果?xml格式,则可以用<br /> <font style="background-color: #c4ecc9">DOMConfigurator.configure("./conf/log4j.xml");</font>方式加蝲,但都要注意配|文件的路径,否则?x)生找不到配置文g的错?<br /> <br /> l过上两部以?可以通过log.info,log.error......{输出日志信息了,具体以什么样的格式输?在配|文件中指定卛_,q里不作介绍.<br /> 但用前,效率更好的做法是,在log.info前先if(log.<font style="background-color: #c4ecc9">isInfoEnabled</font>),q样针对U别低于配置文g中指定的U别时可以避免生不必要的输?<br /> <br /> 标准U别的大关p?span lang="EN-US">:DEBUG<INFO<WARN<ERROR<FATAL<br /> <br /> </span><br /> </font> <img src ="http://www.aygfsteel.com/henry1451/aggbug/207073.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/henry1451/" target="_blank">henry1451</a> 2008-06-11 11:20 <a href="http://www.aygfsteel.com/henry1451/articles/207073.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Commons-logging + Log4j 使用指南(?http://www.aygfsteel.com/henry1451/articles/205358.htmlhenry1451henry1451Mon, 02 Jun 2008 08:31:00 GMThttp://www.aygfsteel.com/henry1451/articles/205358.htmlhttp://www.aygfsteel.com/henry1451/comments/205358.htmlhttp://www.aygfsteel.com/henry1451/articles/205358.html#Feedback0http://www.aygfsteel.com/henry1451/comments/commentRss/205358.htmlhttp://www.aygfsteel.com/henry1451/services/trackbacks/205358.html阅读全文

henry1451 2008-06-02 16:31 发表评论
]]>
Log4J发日志邮件给多个接收者及(qing)标题、正文ؕ码问??http://www.aygfsteel.com/henry1451/articles/205257.htmlhenry1451henry1451Mon, 02 Jun 2008 02:02:00 GMThttp://www.aygfsteel.com/henry1451/articles/205257.htmlhttp://www.aygfsteel.com/henry1451/comments/205257.htmlhttp://www.aygfsteel.com/henry1451/articles/205257.html#Feedback0http://www.aygfsteel.com/henry1451/comments/commentRss/205257.htmlhttp://www.aygfsteel.com/henry1451/services/trackbacks/205257.html     以前开发的pȝ没有单独的日志管理,所有的日志l一输出到tomcat后台一个文仉Q不几天是好几GQ现在要整体增加一个Log4J理日志的功能,其实q方面的资料|上多的是。发邮g的配|说明也有,但是具体怎么发,q问题怎么解决那就比较?yu)了?

       利用javamail发送邮Ӟ你需要导入包mail.jar和activation.jarq两个包 Q否则是没法发邮件的 Q下辚w|文仉l色行显C的是发给两个接收者ac和ae?/font>

       q里?x)出C文ؕ码问题,主要有两斚w的ؕ码,一是标题ؕ码;二是正文q。下边具体说明这两种q的解x案?
一?标题q
Log4J日志邮g的标题在配置文glog4j.properties里设定,如下
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.MAIL.Threshold=FATAL
log4j.appender.MAIL.BufferSize=10
log4j.appender.MAIL.From=ab@163.com
log4j.appender.MAIL.SMTPHost=smtp@163.com
log4j.appender.MAIL.Subject= Log4J提醒(zhn):(x)pȝ发生了严重错?/font>
log4j.appender.MAIL.To=ac@163.com,ae@163.com
log4j.appender.MAIL.layout=com.sun.DefineLayOut
log4j.appender.MAIL.layout.LocationInfo=true


       灰色的行是标题Qlog4J配置文g默认的读取方式是ISO-88591Q遇C文会(x)出现qQ我们可以把q个配置文glog4j.properties用jdk的工具native2asii转换一下编码方式?
命o(h)Qnative2asii log4j.properties log4jxx.properties
把这个log4jxx.properties改名为log4j.properties取代原来的log4j.propertiesok了?
灰色行重新编码后是:(x)
log4j.appender.MAIL.Subject=Log4J\u63d0\u9192\u60a8\uff1a\u7cfb\u7edf\u53d1\u751f\u4e86\u4e25\u91cd\u9519\u8bef

二?正文q
        正文qQ解决也比较单。阅读Log4J的源码类SMTPAppenderQ我们可以发现sendBuffer()Ҏ(gu)中有q样一句:(x)
part.setContent(sbuf.toString(), layout.getContentType());
我们l箋q踪发现l(f)ayout是配置文g里的layout属性对应的布局模式。但是这些布局模式都是l承自LayoutQ而contentType是只可通过getContentTypeҎ(gu)取得Q不能修攏V所有的布局模式getContentTypeҎ(gu)q回的都?#8221;text/plain”Q?
为处理中文ؕ码,我们可以写一个布局模式。如果你要用HTMLLayoutQ我们就写一个HTMLLayout的子c,覆盖HTMLLayout的getContentTypeҎ(gu)卛_。假如我要用org.apache.log4j.HTMLLayout。我们就可以写一个DefineLayOutc,代码如下Q?
package com.sun;

import org.apache.log4j.HTMLLayout;
public class DefineLayOut extends HTMLLayout{
public String getContentType() {
return "text/html;charset=GBK";
}
}
对应的配|文件设|如黄色行所C?nbsp;

    呵呵,觉得W二点的思\不错,卌学会(x)怎样改开源的东西,以适合自已所需.



henry1451 2008-06-02 10:02 发表评论
]]>
վ֩ģ壺 ˷| | ɽ| ʤ| ʷ| | | | ɽ| | | կ| | | ³| | º| | | ְ| ˰| | ۷| Ƽ| | Ȫ| | | ī񹤿| ̰| ʤ| ϲ| | ֵ| | | ԭ| ɽʡ| | | |