在Eclipse中,可以安装Tomcat插件,实现WEB应用的开发调试工作,Tomcat插件还可以支持WEB应用的热部署。

  一、安装配置Tomcat插件

  可以通过拷贝安装和Links方式安装Tomcat插件,和安装其它的Eclipse插件没有区别。安装成功Tomcat插件后,在菜单栏上会多了一项Tomcat菜单,如图所示。

  图 安装Tomcat插件后的Eclipse菜单

  安装Tomcat插件后,必须先设置Tomcat的安装目录、Tomcat的安装版本号以及启动的方式。设置好这些参数后,Eclipse插件就可以直接在Eclipse中启动指定位置的Tomcat容器,这样就可以不用在Eclipse之外启动Tomcat了,而且Tomcat插件支持直接调试、热部署Java类以及动态加载配置文件。

  可以通过“windowàpreferences…”菜单设置启动Tomcat参数,如图所示。

  图 设置Tomcat启动参数对话框

  Tomcat启动参数对话框中有三个参数是必须设置的。

  1. Tomcat version:指定Tomcat的版本号。

  2. Tomcat home:Tomcat安装目录。

  3. Context declaration mode:Web容器上下文配置文件的声明方式。这是Tomcat支持的两种启动方式,可以通过Server.xml指定WEB目录,也可通过conf\Catalina\localhost目录生成的配置文件指定WEB目录。在Tomcat启动参数对话框中还可以设置虚拟机参数以及Tomcat项目源代码的位置等参数。

  提示:在Eclipse中可以通过Tomcat插件启动和停止Tomcat,用户可以在Console视图中查看Tomcat的运行时信息。

  二、创建Tomcat项目

  Tomcat插件能根据设置的启动参数,生成Tomcat项目以及管理相关的配置文件。可以通过Eclipse的新建向导创建Tomcat项目(Tomcat Project),在新建向导中还能够设置Tomcat项目的目录结构,如图所示。

  图 创建Tomcat项目对话框

  通过创建Tomcat项目对话框可创建一个Tomcat项目,例如“com.free.test.web”的项目,要访问此WEB应用,可以在浏览器中输入地址:“http://localhost:8080/com.free.test.web”。

  Tomcat项目其实就是一个WEB应用部署的目录,也就是说所有的类和配置文件都不需要拷贝到Tomcat下的webapps目录下(了解Tomcat的开发人员应该清楚webapps是Tomcat下WEB应用发布的目录),Eclipse插件会管理Tomcat下的WEB部署的配置文件(Server.xml或localhost下的配置文件)指定到当前的Tomcat项目。

  提示:如果没有设置Tomcat插件中的配置信息,创建了Tomcat项目后会提示出错,这是因为和Tomcat应用相关的包没有加入,设置好Tomcat插件的配置信息即可。

  如果Tomcat工程是通过Eclipse的import向导导入的,需要更新Tomcat上下文的配置,生成Tomcat的conf目录下面的配置文件。选择Eclipse中导入的Tomcat工程,右键菜单选择“Tomcat project”à“update tomcat definition”菜单,生成Tomcat配置文件上下文。

  三、在Tomcat中运行调试Web应用

  通过Eclipse调试WEB应用是非常容易的事情,例如前面的例子HelloKittyJsp 和HelloKittyServlet。HelloKittyServlet在包“com.free.servlet”中,HelloKittyJsp在Tomcat项目的根目录下,web.xml文件在WEB-INF下,选择Tomcat菜单下的“Start Tomcat”启动指定的Tomcat,Tomcat启动成功如图所示。

  图 启动Tomcat

  启动Tomcat后可以直接在Eclipse中调试Servle。和调试其它的Java类一样,可以在Servlet中设置断点。例如在HelloKittyJsp页面中单击提交按钮,将会执行HelloKittyServlet中的doGet方法,如果在doGet中设置断点,程序将会运行到断点的位置,如图所示。

  图 调试HelloKittyServlet

  调试Servlet和调试其它的Java类没有任何区别,而且当修改了WEB应用中的Servlet和其它的类后,Eclipse插件会直接把相应类部署到WEB-INF下的Classes中。

  通过Tomcat插件运行Tomcat,可能会出现JSP页面无法编译的情况,如图所示。

  图 无法编译JSP页面

  这是因为Java虚拟机编译JSP页面时找不到相关的jar包,在Tomcat插件中可以配置所依赖的jar包,如图所示。

  图 配置Tomcat类路径

  在Classpath选项添加JDK下面的tools.jar和dt.jar,配置好Tomcat类路径后,重新启动Tomcat就可以通过Tomcat插件在Eclipse中进行WEB应用了。

  提示:把编译好的类放入WEB-INF下的Classes中的功能是通过Eclipse类构建器完成的,当JAVA文件改变后,JDT的构建器会编辑新的类,并放入类构建路径中,默认为WEB-INF下的Classes目录。

使用Tomcat插件开发WEB应用的更多相关文章

  1. Tomcat部署web项目,如何直接通过域名访问,不加项目名称

    问题:下面的问题是互联网上问得比较多的,但是显然都是同一个问题. JavaWeb项目部署到tomcat服务之后设置不需要输入项目名称即可访问? Tomcat部署web项目,如何直接通过域名访问,不加项 ...

  2. Servlet容器Tomcat中web.xml中url-pattern的配置详解[附带源码分析]

    目录 前言 现象 源码分析 实战例子 总结 参考资料 前言 今天研究了一下tomcat上web.xml配置文件中url-pattern的问题. 这个问题其实毕业前就困扰着我,当时忙于找工作. 找到工作 ...

  3. Tomcat部署web应用程序

    对Tomcat部署web应用的方式总结,常见的有以下四种: 1.[替换ROOT目录] 最简单的一种方法,webapps目录下面ROOT文件夹的文件为你的文件,然后输入localhost:8080/首页 ...

  4. (转) Tomcat部署Web应用方法总结

    原文:http://blog.csdn.net/yangxueyong/article/details/6130065 Tomcat部署Web应用方法总结 分类: Java web2011-01-11 ...

  5. Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件

    Eclipse 启动Tomcat后web项目的classes的子文件夹中没有calss文件. 经网上查得以下方法可解决 把properties属性里的java compiler-->buildi ...

  6. Tomcat部署web应用的方式

    对Tomcat部署web应用的方式总结,常见的有以下四种: 1.[使用控制台部署] 访问Http://localhost:8080,并通过Tomcat Manager登录,进入部署界面即可. 2.[利 ...

  7. Tomcat部署Web应用方法总结

    转载:http://m.blog.csdn.net/blog/u012516903/15741727 Tomcat部署Web应用方法总结 在Tomcat中部署Java Web应用程序有两种方式:静态部 ...

  8. tomcat登陆WEB显示无权限问题&& tomcat无限循环启动问题

    tomcat登陆WEB显示无权限问题 The user specified as a definer (”@’%') does not exist 原因分析 因为创建视图使用的是xff@%用户(目前已 ...

  9. tomcat部署web项目的方式 转

    JavaWeb开发Tomcat中三种部署项目的方法,开始Java web开发必不可少的步骤,经过查找,觉得有篇文章介绍的不错 1.在conf目录中新建Catalina\localhost目录,在该目录 ...

  10. (转)Linux整合apache和tomcat构建Web服务器

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wenzhongxiang.blog.51cto.com/6370734/1285 ...

随机推荐

  1. C语言三子棋

    话说自从大一学C语言后用C语言的巅峰也就是第十二届蓝桥杯了,后续开发什么的都是用的java,搞开发java这样的面向对象语言确实用着更顺手方便点.不过C语言YYDS,"C生万物"嘛 ...

  2. 游戏AI行为决策——MLP(多层感知机/人工神经网络)

    游戏AI行为决策(特别篇)--MLP(附代码与项目) 你一定听说过神经网络的大名,你有想过将它用于游戏AI的行为决策上吗?其实在(2010年发布的)<最高指挥官2>中就有应用了,今天请允许 ...

  3. 上架难、买量贵?即构 Web 端 1v1 方案全力加速泛娱乐出海

    1v1 视频社交以其功能简洁.互动性强.匹配效率高等特点,在陌生人社交玩法中饱受用户欢迎,平台仅需让两个用户通过匹配.选择等形式连通后,用户即可在房内进行 1v1 视频社交,且在社交的同时又极具私密性 ...

  4. CSS – Tailwind CSS

    前言 很多时候 CSS 未必是需要管理的, 比如做网站, Landing Page (类似宣传单). 很多时候做了 > 用了 > 丢 > 再做新的. 它没有 "维护&quo ...

  5. Identity – 冷知识

    RoleManager, RoleStore, EF Core 关系 RoleManager 可以理解为一个上层 service, 是让我们操作 Role 的. 比如 create, update, ...

  6. 微信js-sdk接入原理

    1.有一个微信公众号,并获取到该公众号的AppID和AppSecret. 其中AppID是可以对外公开的,AppSecret是该公众号的密钥,是需要绝对保密的 2.向微信服务器发送一个GET请求,获取 ...

  7. 提升软件测试效率与灵活性:探索Mock测试的重要性

    Mock测试是测试过程中的一种方法,用于替代那些难以构造或获取的对象,通过创建虚拟对象来进行测试.所谓难以构造的对象如何理解呢? 举例来说,像HttpServletRequest这样的对象需要在具有s ...

  8. 墨天轮专访TDengine陶建辉:坚持做难而正确的事,三次创业成就不悔人生

    导读: 时序数据库(Time Series Database)在最近几年被越来越多的用户接受并使用,并有广泛的应用场景.云原生时序数据库 TDengine 一直稳居墨天轮时序数据库榜首,其近期的海外发 ...

  9. 标准库之 datetime和time 模块

    一.time 模块 time模块是Python标准库中最基础.最常用的模块之一.它提供了各种处理时间的方法和函数,如获取当前时间.格式化时间.计算时间差等.time模块大部分函数的底层实现是 C 语言 ...

  10. web端ant-design-vue Modal.info组件自定义icon和title使用小节

    web端ant-design-vue Modal.info组件自定义icon和title整理小节,最近在项目中用到了自定义icon和title的功能,经过测试发现,如果自定义icon title会自动 ...