听说你JavaWeb学的不好?(十四)

64 阅读2分钟

开启掘金成长之旅!这是我参与「掘金日新计划 · 12 月更文挑战」的第14天,点击查看活动详情

接上

// 获取应用的根路径(非常重要),因为在java源代码当中有一些地方可能会需要应用的根路径,这个方法可以动态获取应用的根路径
 // 在java源码当中,不要将应用的根路径写死
 public String getContextPath();
 //String contextPath = application.getContextPath();
 // 获取文件的绝对路径(真实路径)
public String getRealPath(String path);

ServletContext application = getServletContext();

//加了 “/” 的那个 “/” 表示web的根
String realPath = application.getRealPath("/index.html"); //可以
//string realPath = application.getReaLPath("index.html"); //不加“/"也可以
out.print(realPath + "<br>");

//getRealPath中传的东西要从web文件夹下开始写
//如果web文件夹中有common文件夹,common文件夹中有index.html,那么要获取index.html的绝对路径要像下面这样
String realPath = application.getRealPath("common/index.html");
// 通过ServletContext对象也是可以记录日志的
public void log(String message);
public void log(String message, Throwable t);


application.log("哈哈哈哈,今天又是快乐的一天");

int age = 17;
if(age < 18) { 
application.log( message: "对不起,您未成年,请绕行!”,new RuntimeException("小屁孩, 快走开,不适合你! ")); 
//像这样,这里的异常并不会发生(控制台看不到),而只是记录这个异常的日志
// 这些日志信息记录到哪里了?
// 在idea配置的Tomcat服务器的logs目录下(idea可以配置多个Tomcat,在自己idae配置文件中可能会有多个tomcat副本)
//在启动tomcat服务器的时候可以看到 有一栏 :Using CATALINA_BASE: "……",其中路径就是副本位置  
// Tomcat服务器的logs目录下都有哪些日志文件?
//catalina.2022-06-06.log 服务器端的java程序运行的控制台信息。
//localhost.2022-06-06.log ServletContext对象的log方法记录的日志信息存储到这个文件中。
//localhost_access_log.2022-06-06.txt 访问日志