Java Web 高级编程 - 第二章 使用Web容器

本章内容

 

选择Web容器

Apache Tomcat

GlassFish

GlassFish服务器是一个开源的、也是商业的完整Java EE应用服务器实现。它提供了Java EE规范的所有特性,包括Web容器,而且它目前还是Java EE规范的参考实现。它的Web容器实际源于Apache Tomcat;不过自从使用Tomcat核心创建了GlassFish之后,它已经做出了重大的改变,初始的代码已经很难识别出来了。GlassFish的开源版本由社区提供支持,而Oracle的商业GlassFish服务器版本由Oracle公司提供收费的商业支持。Oracle将只为Java EE 7 之前的版本提供商业支持。从Java EE 8开始,GlassFish将不再包含商业支持选项。

JBossWildFly

WebLogic

WebSphere

 

在个人计算机中安装Tomcat

 

在Tomcat中部署和卸载应用程序

在Tomcat中手动部署应用程序只需要将*.war文件添加到Tomcat的webapps目录中。如果Tomcat正在运行,几分钟后Tomcat会自动解压应用程序文件到一个去掉.war扩展名的同名目录中。如果Tomcat尚未运行,那么启动它,应用程序将会在Tomcat启动时解压。

卸载应用程序的方法也非常简单,与部署的顺序相反。删除*.war文件,然后等几分钟。当Tomcat检测到该文件被删除后,它将会卸载应用程序并删除解压生成的目录,然后该应用程序将无法再通过浏览器访问。执行这个任务并不需要停止Tomcat。

使用Tomcat管理器

http://localhost:8080/manager/html

输入用户名密码;用户名密码配置在conf/tomcat-users.xml文件中。

当用户名密码均正确时,浏览器将会显示如下页面:

向下滚动至Deploy部分,找到表单“WAR file to deploy”,选择需要上传的WAR文件即可。

 

卸载应用程序同样也很简单。在Applications列表中找到需要卸载的应用程序,点击右侧的Undeploy即可。

 

通过IntelliJ IDEA调试Tomcat

1.单击工具栏中的Run配置图标,单击Edit Configurations。

2.在出现的对话框中,单击加号图标➕,选择Tomcat Server下的Local。

配置如下

3.如果Tomcat是IntelliJ中唯一的应用服务器,IntelliJ将自动使用它作为run/debug配置的应用服务器。

4.为运行配置添加有意义的名字。

5.在Jsp文件中添加断点。选择Debug,以调试模式启动。IntelliJ会启动默认浏览器,然后会看到断点被命中。

 

注意:

如果run/debug时,浏览器显示如下:

可以查看IntelliJ的Output窗口,如果看到以下内容:

严重 [main] org.apache.coyote.AbstractProtocol.init Failed to initialize end point associated with ProtocolHandler ["http-nio-8080"]
java.net.BindException: Address already in use

说明,之前设置的端口已经被占用了。可以尝试更换端口号,或者如果已经有在运行的Tomcat,则需要先关闭,由IntelliJ来进行管理。

 

 

摘录自:[美]Nicholas S.Williams著,王肖峰译 Java Web高级编程 [M]、清华大学出版社,2015、17-34、

posted @ 2016-11-12 22:07  guqiangjs  阅读(254)  评论(0)    收藏  举报