java写一个出力log包含参数的共通方法
时间: 2024-02-02 11:03:23 浏览: 21
以下是一个示例代码,可以将参数和日志级别作为参数传递给该方法:
```
import java.util.logging.Level;
import java.util.logging.Logger;
public class LogUtil {
private static final Logger LOGGER = Logger.getLogger(LogUtil.class.getName());
public static void log(Level level, String message, Object... params) {
if (LOGGER.isLoggable(level)) {
LOGGER.log(level, String.format(message, params));
}
}
}
```
使用示例:
```
LogUtil.log(Level.INFO, "User %s logged in from %s", username, ipAddress);
```
这将在日志中输出类似以下内容的条目:
```
User alice logged in from 192.168.0.1
```
相关问题
java写一个异常处理出力log中含有多个参数的共通方法
以下是一个Java的异常处理出力log中含有多个参数的共通方法:
```java
public static void logException(Exception e, String message, Object... params) {
String formattedMessage = String.format(message, params);
String logMessage = String.format("%s: %s", formattedMessage, e.getMessage());
logger.error(logMessage, e);
}
```
这个方法接受三个参数:一个Exception对象、一个字符串message,以及可变参数params。它首先使用String.format()方法将params参数替换为字符串中的占位符,然后将结果与异常对象的消息组合成一个错误日志消息。最后,它将这个错误日志消息和异常对象传递给一个logger对象,以便记录错误日志。
这个方法可以用于处理任何类型的异常,并且可以包含任意数量的参数。在调用这个方法时,只需提供一个异常对象、一个字符串和任意数量的参数即可。例如:
```java
try {
// some code that may throw an exception
} catch (Exception e) {
logException(e, "An error occurred while processing request %s with id %d", requestName, requestId);
}
```
在这个例子中,我们把请求的名称和ID作为参数传递给logException()方法,这些参数将被格式化为字符串并添加到日志消息中。这个方法不仅可以帮助我们更容易地记录异常,而且还可以让我们在日志消息中包含更多的信息,以便更好地理解问题的根本原因。
java写一个固定信息拼接传进来的参数 出力到log中的共通方法
可以使用以下的Java代码实现:
```java
public static void log(String... messages) {
StringBuilder sb = new StringBuilder();
for (String message : messages) {
sb.append(message);
}
String logMessage = sb.toString();
System.out.println(logMessage);
}
```
调用该方法时,可以传递任意数量的字符串参数,该方法会将它们拼接成一个字符串,并将该字符串输出到控制台。
例如,可以这样调用该方法:
```java
log("INFO: ", "User ", username, " logged in.");
```
该方法会将这些字符串拼接成一个字符串,例如:
```
INFO: User john.doe logged in.
```
然后将该字符串输出到控制台。