suen的空间
suen 在线状态
126469次访问 打开 十万人气
可用分320个 打开
专家分18分 打开
37小时前登陆过 活跃专家

注册时间:2005-1-26
[加为好友] [关注他/她]
[即时聊天] [发私信]
suen的个人资料
所在行业:其他行业
社区头衔:荣誉专家 Blog专家
个人专长:
地理信息专家
专家分: 目前总共有18分
扩充话题:13分 C/C++:5分
博客:目前总共有57条评论
访问量:125598
排名:608
文章数:81条
suen的好友
suen的留言
fanqing123maomao发表于:2008-07-10
HI
jinnpw发表于:2008-07-06
你好啊,我是新手,想加你为好友,以后多联系。
sunkaizhu发表于:2008-07-06
我是新手 请多指教!!
kongxt123发表于:2008-07-05
你好啊  我是个新手  很高兴认识你
cahstuwang发表于:2008-07-04
你好,希望能够认识你
formycareer发表于:2008-06-30
可以问一个问题吗?我已经迷惑好长时间了.
http://topic.csdn.net/u/20080630/04/e171e8be-16b9-4512-8cc2-65dc3c892c3f.html  
maisvsjay发表于:2008-06-25
想跟你学习
duolele1234发表于:2008-06-25
你好 
gaoshang502发表于:2008-06-20
package com.teamsun.javaMail.smtp;

import java.net.ServerSocket;
import java.net.Socket;

public class MailServer
{
    
    //服务端
    ServerSocket ss = null;
    
    //客户端
    Socket socket = null;
    
    Thread serverThread = null;
    
    public void server()
    {
        
        try
        {
            //构建服务端监听25端口
            ss = new ServerSocket(25);
            System.out.println("=====server start====");
            while (true)
            {
                //开始监听
                socket = ss.accept();
                if (socket != null)
                {
                    serverThread = new ServerThread(socket);
                    serverThread.start();
                }
            }
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }
    
    public static void main(String[] args)
    {
        MailServer mailServer = new MailServer();
        mailServer.server();
        
    }
    
}

package com.teamsun.javaMail.smtp;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.net.Socket;

public class ServerThread extends Thread
{
    private Socket socket;
    
    private StringBuffer data = null;
    
    private String mailForm = "";
    
    private String rcptTo = "";
    
    private String cmd = "";
    
    public ServerThread(Socket socket)
    {
        this.socket = socket;
        
    }
    
    public void run()
    {
        try
        {
            data = new StringBuffer();
            
            //得到输入流
            BufferedReader br = new BufferedReader(new InputStreamReader(
                    socket.getInputStream()));
            //得到输出流
            PrintWriter send = new PrintWriter(socket.getOutputStream(), true);
            
            //与服务器连接成功
            send.println(220);
            String line = br.readLine();
            
            boolean flag = false;
            while (line != null)
            {
                System.out.println("line = " + line);
                if (flag)
                {
                    data.append(line);
                    data.append("\n");
                }
                
                if (line.length() >= 4)
                {
                    cmd = line.substring(0, 4);
                }
                else if (line.length() == 1)
                {
                    cmd = line;
                }
                
                if ("EHLO".equals(cmd) || "HELO".equals(cmd))
                {
                    send.println(220);
                }
                else if ("MAIL".equals(cmd))
                {
                    mailForm = line.substring(line.indexOf("<") + 1,
                            line.indexOf(">"));
                    send.println(250);
                }
                else if ("RCPT".equals(cmd))
                {
                    rcptTo = line.substring(line.indexOf("<") + 1,
                            line.indexOf(">"));
                    send.println(250);
                }
                else if ("DATA".equals(cmd))
                {
                    flag = true;
                    send.println(354);
                }
                else if ("QUIT".equals(cmd))
                {
                    flag = false;
                    send.println(221);
                }
                else if (".".equals(cmd))
                {
                    flag = false;
                    send.println(250);
                }
                line = br.readLine();
            }
           
        }
        catch (IOException e)
        {
            e.printStackTrace();
        }
        System.out.println("mailForm = " + mailForm);
        System.out.println("rcptTo = " + rcptTo);
        System.out.println("data = " + data.toString());
    }
}

=====server start====
line = HELO gaoshangfei
line = MAIL FROM: 
line = RCPT TO: 
line = RCPT TO: 
line = DATA
line = QUIT
mailForm = gaoshangfei@itms.com
rcptTo = gaosf@teamsun.com.cn
data = QUIT

java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(Unknown Source)
at sun.nio.cs.StreamDecoder$CharsetSD.readBytes(Unknown Source)
at sun.nio.cs.StreamDecoder$CharsetSD.implRead(Unknown Source)
at sun.nio.cs.StreamDecoder.read(Unknown Source)
at java.io.InputStreamReader.read(Unknown Source)
at java.io.BufferedReader.fill(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at java.io.BufferedReader.readLine(Unknown Source)
at com.teamsun.javaMail.smtp.ServerThread.run(ServerThread.java:93)

我监听的是25端口,但解析数据时出现错误,当有人通过foxmail发邮件时则自动解析
我想做的是 
我想在Mail服务器上运行一个程序,   要求能对发出的Mail进行拦截
shanlifang2008发表于:2008-06-20
想请教你一个问题啊,希望你能帮忙解决下好吗?
在GraphPane中怎样显示那个坐标点的值啊???? 
给suen的留言
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|版权声明|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo