使用tomcat 部署网站

1.运行与停止

bin/目录下的startup.sh用于启动服务。其他XXXX.sh 见名知意。

图1-1 tomcat默认主页

2.指定jvm参数启动tomcat

微笑问:有时web应用依赖的库较多,加载的类也多,它们会占用永久代空间,容易出现 tomcat permSpace outOfMemory 异常,怎么解决?
答:linux下环境变量相关知识见:  http://blog.csdn.net/chuchus/article/details/42835897
startup.sh会调用catalina.sh,而后者中会用JAVA_OPTS这个环境变量,在280行左右(tomcat version:7),见图1-2

图2-1 tomcat启动脚本中涉及java_OPTS环境变量的部分

这个变量默认是空的,需要我们定。可以使用export 命令引入"-XX:MaxPermSize=256m "参数。
具体命令为:  export JAVA_OPTS=“-XX:MaxPermSize=256m” 注意等号左右不能有空格。成功后可以验证,见图2-2

图2-2 设置JVM参数启动tomcat

3.tomcat配置文件

conf/server.xml

该配置文件的第68行配置了服务端口,Tomcat的默认服务端口是8080,可以修改。如果需要让tomcat在多个端口同时提供服务,只需要复制<service>标签,并修改端口等相应参数。

阿里云服务器centos 7直接改为80也是可以的,并不需要调整防火墙。


conf/tomcat-users.xml

指定管理员角色与用户名密码,用于可视化远端管理你的webApp。例子:

  <role rolename="manager-gui"/> 
  <user username="tomcatUser" password="tomcatPsd" roles="manager-gui"/>

地址为 http://host/index.jsp


图2 可视化部署应用



web应用配置文件

webapp/YOURNANE/WEB-INF/ web.xml

<welcome-file-list>
此标签用来配置首页。如
<welcome-file-list>
<welcome-file>index.html</welcome-file>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
上面的配置信息指定该web应用的首页依次是index.html、index.jsp这几个网页。
<context-param>  
这些参数在整个应用中被共享
<context-param>  
           <param-name>context/param</param-name>  
           <param-value>avalible during application</param-value>  
</context-param>  

<servlet> 
用来配置服务端的程序,可以配置多个。
<servlet>  
    <servlet-name>MainServlet</servlet-name>  
    <servlet-class>com.wes.controller.MainServlet</servlet-class>  
    <init-param>       //写在配置中的一些参数,仅这个servlet可以访问
       <param-name>param1</param-name>  
       <param-value>avalible in servlet init()</param-value>  
    </init-param>  
    <load-on-startup>1</load-on-startup>  //启动次序,1表示最先
</servlet>  

读取context-param与servlet-param的代码
import javax.servlet.ServletException;  
import javax.servlet.http.HttpServlet;
public class MainServlet extends HttpServlet{    
    public void init() throws ServletException ...{  
         System.out.println("下面参数param1是在servlet中存放的");  
         System.out.println(this.getInitParameter("param1"));  
         System.out.println("下面的参数是存放在servletcontext中的");  
        System.out.println(getServletContext().getInitParameter("contextParam123"));  
      }  
}  
<filter>
用来过滤,接受请求时过滤后送给servlet,将servlet返回结果再过滤一次返回给用户。
	<filter>
		<filter-name>WebServiceFilter</filter-name>
		<filter-class>com.likeyichu.webservice.filter.WebServiceFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>WebServiceFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

不同标签之间的次序
有时eclipse会对web.xml文件报错,如图:
图3 web.xml中的标签次序
很可能的原因就是标签之间的次序不对,按照它提示的次序放标签就可以了。

最简单的网页部署

在 webapps\下放一个文件夹A,里面有B.html  那么重新启动tomcat后,输入  http://ip:port/A/B.html即可访问。
网页放到\webapps\ ROOT\目录下,效果就是http://ip:port/xx.html这种URL路径。
换html网页时不需要重启Tomcat服务。

Jsp/Servlet部署

假设你的webapp名称为qing,那么部署目录结构见下图:

图4  web应用目录结构
若干个 jsp文件放在qing\目录下即可。
jsp文件用到了其他java依赖类,需要放在lib\或classes\目录中。
classes目录下放的是后缀为.class的文件,类com.likeyichu.A的class文件就应该在classes\com\likeyichu\A.class位置。
lib目录也是用来存放用到的java类的,要放在这里的是.jar文件。

对于javaWeb而言,WEB-INF是一个特殊的文件夹,Web容器会包含该文件夹下的内容,但客户端浏览器无法访问WEB-INF路径下的任何内容
web.xml位于WEB-INF文件夹内,


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值