首页编程java编程java catalina是什么,tomcatwork下Catalina是干什么用的

java catalina是什么,tomcatwork下Catalina是干什么用的

编程之家2023-10-11100次浏览

各位老铁们好,相信很多人对java catalina是什么都不是特别的了解,因此呢,今天就来为大家分享下关于java catalina是什么以及tomcat\work\下Catalina是干什么用的的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

java catalina是什么,tomcatwork下Catalina是干什么用的

java里绝对路径和相对路径的区别是什么

按照jdk Doc上的说法”绝对路径名是完整的路径名,不需要任何其他信息就可以定位自身表示的文件。相反,相对路径名必须使用来自其他路径名的信息进行解释。默认情况下,java.io包中的类总是根据当前用户目录来分析相对路径名。此目录由系统属性 user.dir指定,通常是 Java虚拟机的调用目录.”

相对路径顾名思义,相对于某个路径,那么究竟相对于什么路径我们必须弄明白.按照上面jdk文档上讲的这个路径是”当前用户目录”也就是”java虚拟机的调用目录”.更明白的说这个路径其实是我们在哪里调用jvm的路径.举个例子:

java catalina是什么,tomcatwork下Catalina是干什么用的

假设有一java源文件Example.java在d盘根目录下,该文件不含package信息.我们进入命令行窗口,然后使用”d:”命令切换到d盘根目录下,然后用”javac Example.java”来编译此文件,编译无错后,会在d盘根目录下自动生成”Example.class”文件.我们在调用”java Example”来运行该程序.此时我们已经启动了一个jvm,这个jvm是在d盘根目录下被启动的,所以此jvm所加载的程序中File类的相对路径也就是相对这个路径的,即d盘根目录:D:/.同时”当前用户目录”也是D:/.在System.getProperty(“user.dir”);系统变量”user.dir”存放的也是这个值.

我们可以多做几次试验,把”Example.class”移动到不同路径下,同时在那些路径下,执行”java Example”命令启动jvm,我们会发现这个”当前用户目录”是不断变化的,它的路径始终和我们在哪启动jvm的路径是一致的.

java catalina是什么,tomcatwork下Catalina是干什么用的

搞清了这些,我们可以使用相对路径来创建文件,例如:

File file= new File(“a.txt”);

File.createNewFile();

假设jvm是在”D:/”下启动的,那么a.txt就会生成在D:/a.txt;

此外,这个参数还可以使用一些常用的路径表示方法,例如”.”或”./”代表当前目录,这个目录也就是jvm启动路径.所以如下代码能得到当前目录完整路径:

File f= new File(“.”);

String absolutePath= f.getAbsolutePath();

System.out.println(absolutePath);//D:/

最后要说说在eclipse中的情况:

Eclipse中启动jvm都是在项目根路径上启动的.比如有个项目名为blog,其完整路径为:D:/work/IDE/workspace/blog.那么这个路径就是jvm的启动路径了.所以以上代码如果在eclipse里运行,则输出结果为” D:/work/IDE/workspace/blog.”

Tomcat中的情况.

如果在tomcat中运行web应用,此时,如果我们在某个类中使用如下代码:

File f= new File(“.”);

String absolutePath= f.getAbsolutePath();

System.out.println(absolutePath);

那么输出的将是tomcat下的bin目录.我的机器就是” D:/work/server/jakarta-tomcat-5.0.28/bin/.”,由此可以看出tomcat服务器是在bin目录下启动jvm的.其实是在bin目录下的” catalina.bat”文件中启动jvm的.

JavaTomcat启动错误

原因:这个是JDK版本不对造成的。

解决方法:

1、即你用某版本的JDK编译的class,放在另一版本JDK上去运行,就容易发生这种异常了(常常是高版本编译在低版本上运行时发生)。

2、这里显然你的Tomcat用的JDK与你编译用的JDK不一样,换成一致的版本就OK了。

方法二:

1、在对应DaoImpl中加入sessionfactory的set方法、get方法。

private SessionFactory sessionFactory;

public SessionFactory getSessionFactory(){

return sessionFactory;

}

public void setSessionFactory(SessionFactory sessionFactory){

this.sessionFactory= sessionFactory;}继承JdbcDaoSupport。

UserDaoImpl extends JdbcDaoSupport

tomcat\work\下Catalina是干什么用的

Catalina下的文件

是tomcat编译你的项目后,产生的文件,

也就是你的项目的class文件(如果不是java文件,则直接复制,比如jsp等)

也就是说,你把项目的原文件放入webapps,当tomcat启动的时候,就会把

这个文件夹下的项目,进行编译,然后存放到Catalina目录下,

当别人访问的时候,就是访问这里的文件

启动Tomcat时,出这的一段话,是什么意思

这个是虚拟内存需调整、

JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。可以利用JVM提供的-Xmn-Xms-Xmx等选项可进行设置。Heap size的大小是Young Generation和Tenured Generaion之和。

提示:在JVM中如果98%的时间是用于GC且可用的Heap size不足2%的时候将抛出此异常信息。

提示:Heap Size最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。

解决方法:

手动设置Heap size

修改TOMCAT_HOME/bin/catalina.bat,在“echo"Using CATALINA_BASE:$CATALINA_BASE"”上面加入以下行:

Java代码

set JAVA_OPTS=%JAVA_OPTS%-server-Xms800m-Xmx800m-XX:MaxNewSize=256m

view plaincopy to clipboardprint?

set JAVA_OPTS=%JAVA_OPTS%-server-Xms800m-Xmx800m-XX:MaxNewSize=256m

set JAVA_OPTS=%JAVA_OPTS%-server-Xms800m-Xmx800m-XX:MaxNewSize=256m

或修改catalina.sh

在“echo"Using CATALINA_BASE:$CATALINA_BASE"”上面加入以下行:

JAVA_OPTS="$JAVA_OPTS-server-Xms800m-Xmx800m-XX:MaxNewSize=256m"

关于java catalina是什么和tomcat\work\下Catalina是干什么用的的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

十公分是多少厘米 一百八十公分是多少厘米java中1l是什么意思,JAVA中sum += a是什么意思