您的位置:首页 > 运维架构 > Tomcat

有关Tomcat应用程序目录、端口、默认目录、应用程序默认打开文件、使用数据库连接池等方面的配置

2006-05-11 10:48 806 查看
修改Tomcat应用程序目录
修改Tomcat端口
修改Tomcat默认目录
修改应用程序默认打开文件
在Tomcat中使用数据库连接池(sqlserver2000)
在jsp中如何使用连接池?

如何让Tomcat自动Load被修改过的类
servlet如何读取web.xml中的初始参数

修改Tomcat应用程序目录
<Host name="localhost" debug="0" appBase="webapps" unpackWARs="true"
autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
修改成
<Host name="localhost" debug="0" appBase="mytest" unpackWARs="true"
autoDeploy="true" xmlValidation="false" xmlNamespaceAware="false">
mytest目录是和webapps在同一父目录下。
同时还要将原来webapps目录中的一些文件拷贝过来(如果不确定,请将安装后的
webapps下的所以文件夹拷贝过来)
win2000 tomcat 5.0.27测试

网上有人这么写,我没有测试过。

在Tomcat的conf目录下面的server.xml里面,修改
<Host name="localhost" debug="0" appBase="E:/Project/www_project_com"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">

E:/Project/www_project_com这个硬盘目录下面还要建立一个ROOT(必须大写)目录,
里面放文件,还要有一个web-inf文件夹,这个你可以参考tomcat的webapps目录里面的
东西拷贝过去就可以

修改Tomcat端口
查找 <Connector port="8080" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000"
useURIValidationHack="false" disableUploadTimeout="true" />
将port="8080"改成port="80"。

修改Tomcat默认目录
在conf文件夹中,打开server.xml,找到</host>,在它前面加上下面的代码:
<Context path="" docBase="f:/jsp" debug="0" reloadable="true"
crossContext="true">
</Context>

修改应用程序默认打开文件
在你的应用程序目录下修改WEB-INF/web.xml文件(注意:不是tomcat/conf/web.xml)
在<web-app ...></web-app>中添加节点如下:
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
<welcome-file>index.htm</welcome-file>
<welcome-file>index.html</welcome-file>
<welcome-file>default.htm</welcome-file>
<welcome-file>default.html</welcome-file>
</welcome-file-list>
这时,如果你在url中键入http://localhost:8080/myweb (myweb是你的应用程序目录),
系统会自动寻找welcome-file-list中列出的文件

经过这样的配置,就可以在url中输入http://localhost(或http://IP)来访问自己的网页了,

在Tomcat中使用数据库连接池(sqlserver2000)
在conf文件夹中,打开server.xml,找到</host>,在它前面加上下面的代码:
这样就生成了一个虚拟目录webshop,并且创建了连接池(注意修改相应的连接参数)
注意:请首先将sqlser2000的jdbc的三个文件(msbase.jarms,sqlserver.jar,msutil.jar)复制到tomcat/common/lib目录下
<Context path="webshop" docBase="e:/webshop" debug="0" reloadable="true" crossContext="true">
<Resource name="jdbc/mssql" auth="Container" type="javax.sql.DataSource"/>
<ResourceParams name="jdbc/mssql">
<parameter>
<name>factory</name>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<parameter>
<name>driverClassName</name>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<parameter>
<name>url</name>
<value>jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=wjw_test</value>
</parameter>
<parameter>
<name>username</name>
<value>sa</value>
</parameter>
<parameter>
<name>password</name>
<value>8021</value>
</parameter>
<parameter>
<name>maxActive</name>
<value>20</value>
</parameter>
<parameter>
<name>maxIdle</name>
<value>10</value>
</parameter>
<parameter>
<name>maxWait</name>
<value>-1</value>
</parameter>
</ResourceParams>
</Context>

在jsp中使用连接池concool.jsp

<!--测试数据源-->
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="javax.naming.Context" %>
<%@ page import="javax.sql.DataSource"%>
<%@ page import="javax.naming.InitialContext"%>
<%@ page import="java.sql.*"%>

<%
DataSource ds = null;
try{
Context initCtx = new InitialContext();
Context envCtx = (Context) initCtx.lookup("java:comp/env");
//从Context中lookup数据源。
ds = (DataSource)envCtx.lookup("jdbc/mssql");
if(ds!=null)
{
out.println("已经获得DataSource!");
out.println("<br>");
Connection conn = ds.getConnection();
Statement stmt=conn.createStatement();
ResultSet rst=stmt.executeQuery("select * from book");
out.println("以下是从数据库中读取出来的数据");
while(rst.next())
{
out.println("bookName:"+rst.getString("bookName"));
out.println("<br>");
}
}
else
out.println("连接失败!");
}
catch(Exception ne)
{
out.println(ne);
}
%>

如何让Tomcat自动Load被修改过的类
修改 Tomcat 的 server.xml 內容,该文件存在Tomcat 的 conf 目錄下。做法是在文件中加入一
个新的 context 标签,通过该标签来设定你的 web应用程序的环境参数。
最简单的方法就是先找到 "Tomcat Root Context" 这个标签,然后在这段文字的上面加入一行
<DefaultContext reloadable="true"/>,参考下面的示例:
<DefaultContext reloadable="true"/>

<!-- Tomcat Root Context -->
<!--
<Context path="" docBase="ROOT" debug="0"/>
-->

servlet如何读取web.xml中的初始参数
在servlet的init中,读取web.xml中配置的参数
//Initialize global variables
public void init(ServletConfig config) throws ServletException {
super.init(config);
String server = config.getInitParameter("server");
String port = config.getInitParameter("port");
String dbname = config.getInitParameter("dbname");
String user = config.getInitParameter("user");
String psw = config.getInitParameter("psw");

}
或者

public void init()throws ServletException
{
driver=getInitParameter("DRIVER");
password=getInitParameter("PASSWORD");
url=getInitParameter("URL");
user=getInitParameter("USER");
}

在web.xml初始参数的设置
<servlet>
<servlet-name>JDBCServlet</servlet-name>
<servlet-class>com.jspdev.ch7.JDBCServlet</servlet-class>
<init-param>
<param-name>DRIVER</param-name>
<param-value>com.microsoft.jdbc.sqlserver.SQLServerDriver</param-value>
</init-param>
<init-param>
<param-name>URL</param-name>
<param-value>jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=jspdev</param-value>
</init-param>
<init-param>
<param-name>USER</param-name>
<param-value>bn</param-value>
</init-param>
<init-param>
<param-name>PASSWORD</param-name>
<param-value>bn</param-value>
</init-param>
</servlet>

转载:一个网友写的有关tomcat缺省目录的设置和端口的设置,
1、首先建立你自己的工作目录(假设c:/yourweb/root),并在root下建立index.jsp和WEB-INF文件夹(里面放web.xml);
2、修改server.xml,查找 <Host name="localhost" debug="0" appBase="webapps"
unpackWARs="true" autoDeploy="true">将appBase="webapps"改成appBase="c:yourwe;
查找 <Connector className="org.apache.coyote.tomcat4.CoyoteConnector"
port="8080" minProcessors="5" maxProcessors="75"
enableLookups="true" redirectPort="8443"
acceptCount="100" debug="0" connectionTimeout="20000"
useURIValidationHack="false" disableUploadTimeout="true" />将port="8080"改成port="80"。
3、web.xml无须改动,直接复制原来的吧。然后编写你的index.jsp
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐