有关jsp+struts+hibernate+MSSQLServer项目中Tomcat5的server.xml配置
2005-01-27 10:50
585 查看
有关jsp+struts+hibernate+MSSQLServer项目中Tomcat5的server.xml配置
我曾经在网上搜索过很多时间一直发现jsp+sqlserver2000项目开发的例子比较少,在tomcat5中配置server.xml便成为一个难题,因为tomcat相关网站都有大量mysql和oracle的配置例子,却很少有sqlserver的例子。
今天我就把我研究的经验共享出来。这个是部署在linux上的。
本文着中告诉大家怎么配置server.xml,使得能够顺利读取sqlserver数据库,其他有关struts,hibernate怎么使用,请看相关网站的资料。
首先要到微软网站上下载sqlserver的java补丁包,这个补丁解开后将mssqlserver.jar msbase.jar msutil.jar三个文件拷贝到WEB-LIB/lib目录中;
然后配置server.xml,如下:(请注意将里面的中文改成你需要的)
<?xml version='1.0' encoding='utf-8'?>
<Server>
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<GlobalNamingResources>
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
<ResourceParams name="UserDatabase">
<parameter>
<name>factory</name>
<value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
</parameter>
<parameter>
<name>pathname</name>
<value>conf/tomcat-users.xml</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>
<Service name="Catalina">
<Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443">
</Connector>
<Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
</Connector>
<Engine defaultHost="这里写主机名,例如 bbs.abc.com中的bbs" name="Catalina">
<Host name="这里写域名,例如www.abc.com中" debug="0" appBase="这里写web目录的绝对路径/opt/tomcat/webapps/abc"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="sentom1_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="sentom1_log." suffix=".txt"
timestamp="true"/>
<Context path="" docBase="">
<Resource name="这里写jndi联接,例如jdbc/abc" scope="Shareable" auth="Container" type="这里写ms sqlserver数据库使用的类:com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
<ResourceParams name="这里写jndi联接,例如jdbc/abc">
<parameter>
<name>factory</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSourceFactory</value>
</parameter>
<!-- DBCP database connection settings -->
<parameter>
<name>driverClassName</name><value>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</value>
</parameter>
<parameter><name>driverName</name><value>SQLServer</value></parameter>
<parameter><name>description</name><value>SQL Server DataSource</value></parameter>
<parameter><name>serverName</name><value>这里写服务器ip地址</value></parameter>
<parameter><name>portNumber</name><value>这里写sqlserver端口号,一般来说写:1433</value></parameter>
<parameter><name>selectMethod</name><value>cursor</value></parameter>
<parameter><name>databaseName</name><value>这里写sqlserver使用的数据库名称</value></parameter>
<parameter><name>user</name><value>这里写有sqlserver数据库中的用户名,必须对相关数据库有读写权限</value></parameter>
<parameter><name>password</name><value>这里写密码</value></parameter>
<parameter><name>loginTimeout</name><value>3000</value></parameter>
<!-- DBCP connection pooling options -->
<parameter><name>maxWait</name><value>3000</value></parameter>
<parameter><name>maxIdle</name><value>100</value></parameter>
<parameter><name>maxActive</name><value>10</value></parameter>
</ResourceParams>
</Context>
</Host>
以下可以再写一个二级网站,读取另一个数据库。
<Host name="这里写二级网站域名。例如:news.abc.com" debug="0" appBase="这里写web目录的绝对路径/opt/tomcat/webapps/news"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="sentom1_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="sentom1_log." suffix=".txt"
timestamp="true"/>
<Context path="" docBase="">
<Resource name="这里写jndi名称:jdbc/news" scope="Shareable" auth="Container" type="com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
<ResourceParams name="这里写jndi名称:jdbc/news">
<parameter>
<name>factory</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSourceFactory</value>
</parameter>
<!-- DBCP database connection settings -->
<parameter>
<name>driverClassName</name><value>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</value>
</parameter>
<parameter><name>driverName</name><value>SQLServer</value></parameter>
<parameter><name>description</name><value>SQL Server DataSource</value></parameter>
<parameter><name>serverName</name><value>数据库ip地址</value></parameter>
<parameter><name>portNumber</name><value>端口号:1433</value></parameter>
<parameter><name>selectMethod</name><value>cursor</value></parameter>
<parameter><name>databaseName</name><value>数据库名</value></parameter>
<parameter><name>user</name><value>用户名</value></parameter>
<parameter><name>password</name><value>密码</value></parameter>
<parameter><name>loginTimeout</name><value>3000</value></parameter>
<!-- DBCP connection pooling options -->
<parameter><name>maxWait</name><value>3000</value></parameter>
<parameter><name>maxIdle</name><value>100</value></parameter>
<parameter><name>maxActive</name><value>10</value></parameter>
</ResourceParams>
</Context>
</Host>
<Host appBase="webapps" name="localhost">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
</Host>
<Host name="这里可以写上另一个主机名,例如写:www" appBase="/opt/tomcat/webapps/www">
<!--Alias>www.spitrade.com</Alias-->
</Host>
<Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
</Engine>
</Service>
</Server>
然后配置hibernate.cfg.xml(如下):
注意java:comp/env/jdbc/news要和server.xml中的有关jndi的ResourceParams参数一致。
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.datasource">java:comp/env/jdbc/news</property>
<property name="show_sql">true</property>
<property name="dialect">net.sf.hibernate.dialect.SQLServerDialect</property>
<!-- Mapping files -->
<mapping resource="News.hbm.xml"/>
</session-factory>
</hibernate-configuration>
我曾经在网上搜索过很多时间一直发现jsp+sqlserver2000项目开发的例子比较少,在tomcat5中配置server.xml便成为一个难题,因为tomcat相关网站都有大量mysql和oracle的配置例子,却很少有sqlserver的例子。
今天我就把我研究的经验共享出来。这个是部署在linux上的。
本文着中告诉大家怎么配置server.xml,使得能够顺利读取sqlserver数据库,其他有关struts,hibernate怎么使用,请看相关网站的资料。
首先要到微软网站上下载sqlserver的java补丁包,这个补丁解开后将mssqlserver.jar msbase.jar msutil.jar三个文件拷贝到WEB-LIB/lib目录中;
然后配置server.xml,如下:(请注意将里面的中文改成你需要的)
<?xml version='1.0' encoding='utf-8'?>
<Server>
<Listener className="org.apache.catalina.mbeans.ServerLifecycleListener"/>
<Listener className="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/>
<GlobalNamingResources>
<Environment name="simpleValue" type="java.lang.Integer" value="30"/>
<Resource auth="Container" description="User database that can be updated and saved" name="UserDatabase" type="org.apache.catalina.UserDatabase"/>
<ResourceParams name="UserDatabase">
<parameter>
<name>factory</name>
<value>org.apache.catalina.users.MemoryUserDatabaseFactory</value>
</parameter>
<parameter>
<name>pathname</name>
<value>conf/tomcat-users.xml</value>
</parameter>
</ResourceParams>
</GlobalNamingResources>
<Service name="Catalina">
<Connector acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" port="80" redirectPort="8443">
</Connector>
<Connector port="8009" protocol="AJP/1.3" protocolHandlerClassName="org.apache.jk.server.JkCoyoteHandler" redirectPort="8443">
</Connector>
<Engine defaultHost="这里写主机名,例如 bbs.abc.com中的bbs" name="Catalina">
<Host name="这里写域名,例如www.abc.com中" debug="0" appBase="这里写web目录的绝对路径/opt/tomcat/webapps/abc"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="sentom1_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="sentom1_log." suffix=".txt"
timestamp="true"/>
<Context path="" docBase="">
<Resource name="这里写jndi联接,例如jdbc/abc" scope="Shareable" auth="Container" type="这里写ms sqlserver数据库使用的类:com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
<ResourceParams name="这里写jndi联接,例如jdbc/abc">
<parameter>
<name>factory</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSourceFactory</value>
</parameter>
<!-- DBCP database connection settings -->
<parameter>
<name>driverClassName</name><value>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</value>
</parameter>
<parameter><name>driverName</name><value>SQLServer</value></parameter>
<parameter><name>description</name><value>SQL Server DataSource</value></parameter>
<parameter><name>serverName</name><value>这里写服务器ip地址</value></parameter>
<parameter><name>portNumber</name><value>这里写sqlserver端口号,一般来说写:1433</value></parameter>
<parameter><name>selectMethod</name><value>cursor</value></parameter>
<parameter><name>databaseName</name><value>这里写sqlserver使用的数据库名称</value></parameter>
<parameter><name>user</name><value>这里写有sqlserver数据库中的用户名,必须对相关数据库有读写权限</value></parameter>
<parameter><name>password</name><value>这里写密码</value></parameter>
<parameter><name>loginTimeout</name><value>3000</value></parameter>
<!-- DBCP connection pooling options -->
<parameter><name>maxWait</name><value>3000</value></parameter>
<parameter><name>maxIdle</name><value>100</value></parameter>
<parameter><name>maxActive</name><value>10</value></parameter>
</ResourceParams>
</Context>
</Host>
以下可以再写一个二级网站,读取另一个数据库。
<Host name="这里写二级网站域名。例如:news.abc.com" debug="0" appBase="这里写web目录的绝对路径/opt/tomcat/webapps/news"
unpackWARs="true" autoDeploy="true">
<Valve className="org.apache.catalina.valves.AccessLogValve"
directory="logs" prefix="sentom1_access_log." suffix=".txt"
pattern="common" resolveHosts="false"/>
<Logger className="org.apache.catalina.logger.FileLogger"
directory="logs" prefix="sentom1_log." suffix=".txt"
timestamp="true"/>
<Context path="" docBase="">
<Resource name="这里写jndi名称:jdbc/news" scope="Shareable" auth="Container" type="com.microsoft.jdbcx.sqlserver.SQLServerDataSource"/>
<ResourceParams name="这里写jndi名称:jdbc/news">
<parameter>
<name>factory</name>
<value>com.microsoft.jdbcx.sqlserver.SQLServerDataSourceFactory</value>
</parameter>
<!-- DBCP database connection settings -->
<parameter>
<name>driverClassName</name><value>com.microsoft.jdbcx.sqlserver.SQLServerDataSource</value>
</parameter>
<parameter><name>driverName</name><value>SQLServer</value></parameter>
<parameter><name>description</name><value>SQL Server DataSource</value></parameter>
<parameter><name>serverName</name><value>数据库ip地址</value></parameter>
<parameter><name>portNumber</name><value>端口号:1433</value></parameter>
<parameter><name>selectMethod</name><value>cursor</value></parameter>
<parameter><name>databaseName</name><value>数据库名</value></parameter>
<parameter><name>user</name><value>用户名</value></parameter>
<parameter><name>password</name><value>密码</value></parameter>
<parameter><name>loginTimeout</name><value>3000</value></parameter>
<!-- DBCP connection pooling options -->
<parameter><name>maxWait</name><value>3000</value></parameter>
<parameter><name>maxIdle</name><value>100</value></parameter>
<parameter><name>maxActive</name><value>10</value></parameter>
</ResourceParams>
</Context>
</Host>
<Host appBase="webapps" name="localhost">
<Logger className="org.apache.catalina.logger.FileLogger" prefix="localhost_log." suffix=".txt" timestamp="true"/>
</Host>
<Host name="这里可以写上另一个主机名,例如写:www" appBase="/opt/tomcat/webapps/www">
<!--Alias>www.spitrade.com</Alias-->
</Host>
<Logger className="org.apache.catalina.logger.FileLogger" prefix="catalina_log." suffix=".txt" timestamp="true"/>
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"/>
</Engine>
</Service>
</Server>
然后配置hibernate.cfg.xml(如下):
注意java:comp/env/jdbc/news要和server.xml中的有关jndi的ResourceParams参数一致。
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE hibernate-configuration
PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-2.0.dtd">
<hibernate-configuration>
<session-factory>
<property name="connection.datasource">java:comp/env/jdbc/news</property>
<property name="show_sql">true</property>
<property name="dialect">net.sf.hibernate.dialect.SQLServerDialect</property>
<!-- Mapping files -->
<mapping resource="News.hbm.xml"/>
</session-factory>
</hibernate-configuration>
相关文章推荐
- 有关jsp+struts+hibernate+MSSQLServer项目中Tomcat5的server.xml配置
- 有关jsp+struts+hibernate+MSSQLServer项目中Tomcat5的server.xml配置
- tomcat 配置server.xml 指定端口就可以直接打开项目。
- 项目部署到Tomcat根目录,server.xml 配置详解
- Struts2学习笔记之与struts.xml配置和Action有关的属性
- log4j无日志生成? 我将一个web项目部署在tomcat server.xml配置文件中,当我启动tomcat是无日志输出。
- 一个tomcat7容器部署两个不同的项目,一个用域名,另一个用域名加端口,server.xml的配置记录
- tomcat同一个端口同一个域名发布两个项目server.xml的配置代码
- JavaWeb项目中web.xml有关servlet的基本配置
- Eclipse EE 发布项目导致 Tomcate 的配置文件 server.xml 还原
- 通过struts.xml配置映射后的jsp引入外部css和js的路径问题及css中图片url路径问题
- struts2+hibernate项目里面怎么配置Fckeditor在线编辑器
- tomcat 配置访问路径 server.xml配置去掉项目名称
- tomcat配置多个域名直接访问多个项目配置的server.xml
- eclipse web项目配置server.xml(maven)
- server.xml的配置部署项目
- Tomcat通过Server.xml配置默认访问项目
- Tomcat 利用server.xml配置多个项目部署
- Tomcat 利用server.xml进行其他盘符的其他项目映射的部署以及JSP引用其他盘符的图片(虚拟目录及虚拟路径)
- SpringMVC+Hibernate+jQuery+js+css+jsp+nginx整合时,(1)jsp引入js,css无效;(2)插入数据库时某字段为空;(3)web.xml配置完后,从数据库读数