Java项目中的jASEN检测垃圾邮件

问题描述 投票:0回答:2

我想在我的 Java 项目中使用 jASEN,以便检索我拥有的一组电子邮件的垃圾邮件分数。

我的代码如下:

public static double Get_jASEN_Score(MimeMessage mm) {
    double jASEN_score = -1;

    try {
        // Initialise the scanner
        JasenScanner.getInstance().init();

        JasenScanResult result = JasenScanner.getInstance().scan(mm);
        jASEN_score = result.getProbability();
    } catch (JasenException e) {
        Console.Console.Print_To_Console(String.format("jASEN Spam filter Error: %s", e.getMessage()), true, false);
    }

    return jASEN_score;
}

问题是:

JasenScanner.getInstance().init();
生产线的处理时间是永恒的。我将“jasen-conf”文件夹放在正确的位置。 有什么建议吗?

java email spam
2个回答
0
投票

试试这个:

private static final JasenScanner JASEN_SCANNER = JasenConnection.getInstance();

public static double getJASENScore(MimeMessage message) {
    try {
        JasenScanResult result = JASEN_SCANNER.scan(message);
        return result.getProbability();
    } catch (JasenException ex) {
        LOGGER.info("JASON error; " + ex.getMessage());
    }
    return -1;
}

编辑:

public class JasenConnection {

private static JasenScanner jasenScanner;

protected JasenConnection() {
    try {
        JasenScanner.getInstance().init();
        ErrorHandlerBroker.getInstance().setErrorHandler(new EmptyErrorHandler());
        jasenScanner = JasenScanner.getInstance();
    } catch (JasenException ex) {
        //LOGGER.info(ex.getMessage());
    }
}

public static JasenScanner getInstance() {
    if (null == jasenScanner) {
        new JasenConnection();
    }
    return jasenScanner;
}

}


0
投票

Java 中有 JasenScanner 的库吗?

© www.soinside.com 2019 - 2024. All rights reserved.