Tomcat相关配置

mac2022-06-30  106

修改Tomcat端口

有时候我们会需要修改Tomcat端口,默认为8080 这里有一个解决8080端口占用的方法 8080端口占用解决方法 以上方法是强制结束PID为8080的进程,除此之外,还可修改端口为其他

找到:tomcat目录/conf/server.xml将port=“8080”改为其他端口号

设置虚拟目录

网站站点默认放在webapps下,但是有些情况,需要将站点放在其他目录下

有两种情况

Tomcat所在磁盘空间不够放到特定目录

设置方法

找到Tomcat目录/conf/server.xml在”< / Host >“前添加: < Context path="/你的站点名(主文件夹名称)" docBase=“文件夹存放的存放的位置/文件夹名称” debug=“0” >

设置管理员(Tomcat Manager)密码

Tomcat目录/conf/tomcat-users.xml在最后一行的前面加上管理员(账号和密码) < role rolename=“manager-gui”/> < role rolename=“admin-script”/> < role rolename=“admin-gui”/> < user username=“tomcat” password=“tomcat” roles=“manager-gui,admin-script,admin-gui”/> username:账号 passwd:密码 rolename:访问角色 manager-gui 允许访问 html 图形用户接口与状态页面 (即 URL 路径为 /manager/html/* ) manager-script 允许访问纯文本接口与状态页面 (即 URL 路径为 /manager/text/* ) manager-jmx 允许访问JMX代理接口与状态页面 (即 URL 路径为 /manager/jmxproxy/* ) manager-status 只允许访问 Tomcat 状态页面 (即 URL 路径为 /manager/status/* ) 从Tomcat Manager内部配置文件中可以得知,manager-gui、manager-script、manager-jmx 均具备 manager-status 的权限,也就是说,manager-gui、manager-script、manager-jmx 三种角色权限无需再额外添加 manager-status 权限,即可直接访问路径 /manager/status/*。

数据源和连接池

连接池:创建和管理一个连接的缓冲池的技术,这些连接准备好被任何需要它们的线程使用。 创建连接的时间较长——连接池存在的必要性 数据库的周期

用 database driver 打开一个连接去连接数据库打开一个 TCP socket 读写数据数据读写完毕关闭连接关闭socket

连接池的原理:暂时不进行4和5,将连接保存在连接池中 配置方法:

修改server.xml文件,在指定位置添加代码Tomcat管理界面配置

Java语言创建数据库连接池,这里有个链接,我懒得写了 连接池的创建 学习视频里给出的写法: 在server.xml中的“< /Host>”前添加下面

<!--*********************Modify:Add***************--> <!--<Context path="/MyWebSite"docBase="e:\MyWebSite"debug="0"> --> <Context path="/MyWebSites" docBase="D:\MyWebSites" debug="0"> <!--name:给数据源设置名字(jndi)auth:表示该数据源是谁管理type:类型--> <Resource name="shunping" auth="Container" type="javax.sql.DataSource"/> <ResourceParams name="shunping"> <!--工厂设置--> <parameter> <name>factory</name> <value>org.apache.commons.dbcp.BBasicDataSourceFactory</value> </parameter> <parameter> <!--驱动设置,该驱动放在tomcat的common/1ib下,或者放在该站点自己的1ib目录下--> <name>driverClassName</name> <value> com.microsoft.sqlserver.jdbc.SQLServerDriver</value> </parameter> <parameter> <!--设置ur1--> <name>ur1</name> <value>jdbc:sqlserver://localhost:1433;DatabaseName=spdb</value> </parameter> <parameter> <!--设置连接数据库的用户名--> <name>username</name> <value>sa</value> </parameter> <parameter> <!--设置连接数据库的密码--> <name>password</name> <value>123456</value> </parameter> <parameter> <!--在连接池中最大的激活连接数--> <name>maxActive</name> <value>200</value> </parameter> <parameter> <!--在连接池中最大的保留(空闲)连接数--> <name>maxIdle</name> <value>10</value> </parameter> <parameter> <!--客户端在队列池中最大等待时间,按秒计算--> <name>maxWait</name> <value>-1</value> </parameter> </ResourceParams> </Context>

对应的Java文件编写如下: 注意:以下是将数据库的连接封装成了类以及对应方法

package com.yyxx.test1; import java.io.*; import javax.sql.*; import javax.naming.*; import javax.servlet.*; import java.sql.*; import javax.servlet.http.HttpServlet; /** * 注意,该java是封装后的数据库连接 * @author yangxiao * */ public class ConnDB { private Connection ct=null; public Connection getConnection() { try { //创建上下文环境 Context con=new javax.naming.InitialContext(); //得到数据源 DataSource ds=(DataSource) con.lookup("java:comp/env/shunping"); ct=ds.getConnection(); System.out.println("使用连接池的方式");//会在Tomcat控制台显示 } catch (Exception e) { // TODO: handle exception e.printStackTrace(); } return ct; } }
最新回复(0)