java util logging_简单日志记录,使用java.util.logging
jsp+servlet+JavaBean模式下,可以做个简单的日志记录,日志文件保存在服务器.(Tomcat)
package controller;
import java.io.File;
import java.io.IOException;
import java.util.logging.FileHandler;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(name = "test", urlPatterns = "/*")
public class MainServlet extends HttpServlet {
private static final long serialVersionUID = 7922611206674042939L;
private static final String slash = File.separator;
private static final String LOG_PATH = slash + "pro.log";
public Logger logger = null;
@Override
public void init(ServletConfig config) throws ServletException {
System.out.println("container opening");
try {
logger = Logger.getLogger(MainServlet.class.getName());
logger.setUseParentHandlers(false);
logger.addHandler(new FileHandler(config.getServletContext()
.getRealPath(LOG_PATH)));
} catch (Exception e) {
System.out.println("testing");
logger = Logger.getLogger(MainServlet.class.getName());
}
}
@Override
public void destroy() {
System.out.println("container closed");
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
try {
String[] str = {};
System.out.println(str[-1]);
} catch (Exception e) {
System.out.println(4);
logger.log(Level.WARNING, "数组下标越界", e);
}
}
}
日志文件一般安全要求不高,不需要至于WEB-INF目录下,直接输入日志名会自动生成.
java.util.logging.FileHandler类有个重写的构造器,可选择是否追加记录.看具体需求.
相对于log4j有很多局限性,但适合小型项目的简单日志记录.
个人感觉很适合打桩使用,毕竟无需引入额外的jar包,将文件处理器修改为控制台处理器,取消日志本地化后,就可以随意打桩调式了.当项目部署时,调用
logger.setlevel(Level.OFF);
即可
java util logging_简单日志记录,使用java.util.logging相关推荐
- 带有Java Util日志记录的Java 8延迟调用
在博客文章"在Log4j2中更好地执行非日志记录器调用"中 ,我介绍了可以在Log4j 2中使用的方法,这些方法可以减少或避免在基于指定日志级别实际上根本未记录的日志语句中调用方法 ...
- sqllite java 代码,非常简单的SQLite的Java程序
/* 在你的代码中引用这个驱动: Class.forName("org.sqlite.JDBC"); Connection conn = DriverManager.getConn ...
- linux c 贝塞尔曲线_使用 logzero 在 Python 中进行简单日志记录 | Linux 中国
快速了解一个方便的日志库,来帮助你掌握这个重要的编程概念.-- Ben Nuttall logzero 库使日志记录就像打印语句一样容易,是简单性的杰出代表.我不确定 logzero 的名称是否要与 ...
- JAVA毕设项目九宫格日志网站(java+VUE+Mybatis+Maven+Mysql)
项目运行 环境配置: Jdk1.8 + Tomcat8.5 + Mysql + HBuilderX(Webstorm也行)+ Eclispe(IntelliJ IDEA,Eclispe,MyEclis ...
- WebService的简单案例记录(Java)
关于WebService,工作关系,断断续续有接触到一些,写完就忘,下次要写又不记得. 所以做个简单的案例,啥时候忘了能查一查. 酱紫,先大概讲一下我理解的WebService,因为接触时间不长,可能 ...
- java 快速排序算法简单_排序算法java版,速度排行:冒泡排序、简单选择排序、直接插入排序、折半插入排序、希尔排序、堆排序、归并排序、快速排序......
先推荐一篇关于排序算法的文章:http://www.cppblog.com/guogangj/archive/2009/11/13/100876.html 本文思路部分来源于上篇文章,但测得的结果似乎 ...
- 蚁群算法java实现_简单蚁群算法 + JAVA实现蚁群算法
一 引言 蚁群算法(ant colony optimization,ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型技术.它由Marco Dorigo于1992年在他的博士论文中引入,其灵 ...
- 怎样对java网站进行简单修改_用Java写一个简单的毕业设计,功能就增删改查的一些基本功能就可以,需要哪些技术?...
JAVA实现对吗.我来BB几句吧. 首先,你描述的问题,解决方案是属于java web的知识. 毕设的程度呢.第一种方案: 你可以入手很成熟很成熟的ssm架构.就是Spring+mybatis plu ...
- java 随机生成简单中文_用java语言实现随机生成中文姓名
中文字符一般使用的编码格式为"GB2312",那么gb2312到底是什么,简单介绍一下(参考百度百科) GB2312 一般指信息交换用汉字编码字符集. <信息交换用汉字编码字 ...
最新文章
- 剑指offer--day07
- mq系列传感器的程序_消息中间件(一)MQ详解及四大MQ比较
- mini2440系统引导(四)存储控制器
- 病毒周报(100719至100725)
- [引]Windows Server 2003 : 网络负载平衡
- php 与 python对接_关于PHP调用Python的实施以及配置
- ecshop操作数据库类
- 猜物品游戏java编程_小猿圈Java初学者练习小案例:猜数字游戏
- ES6/05/正则表达式简介,正则表达式如何使用,正则表达式中的特殊字符(边界符,量词符),预定义类,正则表达式中的替换
- SQL DATEADD (Transact-SQL)根据需要返回时间,
- 四款优秀的源代码扫描工具简介
- [Windows 驱动]-Windows 安装好后没有驱动怎么办捏?
- Unity3D lable控件
- VGG合成文字数据生成方法
- Javaweb安全——Java类加载机制
- 新国标下的2020年电动单车企业蓬勃发展
- chrome浏览器下载速度慢问题解决办法
- 【应急基础】————13、VBS遍历目录获取文件Hash
- 中债登——各功能快捷入口
- iOS 免审核更换图标