参考:

How to configure Log4j in JDev 11g

Ever wanted to use log4j in your adf project ? Well though Oracle doesn’t recommends the use of log4j, i say its purely your choice to use it or not.

So how do we configure log4j in adf  ? Pretty simple..just follow these steps

1) Add log4j jars in the project library

2) Create a file log4j.properties in your Application Sources Directory (this folder is seen in jdev – in both ViewController and Model Folder).

For Model project this file has to be present at <path of model project>Model\src.

For ViewController project this file has to be present as <path of model project>ViewController\src

3) Paste the following contents

****************************

# Set root logger level to INFO and its only appender to ConsoleOut.
log4j.rootLogger=INFO,ConsoleOut,F
# ConsoleOut is set to be a ConsoleAppender.
log4j.appender.ConsoleOut=org.apache.log4j.ConsoleAppender
# ConsoleOut uses PatternLayout.
log4j.appender.ConsoleOut.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleOut.layout.ConversionPattern=%-5p: [%d] %c{1} – %m%n
log4j.logger.org.apache.jsp=DEBUG
log4j.appender.F=org.apache.log4j.FileAppender
log4j.appender.F.File=C:/Logs/Logger.log
log4j.appender.F.layout=org.apache.log4j.PatternLayout
log4j.appender.F.layout.ConversionPattern=%d{MM-dd@HH:mm:ss,SSS} %-5p (%13F:%L) %3x – %m%n

#Addon for
com.sun.faces.level=FINE

****************************


集成开发测试

1.将log4j jars添加至项目中。

2.新建log4j.properties并将其放入myclasses目录(oacore中将该文件放入$JAVA_TOP目录中),并在其中添加以下内容

3.log4j.properties中的内容(此文件只是一个简略的日志使用,更详细的日志生成设置,请参考官方文档及他人学习笔记)

# Set root logger level to INFO and its only appender to ConsoleOut.
log4j.rootLogger=INFO,ConsoleOut,F,DATABASE
# ConsoleOut is set to be a ConsoleAppender.
log4j.appender.ConsoleOut=org.apache.log4j.ConsoleAppender
# ConsoleOut uses PatternLayout.
log4j.appender.ConsoleOut.layout=org.apache.log4j.PatternLayout
log4j.appender.ConsoleOut.layout.ConversionPattern=%-5p: [%d] %c{} – %m%n
log4j.logger.org.apache.jsp=DEBUG
log4j.appender.F=org.apache.log4j.FileAppender
#由于本地windows系统默认支持中文,所以本地即使不配置编码方式也不会乱码,若在服务器乱码,请调整编码方式
log4j.appender.F.Encoding=GBK
#会将日志文件生成到指定的目录,例如工程在D盘,则生成至D盘的Logs目录
#log4j.appender.F.File=/Logs/Logger.txt #本地测试时,会将日志文件生成至\jdevhome\jdev\system\oracle.j2ee.10.1.3.41.\embedded-oc4j\config\logs目录
#服务器上会将日志生成至apps/tech_st/10.1.3/j2ee/home/logs目录
#服务器若有多个oacore节点,生成的日志结果暂时还不清楚
log4j.appender.F.File=./logs/Logger.txt
log4j.appender.F.DatePattern='.'yyyy-MM-dd
log4j.appender.F.layout=org.apache.log4j.PatternLayout
#log4j.appender.F.layout.ConversionPattern=%d{yyyy-MM-dd@HH:mm:ss,SSS} %-5p (%13F:%L) %3x – %m%n
log4j.appender.F.layout.ConversionPattern=%d{yyyy-MM-dd@HH:mm:ss,SSS} %-5p %c.%M:%L - %m%n #DATABASE

log4j.appender.DATABASE=org.apache.log4j.jdbc.JDBCAppender
log4j.appender.DATABASE.URL=jdbc:oracle:thin:@host:port:SID
log4j.appender.DATABASE.driver=oracle.jdbc.driver.OracleDriver
log4j.appender.DATABASE.user=USERNAME
log4j.appender.DATABASE.password=PASSWORD
log4j.appender.CONSOLE.Threshold=ERROR
log4j.appender.DATABASE.sql=INSERT INTO LOG4J_TEST(stamp,thread, infolevel,class,messages) VALUES ('%d{yyyy-MM-dd HH:mm:ss}', '%t', '%p', '%l', '%m')

# INSERT INTO LOG4J (Message) VALUES ('[framework] %d - %c -%-4r [%t] %-5p %c %x - %m%n')

# 写入数据库中的表LOG4J的Message字段中,内容%d(日期)%c: 日志信息所在地(类名)%p: 日志信息级别%m: 产生的日志具体信息 %n: 输出日志信息换行
log4j.appender.DATABASE.layout=org.apache.log4j.PatternLayout
log4j.appender.DATABASE.layout.ConversionPattern=%d %-5p [%c] %m%n


#Addon for
com.sun.faces.level=FINE

4.代码

import org.apache.log4j.Logger;

public class XXXCO
extends OAControllerImpl
{ private static Logger logger = Logger.getLogger(XXXCO.class.getName()); public void processRequest(OAPageContext pageContext,
OAWebBean webBean)
{
logger.info("测试 123");
} }

(OAF)jdeveloper集成log4j并将日志输出到指定文件并写入数据库的更多相关文章

  1. TOMCAT控制台日志输出到指定文件中

    1 .修改startup.bat第42行 call "%EXECUTABLE%" start %CMD_LINE_ARGS% 为 call "%EXECUTABLE%&q ...

  2. zookeeper 日志输出到指定文件夹

    最近在研究Zookeeper Storm Kafka, 顺便在本地搭了一套集群, 遇到了Zookeeper日志问题输出路径的问题, 发现zookeeper设置log4j.properties不能解决日 ...

  3. 《手把手教你》系列基础篇(八十七)-java+ selenium自动化测试-框架设计基础-Log4j 2实现日志输出-上篇(详解教程)

    1.简介 Apache Log4j 是一个非常古老的日志框架,并且是多年来最受欢迎的日志框架. 它引入了现代日志框架仍在使用的基本概念,如分层日志级别和记录器. 2015 年 8 月 5 日,该项目管 ...

  4. log4j2按日志级别输出到指定文件

    在项目中,可能会产生非常多的日志记录,为了方便日志分析,一般可以将日志按级别输出到指定文件,本次就先说说log4j2的实现吧: 1.先加入log4j2依赖包 2.写一个java类进行测试,类文件中仅仅 ...

  5. C#中使用Log4net日志输出到本地文件、Textbox或Listview

    网上很多配置log4net的方法,但是排行靠前的 根本就没有说明清除,导致浪费了两个小时来搞清楚如何配置,真是无语,特写此文,给那些刚接触log4net的朋友 1.参考链接:http://blog.s ...

  6. 不让应用的日志输出到message文件中

    有时我们制定一个应用的日志输出到一个文件的时候例如: (百度了好久都百度不好,这里记录一下时间2015年12月7日16:28:39) local7.*                          ...

  7. vscode springboot logback 日志输出到不同文件

    参照了:https://blog.csdn.net/appleyk/article/details/78717388# 在src\main\resources中新建一个logback-boot.xml ...

  8. java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用

    java实现将指定文件夹里所有文件路径输出到指定文件作为参数化文件给lr脚本使用 import java.io.BufferedReader; import java.io.BufferedWrite ...

  9. log4j根据包名 日志输出到不同文件中 , service层无法输出日志问题

    1. service 层因为要配置事务,使用了代理 <aop:config proxy-target-calss=''true"> <aop:pointcut id=&qu ...

随机推荐

  1. python+Eclipse+pydev环境搭建(转)

    编辑器:Python 自带的 IDLE 简单快捷, 学习Python或者编写小型软件的时候.非常有用. 编辑器: Eclipse + pydev插件 1. Eclipse是写JAVA的IDE, 这样就 ...

  2. android studio annotation 配置过程

    参考了好些配置,发现总有这样,那样的问题. 环境:androidstudio 1.5 preview 2 sdk 6.0 1.首先新建一个android项目. 过程略 2.配置project的buil ...

  3. bootstrap3 兼容IE8浏览器

    近期在使用bootstrap这个优秀的前端框架,这个框架非常强大,框架里面有下拉菜单.按钮组.按钮下拉菜单.导航.导航条.面包屑.分页.排版.缩略图.警告对话框.进度条.媒体对象等,bootstrap ...

  4. C++中的常量折叠

    先看例子: #include <iostream> using namespace std; int main() { ; int * p = (int *)(&a); *p = ...

  5. Mongodb在Windows上的配置

    1.打开mongodb的官网:https://www.mongodb.org/进行下载相应平台的安装包 2.我们选择最新版的3.2版本来下载,选择对应的操作系统版本来下载,这里选择windows Mo ...

  6. SoapUI接口测试实例(webservice接口)

    接口测试步骤 注:以测试queryHistoryAccepts接口作举例. 1. 用户登录获取SessionKey实体信息 注:由于大部分的接口都需要SessionKey实体的信息,因此测试那些接口都 ...

  7. Linux 下编译安装软件,找不到共享库 xx.so 的解决办法

    编译memcached时,报错没有libevent,于是下载libevent,configure , make && make install ,然后在重新安装memcache成功之后 ...

  8. Eclipse中使用Working Set来管理项目

    Eclipse作为一款流行的JavaIDE开发工具,其有很多好用的功能为我们的开发提供帮助.但我们的工作空间中有很多项目时,管理起来就很头疼了. 但是我们又不想更换工作区间,所以我们需要一个更加有效的 ...

  9. 设计模式C#实现(六)——单例模式

    单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点. 构成: 1.私有的构造函数 2.私有静态的实例 3.返回实例的静态方法 public class Singleton { privat ...

  10. IE6/7/8不支持jQuery创建非闭合格式的链接A

    代码如下 <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <scri ...