log4j socket用法 高手请指点一下

princesshan 2012-03-21 11:10:32
按照该链接中的方法
进行log4j 发消息到socket端口,
但是如果不是用博文中作者提到的方法接受,另写了一个接受的socket,同一台机器,接受到的信息是一大堆乱码?
package com.test.Receiver;
import java.net.*;
import org.apache.log4j.Logger;
import java.io.*;
public class MultiUser extends Thread {
static Logger logger = Logger.getLogger(MultiUser.class.getName());
private Socket client;
public MultiUser(Socket c)
{
this.client = c;
}
public void run()
{
try
{
BufferedReader in = new BufferedReader(new InputStreamReader(client.getInputStream()));
PrintWriter out = new PrintWriter(client.getOutputStream());
while(true)
{
String str=in.readLine();
logger.debug(str);

System.out.println(str);
if(str.equals("end"))
{
break;
}
}
client.close();
}
catch(IOException ex)
{

}
finally
{

}
}

public static void main(String[] args) throws IOException
{
// TODO Auto-generated method stub

ServerSocket server = new ServerSocket(4445);
while(true)
{
//transfer location change Single User or Multi User
MultiUser mu = new MultiUser(server.accept());
mu.start();
}

}

}
...全文
119 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
sdyjmc 2012-09-14
  • 打赏
  • 举报
回复
public void run() {
try {
ObjectInputStream ois = new ObjectInputStream(
new BufferedInputStream(client.getInputStream()));

LoggingEvent event;
while (true) {
// read an event from the wire
event = (LoggingEvent) ois.readObject();
String msg = event.getRenderedMessage();
System.out.println(msg);

}
} catch (Exception ex) {

} finally {

}
}

67,514

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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