log4j怎么应用 高手帮忙看看我的代码有什么问题

nospot 2007-12-10 03:01:39
package webmail;

import java.util.Properties;

import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
import org.apache.log4j.*;


public class MailUserInfoBean {
URLName urlName;
Session mailSession;
Store store;
Folder currentFolder;
Message currentMsg;
public int deleteFolder(String foldername){
if(foldername.equalsIgnoreCase("inbox")||foldername.equalsIgnoreCase("trash")||foldername.equalsIgnoreCase("draft")||foldername.equalsIgnoreCase("sendbox")){
log4j.logger.debug("你要删除邮件夹是不被允许的!");
return JMailUtil.REFUSED;
}
try{
Folder folder=store.getFolder(foldername);
if(!folder.exists()){
log4j.logger.debug("你要删除邮件夹不存在!");
return JMailUtil.FAILED;
}
if(folder.isOpen()){
folder.close(true);
}
folder.delete(true);
}catch(MessagingException e){
Log4j.logger.debug("删除邮件夹失败!");
e.printStackTrace();
return JMailUtil.FAILED;
}
Log4j.logger.info("文件夹"+foldername+"被删除!");
return JMailUtil.SUCCESS;
}
public int deleteMessage(int delArray[],Folder f){
try{
for(int i=0;i<delArray.length;i++){
if(delArray[i]==0)continue;
Message delMsg=f.getMessage(i+1);
if(f.getName().equals("Trash")){
Message[] m=new Message[1];
m[0]=delMsg;
Folder Trash=store.getFolder("Trash");
f.copyMessages(m, Trash);
delMsg.setFlag(Flags.Flag.DELETED,true);

}else{
delMsg.setFlag(Flags.Flag.DELETED, true);
}
}
f.expunge();
}catch(Exception e){
e.printStackTrace();
Log4j.logger.debug("删除邮件失败!"+e);
return JMailUtil.FAILED;
}
Log4j.logger.info("邮件被成功删除!");
return JMailUtil.SUCCESS;
}
public int sendMessage(Message msg){
try{
Transport.send(msg);
Folder f=store.getFolder("Sendbox");
if(!f.isOpen())
f.open(Folder.READ_WRITE);
Message m[]=new Message[1];
m[0]=msg;
f.appendMessages(m);
}catch(MessagingException e1){
e1.printStackTrace();
Log4j.logger.debug("发送邮件失败!"+e1);
}
Log4j.logger.info("发送邮件成功!");
return JMailUtil.SUCCESS;
}
public int connect(String host,String user,String pass){
Properties prop=null;
prop=System.getProperties();
prop.put("mail.transport.protocol","smtp");
prop.put("mail.store.protocol", "imap");
prop.put("mail.smtp.class", "com.sun.mail.smtp.SMTPTransport");
prop.put("mail.imap.class", "com.sun.mail.imap.IMAPStore");
prop.put("mail.smtp.host", "localhost");
this.mailSession=Session.getDefaultInstance(prop, null);
try{
this.store=this.mailSession.getStore("imap");
this.store.connect(host, user, pass);
Log4j.logger.info("The Store is connected!");
}catch(NoSuchProviderException e){
e.printStackTrace();
Log4j.logger.debug("Get a Store error");
Log4j.logger.debug(e);
return JMailUtil.FAILED;
}catch(MessagingException e){
Log4j.logger.debug("Get a Store error");
e.printStackTrace();
Log4j.logger.debug(e);
return JMailUtil.FAILED;
}
return JMailUtil.SUCCESS;
}


}
...全文
98 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
天外流星 2007-12-10
  • 打赏
  • 举报
回复
在src下建立log4j.properties
然后把上面的内容粘进去.
nospot 2007-12-10
  • 打赏
  • 举报
回复
没看懂啊 你的意思是在工程下建一个log4j.properties?
天外流星 2007-12-10
  • 打赏
  • 举报
回复

log4j.properties
放在项目的src目录下,设置日志级别

#log4j.rootLogger=DEBUG,A1,R
log4j.rootLogger=INFO,A1,R

log4j.appender.A1=org.apache.log4j.ConsoleAppender
log4j.appender.A1.layout=org.apache.log4j.PatternLayout
log4j.appender.A1.layout.ConversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%c]-[%p] %m%n

log4j.appender.R=org.apache.log4j.RollingFileAppender
log4j.appender.R.File=test.txt
log4j.appender.R.MaxFileSize=500KB
log4j.appender.R.MaxBackupIndex=10
log4j.appender.R.layout=org.apache.log4j.PatternLayout
log4j.appender.R.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} [%t] [%c] [%p] - %m%n

#log4j.logger.com.opensymphony=INFO
#log4j.logger.org.apache.struts2=DEBUG
#log4j.logger.com.laoer=DEBUG
#log4j.logger.com.danga=ERROR

62,623

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧