详述:
 log4j.appender.datebase.layout.sql = insert into record(message1,message2,message3
                                                  values('%m','%m','%m') 
三个message字段,如何赋值???
我在程序中写的是logger.info("msga");
              logger.info("msgb");
              logger.info("msgc");
企图构造用msga对应message1字段,msgb对应message2字段,msgc对应message3字段.然后写入数据库,
但结果是msga对应message1,message2,message3这三个字段,
        msgb对应message1,message2,message3这三个字段,
        msgc对应message1,message2,message3这三个字段,
生成了三条信息插入数据库。请问,有人能解决这个问题,实现我的意愿吗??         

解决方案 »

  1.   

    当初我也寻思这要这么存的,但研究了好一阵没搞定.最后将多个MESSAGE用"^"隔开,然后用触发器实现的.不过如果这些日志信息和业务相关,最好自己写插入逻辑.
      

  2.   

    不会没有解决机制吧?
    如果真的没有,那么LOG4J的强大与高效岂不是成了传言?
    应该能解决的!
    大家请提出宝贵的想法啊。
      

  3.   

    三个 log 要插到一行记录中?这好像不行吧
      

  4.   

    哦,那就是我说只能通过自己的代码编写一个模块来处理这个机制了,是嘛?
    LOG4J的功能不是针对我的要求方向的嘛?
      

  5.   

    你真执着
    如果你真的非常非常需要这个功能,那就干脆对LOG4J做点改造吧,不难的!
      

  6.   

    我自己写了一个逻辑来实现
    但总觉得log4j不应该就这么局限
    我觉得研究一下它
      

  7.   

    可以通过指定不通的Appender来实现插入到不同的数据库
    但是你说每个插入都有多个%m还没处理过
    你可以把多个%m的值用一个特殊符号连接起来
    插入到一个%m中,之后再用触发器切割这个字段,分插到不同的字段中啊