流程:
因为我们要操作的是日志文件。而日志文件是位于文件夹LoG下面的,因此我们要得到日志文件的路径就应该首先获得LoG 文件夹的路径。日志文件的路径就等于LOG文件夹
的路径加上日志文件的名字;因此首先得到LOG文件夹的路径。通过SYSTEM的GETPROPERTY(”user.dir“)方法来获得用户当前的工作目录;LOG文件的路径就等于用户的工作目录加
[color=darkred]加上文件分隔符在加上文件名;在此由于不同的操作系统不一样,其文件分隔符也不一样,所以应该动态的去获得当前系统的文件分隔符,采用SYStem ,getproperty
("file.separator")来获得, 因此日志文件夹LOG的路径为String s=System.getProperty("user.dir")+System.getProperty("file.separator")+"log"; 但是由于字符串的链接[/color]是在静态常量区中来进行的,而且是不会被垃圾回收所回收的,这样的情况。我们考虑使用STRINGBUFFER 和STRINGBUILDER 通过这两个类的APPEND()方法来进行字符串的连接。
在此由于我们这个日志是多用户的,是开启多个线程的。所以STRINGBUFFER不能用 ,因为它是线程安全的。不能同时几个线程一起访问。所以选用了STRINGBUILDER类。
得到了LOG文件夹的路径之后,我们就应该去得到日志的文件名了。观察出:日志文件名=类名+.log.+当前日期
那么我们应该在定义一个方法来取得当前的日期,并且格式化该日期:
1)通过Calendar的GetInstece()方法来获得一个Calendar的对象,并用这个对象的GETTIME()方法取得当前时间
2)通过SimpleDateFormat类来格式化时间。
得到想要的日期以后就应该得到类名了: 因为在此已经知道类的情况我们直接利用 类名.CLASS取得类模板。然后用类模板的到该类的名字。在此需要注意的是如果我们直接
利用GETNAME()这个方法会得到他的包名。所以我们采用另外一个方法getSimpleName(),这样取得的就是只有类名了。
完成上面3个步骤之后:我们便可以得出日志文件的路径 = LOG文件的路径+文件分隔符+类名+.log.+当前日期 ;
我们还可以判断LOG文件是不是已经存在。如果存在判定其是不是文件夹,如果不是文件夹就删除。如果不存在我们就创建一个文件。NEW FiLE(文件夹的路径)通过FiLE。isDirectory 判定是不是文件夹 ,如果不是就删除。 通过EXITES()方法判定 文件夹存在不。如果不存在通过MKDIR()创建。
做好上面的之后。我们就可以向文件中写东西了。定义一个方法。NEW FILEOUTPUTSTREAM(文件路径,TRUE) 在此应该注意构造时应该选择两个参数的,后面的参数必须是TRUE 如果不是TRUE ,那么当我们以后再写入的时间就会覆盖之前的。 就没有日志的意义了。
最后我们做的是对我们写入的东西进行了一步格式化:2009-12-02 9:4:27 [com.lovo.lis.util.Logger]-INFO: 写入的信息
观察上面的格式:
1)首先要做的就是得到当前的 时。分。秒 那么我们另行定义一个方法取得;
2)这里的信息有类名其包含包名。因此用类模板的GETNAME()取得
3)有了上面的这些之后 就是进行字符串的连接了.当然也可以用Stringbuilder。
分享到:
相关推荐
本教程将通过一个基于Java服务器端的推送demo,帮助你理解如何实现iOS设备的消息推送流程。 一、Apple Push Notification Service (APNs) APNs是苹果公司为开发者提供的一个服务,允许应用程序在后台发送通知到用户...
在Java网络游戏服务器端测试中,我们关注的核心是...在实际测试过程中,我们需要对上述各个层面进行深入的测试,包括单元测试、集成测试、性能测试、安全测试等,以确保Java网络游戏服务器端的稳定运行和优质体验。
2. **Java服务器端处理**: - **接收文件**:在Java服务器端,通常使用Spring MVC或者Struts2等MVC框架来处理HTTP请求。当收到文件上传请求时,服务器需要解析请求体,获取到上传的文件内容。Spring MVC中,可以...
在Java编程领域,开发一个简单的Web服务器是一项基础且有趣的任务,它可以帮助我们深入理解HTTP协议、网络编程以及服务器端的工作原理。本项目标题为“Java开发的简单WEB服务器源码”,意味着它提供了一个用Java语言...
Java Web开发软件是用于构建和部署Web应用程序的强大工具集,主要针对使用Java语言进行服务器端编程的场景。在Java Web开发中,开发者可以利用一系列框架、库和集成开发环境(IDE)来创建功能丰富的动态网站、企业级...
在本Java课程设计中,我们将深入探讨如何构建一个完整的聊天程序,包括客户端和服务器端的实现。这个项目旨在让学生掌握网络编程、多线程以及Java I/O等关键技能,为今后开发分布式系统打下坚实基础。 首先,让我们...
Java局域网聊天工具服务器端是一款基于Java编程语言开发的通信应用,主要用于在局域网内实现用户之间的即时通讯功能。这款服务器端程序是整个聊天系统的核心部分,它负责接收客户端发送的消息,处理这些消息,并将...
SVN(Subversion)是一种广泛使用的版本控制系统,用于管理软件项目的源代码和其他文件的历史记录,使得多人协作开发变得更加...在安装和配置好这些工具后,开发者可以充分利用SVN的强大功能,实现更高效的开发流程。
Java作为跨平台的开发语言,广泛应用于服务器端开发。其强大的类库和框架,如Spring Boot,可以方便地构建高性能的服务。在直播服务器的设计中,Java可以用于处理网络连接、数据传输、解码编码等任务。例如,使用...
不过,这些库主要用于Java桌面应用和服务器端,Android原生的`Log`类已经足够满足大部分需求。 总之,正确地使用Java在Android中写日志是优化应用质量和提升开发效率的重要手段。理解不同日志级别,遵循良好的日志...
Java作为一种跨平台的编程语言,其标准库提供了丰富的网络编程API,如`java.net`和`java.nio`包,用于实现服务器端的套接字编程和并发处理。开发者可以使用Socket、ServerSocket、Selector等类来构建并发服务器。 ...
开发流程如下: - 配置服务器的基本信息,如监听端口、用户认证等。 - 设置上传目录,作为图片存放的地方。 - 实现文件上传功能,确保图片文件能够正确保存在服务器上。 - 可选地,添加权限控制,限制用户只允许...
Spring框架能够极大地简化Java Web应用的开发过程。 #### 4. Hibernate Hibernate是一个对象关系映射(ORM)工具,用于处理数据库相关的操作。通过Hibernate,开发者可以使用面向对象的方式来操作数据库,而无需编写...
Java在游戏开发中主要用于服务器端,因为它的性能和可扩展性能够满足大量并发用户的需求。此外,Java的开源库和框架也为游戏开发提供了丰富的工具和支持。 【压缩包子文件的文件名称列表】:未提供具体的文件名称,...
首先,Java作为服务器端编程语言,以其跨平台性和强大的面向对象特性在Web开发中占据主导地位。学习Java Web开发首先要掌握Java的基础语法、类、对象、接口、异常处理以及多线程等核心概念。在实际项目中,Java的...
9. **持续集成/持续部署(CI/CD)**:服务器代码的开发过程中,CI/CD流程是必不可少的。它包括自动化测试、构建、部署和监控,以确保代码质量并快速响应变更。 10. **性能优化**:服务器代码还需要考虑性能优化,包括...
界面包含文本区域,滚动现实服务器端日志。 提供 Servlet支持: 支持从 Web.xml 中读取 Servlet 配置信息; 动态构建 Servlet 对象,响应用户的 doGet 和 doPost请求,返回响应结果到客户端;
Java是一种广泛应用于服务器端开发的强大语言,尤其适合构建大型、高性能的Web应用。BBS系统通常包含用户注册、登录、发帖、回帖、搜索等功能,这些功能的实现需要扎实的Java基础,如Servlet、JSP、Spring框架、...
综上所述,这个主题涵盖了从用户交互的文件上传和下载功能,到服务器端的断点续传实现,再到使用AOP进行操作日志记录的整个流程。理解并掌握这些知识点对于开发高效、健壮的Web应用程序至关重要。