打印日志在本地与存进数据库方法

 首先介绍日志写入数据库:

entity:

public class DataLog extends StringIdVO{

    private String dataType;
    private Integer pageNum;
    private Integer pageSize;
    private Integer pageCount;
    private Integer successNum;
    private String failedIds;
    private String failedReasons;
    private String flag;

   get/ set省略..........

service:

@Transactional()
public interface DataLogService extends BaseService<DataLog> {

    public void addLog(DataLog log);
}

DataLogServiceImpl:

@Override
    public void addLog(DataLog log) {
        dao.insert(log);
        
    }

使用:set进数据库 ....

 DataLog log = new DataLog();
        log.setId(GeneratorUUID.uuid());
        log.setCreateDate(new Date());
        log.setDataType(dataType.name());
        log.setFailedIds(failedMessage.toString());
        log.setSuccessNum(successNum);
        log.setFlag("1");
        log.setPageNum(pageNum);
        log.setPageSize(PAGE_SIZE);
        log.setPageCount(pageCount);
        log.setFailedReasons(allReasons.toString());
        logService.addLog(log);//调用service实现存入数据库
        System.out.println("type:" + dataType.name() + ",pageNum::" + pageNum + ",pageSize+::" + PAGE_SIZE
                + ",successNum::" + successNum);
       

太简单了,看看下边封装好的Util,实现日志存在本地文件夹 ,路径为String dir = "E:\\uploadLog";

后台打印的工具类:

public class CreateLogUtil {
	
	public static void main(String[] args) {
		FileWriter fw = getFileWriter(System.currentTimeMillis()+".txt");
		writeLog(fw, "123");
		writeLog(fw, "456");
		closeFileWriter(fw);
	}
	/**
	 * 打开日志记录文档
	 * @param fileName
	 * @return
	 */
	public static FileWriter getFileWriter(String fileName) {
		String dir = "E:\\uploadLog";

		File folder = new File(dir);
		if (!folder.exists()) {
			folder.mkdirs();
		}
		File logFile = new File(dir +"\\" + fileName);
		FileWriter fw = null;
		try {
			if(!logFile.exists()) {
				logFile.createNewFile();
			}
			fw = new FileWriter(logFile);
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
		return fw;
	}

	/**
	 * 记录日志
	 * @param fw
	 * @param log
	 */
	public static void writeLog(FileWriter fw, String log) {
		try {
			fw.write(log + "\r\n");
			fw.flush();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
	/**
	 * 关闭日志记录文档
	 * @param fw
	 */
	public static void closeFileWriter(FileWriter fw) {
		try {
			fw.close();
		} catch (IOException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
	}
}

猜你喜欢

转载自blog.csdn.net/RuiKe1400360107/article/details/84886053