﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-HotJava-随笔分类-J2EE</title><link>http://www.blogjava.net/HotJava/category/15574.html</link><description /><language>zh-cn</language><lastBuildDate>Thu, 01 Mar 2007 15:35:45 GMT</lastBuildDate><pubDate>Thu, 01 Mar 2007 15:35:45 GMT</pubDate><ttl>60</ttl><item><title>java程序员面试之150++ </title><link>http://www.blogjava.net/HotJava/archive/2006/11/02/78780.html</link><dc:creator>HotJava</dc:creator><author>HotJava</author><pubDate>Thu, 02 Nov 2006 13:33:00 GMT</pubDate><guid>http://www.blogjava.net/HotJava/archive/2006/11/02/78780.html</guid><wfw:comment>http://www.blogjava.net/HotJava/comments/78780.html</wfw:comment><comments>http://www.blogjava.net/HotJava/archive/2006/11/02/78780.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/HotJava/comments/commentRss/78780.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/HotJava/services/trackbacks/78780.html</trackback:ping><description><![CDATA[&nbsp;&nbsp;&nbsp;&nbsp; 摘要: 一、Java基础方面		1、作用域public,private,protected,以及不写时的区别		　　答：区别如下：		　　作用域       当前类      同一package      子孙类       其他package　　public         √            √             √              √　　protected     ...&nbsp;&nbsp;<a href='http://www.blogjava.net/HotJava/archive/2006/11/02/78780.html'>阅读全文</a><img src ="http://www.blogjava.net/HotJava/aggbug/78780.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/HotJava/" target="_blank">HotJava</a> 2006-11-02 21:33 <a href="http://www.blogjava.net/HotJava/archive/2006/11/02/78780.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>常用log4j配置</title><link>http://www.blogjava.net/HotJava/archive/2006/10/10/74354.html</link><dc:creator>HotJava</dc:creator><author>HotJava</author><pubDate>Tue, 10 Oct 2006 11:02:00 GMT</pubDate><guid>http://www.blogjava.net/HotJava/archive/2006/10/10/74354.html</guid><wfw:comment>http://www.blogjava.net/HotJava/comments/74354.html</wfw:comment><comments>http://www.blogjava.net/HotJava/archive/2006/10/10/74354.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/HotJava/comments/commentRss/74354.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/HotJava/services/trackbacks/74354.html</trackback:ping><description><![CDATA[
		<span class="content">
				<font color="#000000">常用log4j配置，一般可以采用两种方式，.properties和.xml,下面举两个简单的例子：<br />一、log4j.properties<br />### 设置org.zblog域对应的级别INFO,DEBUG,WARN,ERROR和输出地A1，A2 ##<br />log4j.category.org.zblog=ERROR,A1 <br />log4j.category.org.zblog=INFO,A2 <br />log4j.appender.A1=org.apache.log4j.ConsoleAppender <br />### 设置输出地A1，为ConsoleAppender(控制台) ##<br />log4j.appender.A1.layout=org.apache.log4j.PatternLayout <br />### 设置A1的输出布局格式PatterLayout,(可以灵活地指定布局模式）##<br />log4j.appender.A1.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n <br />### 配置日志输出的格式##<br />log4j.appender.A2=org.apache.log4j.RollingFileAppender <br />### 设置输出地A2到文件（文件大小到达指定尺寸的时候产生一个新的文件）##<br />log4j.appender.A2.File=E:/study/log4j/zhuwei.html <br />### 文件位置##<br />log4j.appender.A2.MaxFileSize=500KB <br />### 文件大小##<br />log4j.appender.A2.MaxBackupIndex=1 <br />log4j.appender.A2.layout=org.apache.log4j.HTMLLayout <br />##指定采用html方式输出<br />二、log4j.xml<br />&lt;?xml version="1.0" encoding="GB2312" ?&gt;<br />&lt;!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"&gt;<br />&lt;log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"&gt;<br />&lt;appender name="org.zblog.all" class="org.apache.log4j.RollingFileAppender"&gt;<br />&lt;!-- 设置通道ID:org.zblog.all和输出方式：org.apache.log4j.RollingFileAppender --&gt;<br />   &lt;param name="File" value="E:/study/log4j/all.output.log" /&gt;&lt;!-- 设置File参数：日志输出文件名 --&gt;<br />   &lt;param name="Append" value="false" /&gt;&lt;!-- 设置是否在重新启动服务时，在原有日志的基础添加新日志 --&gt;<br />   &lt;param name="MaxBackupIndex" value="10" /&gt; <br />   &lt;layout class="org.apache.log4j.PatternLayout"&gt;<br />       &lt;param name="ConversionPattern" value="%p (%c:%L)- %m%n" /&gt;&lt;!-- 设置输出文件项目和格式 --&gt;<br />   &lt;/layout&gt;<br />&lt;/appender&gt;<br />&lt;appender name="org.zblog.zcw" class="org.apache.log4j.RollingFileAppender"&gt;<br />   &lt;param name="File" value="E:/study/log4j/zhuwei.output.log" /&gt;<br />   &lt;param name="Append" value="true" /&gt;<br />   &lt;param name="MaxFileSize" value="10240" /&gt; &lt;!-- 设置文件大小 --&gt;<br />   &lt;param name="MaxBackupIndex" value="10" /&gt; <br />   &lt;layout class="org.apache.log4j.PatternLayout"&gt;<br />       &lt;param name="ConversionPattern" value="%p (%c:%L)- %m%n" /&gt;<br />   &lt;/layout&gt;<br />&lt;/appender&gt;<br />&lt;logger name="zcw.log"&gt; &lt;!-- 设置域名限制，即zcw.log域及以下的日志均输出到下面对应的通道中 --&gt;<br />   &lt;level value="debug" /&gt;&lt;!-- 设置级别 --&gt;<br />   &lt;appender-ref ref="org.zblog.zcw" /&gt;&lt;!-- 与前面的通道id相对应 --&gt;<br />&lt;/logger&gt;<br />&lt;root&gt; &lt;!-- 设置接收所有输出的通道 --&gt;<br />   &lt;appender-ref ref="org.zblog.all" /&gt;&lt;!-- 与前面的通道id相对应 --&gt;<br />&lt;/root&gt;<br />&lt;/log4j:configuration&gt;<br />三、配置文件加载方法：<br />import org.apache.log4j.Logger;<br />import org.apache.log4j.PropertyConfigurator;<br />import org.apache.log4j.xml.DOMConfigurator;<br />public class Log4jApp {<br />   public static void main(String[] args) {<br />       DOMConfigurator.configure("E:/study/log4j/log4j.xml");//加载.xml文件<br />       //PropertyConfigurator.configure("E:/study/log4j/log4j.properties");//加载.properties文件<br />       Logger log=Logger.getLogger("org.zblog.test");<br />       log.info("测试");<br />   }<br />}<br />四、项目使用log4j<br />在web 应用中，可以将配置文件的加载放在一个单独的servlet中，并在web.xml中配置该servlet在应用启动时候加载。对于在多人项目中，可以给每一个人设置一个输出通道，这样在每个人在构建Logger时，用自己的域名称，让调试信息输出到自己的log文件中。<br />五、常用输出格式<br /># -X号:X信息输出时左对齐；<br /># %p:日志信息级别<br /># %d{}:日志信息产生时间<br /># %c:日志信息所在地（类名）<br /># %m:产生的日志具体信息<br /># %n:输出日志信息换行</font>
				<br />
		</span>
		<!-- 正文end -->
<img src ="http://www.blogjava.net/HotJava/aggbug/74354.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/HotJava/" target="_blank">HotJava</a> 2006-10-10 19:02 <a href="http://www.blogjava.net/HotJava/archive/2006/10/10/74354.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>各个框架缺点</title><link>http://www.blogjava.net/HotJava/archive/2006/10/05/73466.html</link><dc:creator>HotJava</dc:creator><author>HotJava</author><pubDate>Thu, 05 Oct 2006 07:05:00 GMT</pubDate><guid>http://www.blogjava.net/HotJava/archive/2006/10/05/73466.html</guid><wfw:comment>http://www.blogjava.net/HotJava/comments/73466.html</wfw:comment><comments>http://www.blogjava.net/HotJava/archive/2006/10/05/73466.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/HotJava/comments/commentRss/73466.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/HotJava/services/trackbacks/73466.html</trackback:ping><description><![CDATA[
		<p>下面开始比较各个框架，仅摘要如下，请恕本人只看缺点，不看优点。因为优点是说不完的<br />Struts: used since June 2001 - same time 1.0 was released.<br />Spring MVC: used since January 2004 - before 1.0 was released.<br />WebWork: used since July 2004.<br />Tapestry: used since July 2004.<br />JSF: used since July 2004 - both Sun’s RI and MyFaces. </p>
		<p>Struts缺点：</p>
		<p>ActionForms - they’re a pain<br />Can’t unit test - StrutsTestCase only does integration<br />Project has been rumored as “dead”</p>
		<p>Display Tag：</p>
		<p>Spring MVC缺点：</p>
		<p>Configuration intensive - lots of XML<br />Requires writing lots of code in JSPs<br />Almost too flexible - no common parent Controller</p>
		<p>WebWork缺点：</p>
		<p>Small Community<br />Documentation is poorly organized</p>
		<p>Tapestry缺点：</p>
		<p>Documentation very conceptual, rather than<br />pragmatic<br />Steep learning curve - very few examples<br />Long release cycles - major upgrades every year</p>
		<p>JSF缺点：</p>
		<p>Tag soup for JSPs<br />Doesn't play well with REST or Security<br />No single source for implementation</p>
		<p>SiteMesh：</p>
		<p> </p>
		<p>IDE支持</p>
		<p>Struts has a lot of IDE support and even has frameworks built on top of it (i.e. Beehive’s PageFlow)<br />Spring has Spring IDE - only does XML validation, not a UI/web tool<br />WebWork has EclipseWork<br />Tapestry has Spindle - great for coders<br />JSF has many, and they're getting better and better</p>
<img src ="http://www.blogjava.net/HotJava/aggbug/73466.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/HotJava/" target="_blank">HotJava</a> 2006-10-05 15:05 <a href="http://www.blogjava.net/HotJava/archive/2006/10/05/73466.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>