小编laz*_*laz的帖子

如何使用一个log4j配置文件创建2个单独的日志文件?

我无法弄清楚如何配置我的log4j,以便我的debugLog和我的reportLog彼此分开(不是附加的).为什么,在下面的配置中,reportsLog始终为空?

log4j.rootLogger=TRACE, stdout, debugLog

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n

log4j.appender.debugLog=org.apache.log4j.FileAppender
log4j.appender.debugLog.File=logs/debug.log
log4j.appender.debugLog.layout=org.apache.log4j.PatternLayout
log4j.appender.debugLog.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n

log4j.reportsLog=DEBUG,reportsLog
log4j.appender.reportsLog=org.apache.log4j.FileAppender
log4j.appender.reportsLog.File=logs/reports.log
log4j.appender.reportsLog.layout=org.apache.log4j.PatternLayout
log4j.appender.reportsLog.layout.ConversionPattern=%d [%24F:%t:%L] - %m%n
Run Code Online (Sandbox Code Playgroud)

这是我的Java代码:

package test;

import org.apache.log4j.Logger;
import org.apache.log4j.PropertyConfigurator;

public class HelloLogger {

    static final Logger debugLog = Logger.getLogger("debugLog");
    static final Logger resultLog = Logger.getLogger("reportsLog");

    public static void main(String[] args) {
        PropertyConfigurator.configure("log4j.properties");
        debugLog.debug("Hello debugLog message");   
        resultLog.debug("Hello reportsLog message");
    }   
}
Run Code Online (Sandbox Code Playgroud)

java logging log4j

72
推荐指数
2
解决办法
11万
查看次数

如何将json添加到java中的http帖子的主体

我正在尝试在java中为我正在处理的Android应用发布一些JSON数据.以下是有效的还是我需要以不同的方式推送JSON字符串?

HttpPost httpost = new HttpPost("http://test.localhost");
httpost.setEntity(new StringEntity("{\"filters\":true}"));
httpost.setHeader("Accept", "application/json");
httpost.setHeader("Content-type", "application/x-www-form-urlencoded; charset=UTF-8");
//... other java code to execute the apache httpclient
Run Code Online (Sandbox Code Playgroud)

先感谢您

java android json httpclient http-post

40
推荐指数
1
解决办法
3万
查看次数

Java - 使用注释和拦截方法?

有没有一种简单的方法来拦截java中的方法.我需要为所需的方法添加一个注释,以便在通过该方法之前调用一段逻辑.

public void verifyActivity() {
   // Asset if you are on a wrong page
}

@VerifyActivity
public void testLogin() {
   // Login for my automate test
}

@VerifyActivity
public void testSomethingElse() {
   // Test some other UI Automation stuff
}
Run Code Online (Sandbox Code Playgroud)

编辑:

Android应用程序推荐的guice库不包含AOP.是否可以在不添加任何库的情况下使用反射实现此目的?

java android annotations interception

5
推荐指数
1
解决办法
1731
查看次数

Java AES密文文本大小

我正在使用一种非常标准的Java AES加密/解密方式.

byte[] key = hexStringToByteArray("C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF");

byte[] message = hexStringToByteArray("01A0A1A2A3A4A5A6A703020100060001");

SecretKeySpec secretKeySpec = new SecretKeySpec(key, "AES");

// Instantiate the cipher
Cipher cipher = Cipher.getInstance("AES");
cipher.init(Cipher.ENCRYPT_MODE, secretKeySpec);

byte[] encrypted = cipher.doFinal(message);

cipher.init(Cipher.DECRYPT_MODE, secretKeySpec);
byte[] original = cipher.doFinal(encrypted);
Run Code Online (Sandbox Code Playgroud)

如您所见,我使用的是128位密钥和128位消息.我总是得到我期望的结果,但加密结果总是256位长.第二个128位始终相同.截断结果除外,如何确保密码只返回前128位,而不更改前128位?我觉得我有点混淆块大小的定义.

java encryption cryptography block aes

3
推荐指数
1
解决办法
1万
查看次数

为什么当我取消注释toString它写入null?

import java.util.*;

public class Test {
    public static void main(String[] args) {

        List db = new ArrayList();

        ShopDatabase sb = new ShopDatabase(db);
        sb.addEntry(new ProductEntry("film", 30, 400));
        sb.addEntry(new CashierEntry("Kate", "Smith", 23, 600));
        sb.addEntry(new ManagerEntry("Jack", "Simpson", 1, 700));
        sb.addEntry(new ProductEntry("soap", 18, 3));
        sb.addEntry(new ManagerEntry("Helen", "Jones", 60, 650));
        sb.addEntry(new CashierEntry("Jane", "Tomson", 15, 900));
        sb.addEntry(new ProductEntry("shampoo", 25, 5));
        sb.addEntry(new CashierEntry("Bill", "Black", 59, 300));
        Collections.sort(db);
        Iterator itr = db.iterator();

        while (itr.hasNext()) {
            Entry element = (Entry) itr.next();
            System.out.println(element + "\n");
        }
    }
}

public abstract …
Run Code Online (Sandbox Code Playgroud)

java

-5
推荐指数
1
解决办法
116
查看次数