定义web应用程序
在Tomcat中定义web应用程序有两种方法:编辑配置文件或使用交互式管理工具。
手动编辑配置文件
修改<Tomcat home>/conf/server.xml
:通过插入
<Context path="/jchem"
docBase="<JChem home>"
reloadable="true" >
</Context>
</Host>
重新启动web服务器。
使用管理工具
1. 进入Tomcat的管理工具http://localhost:8080/
管理员
2. 输入用户名和密码:(默认值:admin
,admin
)
3. 在树组件中选择TomcaServer >> Service >> Host。
4. 在“可用操作”列表框中选择“创建新上下文”。
5. 设置文档库和路径(例如:c:\jchem,/jchem)
6. 单击保存并提交更改
7. 折叠并展开主机节点以检查新的子节点:Context(/jchem)
8. 重新启动Tomcat
Jar文件/classpath
Tomcat为jar文件指定了目录。这些目录中的所有jar文件都自动包含在服务器的classpath类路径中(在Tomcat启动时)。
注意:Tomcat从不使用系统类路径。
将<JChem home>/lib/
中的所有文件以及包含所选数据库(和所有其他自定义库)的JDBC驱动程序的jar或zip文件复制到Tomcat的lib子目录中:
- Tomcat 4.0:$CATALINA_HOME/lib
- Tomcat 4.1到5.x:$CATALINA_HOME/shared/lib
- Tomcat 6.0及以上版本:$CATALINA_HOME/lib
重新启动Tomcat,使更改生效。
注意:升级JChem时,请始终更新这些jar文件。
Java选项
推荐的JVM选项
应该为Tomcat设置两个重要的Java选项。
最大堆大小:这是允许Java虚拟机(JVM)分配的最大堆内存量。对于大多数JVM,最大堆大小的默认设置是64MB。您可以通过设置-xmx
jvm参数来增加应用程序的最大堆大小。例如-Xmx1024m
允许为JVM分配最大1GB(1024MB)堆。
注意:建议指定一个比系统中的物理RAM数量低得多的值,这样操作系统和其他应用程序也会有足够的空间。否则将使用操作系统的交换内存,这可能导致磁盘活动频繁,并降低系统性能。
服务器模式:服务器模式指示JVM执行更广泛的运行时优化。启动之后意味着执行速度稍微慢一点,但是在JVM有足够的时间优化代码之后,执行速度会大大加快。
为Tomcat设置JVM选项
运行Tomcat5.5及更高版本的Windows:转到“开始”菜单中的“ApacheTomcatX.x”文件夹。启动“Configure Tomcat”。
在配置对话框中选择“Java”选项卡。
服务器模式:这由jvm.dll
在“Java虚拟机”文本框中指定。(不应指定“-server
”或“-client”JVM选项。)
dll通常放在JRE目录的“server”目录下。
例如:“C:\Program Files\Java\jdk1.6.0\U 07\jre\bin\server\jvm.dll
".
完整的SDK应该从Oracle下载,因为JRE安装程序只包含“client”目录。
最大堆大小:“最大内存池”文本框与堆大小限制相对应。
(如果使用此文本框,则不需要指定“-Xmx
”Java选项。)
高级JRE选项可以在“Java选项”文本区域中指定。在选项列表的底部附加其他Java选项。
运行tomcat4.1或更早版本的Windows:将Java选项放入CATALINA_OPTS
环境变量中。为此,运行controlpanel/System,选择Environment Variables并创建CATALINA_OPTS
变量,然后设置所需的选项,例如“-server-Xmx400m
”。
Linux:将Java选项放入CATALINA_OPTS
环境变量中。例如:“-server-Xmx400m
”。
设置session超时
在web应用程序中,每个用户都由一个会话标识。会话保存有关用户的信息。一个典型的例子是网店:购物车的内容存储在会话中。
为了防止会话数量无限增加,在用户经过一定时间的不活动(不更改页面的时间)后,会话将被销毁。这称为会话超时。存储在会话中的所有用户数据都将消失(例如,您再次装满了购物车)。
有时,默认会话超时可能太低,特别是当用户需要在单个页面上花费大量时间时。要增加Tomcat中的超时值,请在[Tomcat_home]/conf/web.xml
:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
超时值以分钟为单位指定。
修改文件后重新启动Tomcat,这样更改就可以生效。
禁用持久性
在较新的Tomcat版本(5.5及更高版本)中,默认情况下启用上下文的持久存储。
由于并非JChem使用的所有会话对象都可以这样存储(它们不可序列化),因此在重新启动期间,这可能会在Tomcat的日志中产生恼人的(尽管无害)错误消息。。
要禁用持久性,请编辑<Tomcat home>/conf/context.xml
,并取消对以下行的注释(通过删除“<!
”!–“从开始到”-->
“从评论结尾):
<Manager pathname="" />
常见的陷阱
如果端口(默认为8080)已经在使用中,Tomcat将不会启动。通常,Oracle的web服务器也使用端口8080。
尝试为Tomcat设置其他端口:
请在<Tomcat home>/conf
中找到server.xml
使用port="8080"设置,并修改端口值。
您还可以在Tomcat的交互式管理工具中更改设置(http://localhost:8080/admin
)在Tomcat Server >> Service >> Connector
下。选择HTTP类型的连接器。
如果其中一个上下文路径指向文件系统中不存在的目录,Tomcat可能无法启动。
如果从Windows下的“开始”菜单启动Tomcat4.x,CATALINA_OPTS
将不起作用。请运行<Tomcat_home>\bin tartup.bat
除特别注明外,本站所有文章均为老K的Java博客原创,转载请注明出处来自https://javakk.com/1774.html
暂无评论