草庐IT

day10-Tomcat02

liyuelian 2023-04-16 原文

Tomcat02

4.IDEA开发JavaWeb工程

4.1开发javaweb工程&配置Tomcat&启动项目

需求:使用idea开发javaweb工程fishWeb,并将网页部署到fishWeb工程

  1. 点击File-New-Project

  2. 在弹出的框中点击 Java,点击next

  3. 写入你的工程名字,选择存储位置

  4. 点击creat

  5. 右击项目名称,选择Add FrameworkSupport

  6. 在弹窗中选择web application,点击ok

  7. 可以看到在项目中多出来一个web文件目录

  8. 点击右上角的add configurations

  9. 在弹窗的左上角点击加号+,在弹出的子窗口中下拉选择Tomcat Server-Local

  10. 点击完毕可以看到如下页面:

  11. 其中的Deployment是配置我们网站的发布方式,主要有两种:一种是源码的形式,一种是war包。一般选择war包的形式,如下:点击加号,选择artifact

    下方的Application context就是你发布的web应用的名称

    之后访问的url就是:http://localhost:8080/web应用名称/资源名

  12. 点击Server页面的application server的configure按钮,在弹窗的tomcat home选择安装的tomcat目录

  13. 在接下来的选项中,选择默认浏览器

  14. 建议在下面的两个选项中都选择update classes and resource

  15. 下面是tomcat的默认端口,直接默认即可

  16. 建议修改tomcat的Name,这样做是为了区分不同项目(web应用)之间的tomcat

  17. 最后点击apply,再点击ok

  18. 点击tomcat右边的绿色箭头,如果在控制窗口没有报错,就代表运行成功了。

  19. 浏览器显示页面

  20. 在浏览器地址栏输入配置的项目资源地址,即可访问

4.2注意事项和细节

  1. 热加载选项说明

    1.1 on update action:选择 update classes and resource时,表示当我们有更新操作时,tomcat会自动更新类和资源

    当jsp/html文件修改时,可以生效,但是如果你修改的是java文件,需要redeploy才会生效)

    1.2 on frame deactivation:表示IDEA失去焦点(比如最小化),也会导致jsp/html发生更新,但是java类还是需要deploy

  2. 端口修改

    这里修改的端口,只会影响到当前的项目,而不是去修改server.xml

  3. out目录是什么

    当tomcat启动时,会生成out目录,该目录就是原项目资源的映射,我们浏览器访问的资源是out目录

  4. 当我们从外部拷贝资源到项目(图片,文件,js等),如果出现404不能访问错误时,解决的方式是:rebuild project-->重启tomcat

    本质是将原项目的资源同步到out目录下

    1. javaweb工程的目录介绍

5.练习

  1. 手动在tomcat的webapps目录下创建一个可供外界访问的web应用person项目

    练习1

    首先在tomcat的webapps目录下创建一个person文件夹,在person文件夹中存放相关资源cat.html和图片

    打开tomcat的bin目录,点击startup.bat,启动tomcat服务,在浏览器中输入http://localhost:8080/person/cat.html即可访问

  2. 修改tomcat/conf/server.xml,将tomcat服务器的端口更改为9998,测试使用

    练习2

    打开server.xml文件,在第六十九行修改端口号为9998并保存:

    重新启动tomcat服务,然后在浏览器地址栏中输入localhost:9998,显示可以访问,测试成功。

  3. 使用idea完成web项目

    • 创建javaweb项目工程[myWeb01]
    • 配置好tomcat[tomcat的配置名为myWeb01_Tomcat8,端口为8080]
    • 将前面你创建的web应用/文件夹person,部署到Tomcat
    • 在idea启动tomcat,能正常的访问web应用

    练习3

    首先创建一个java工程,在创建好的工程名右键选择add framework support,选择web,点击OK,工程就可以支持web应用了

    然后配置tomcat,接着将上面的person项目文件夹复制到idea新创建工程的web目录下

    点击启动按钮,显示可以正常访问

  4. 画图说明浏览器是如何访问到tomcat服务器下的某个javaweb应用下的资源的,比如url=http://www.abc.com/news/index.html

    练习4

有关day10-Tomcat02的更多相关文章

  1. Tomcat AJP 文件包含漏洞(CVE-2020-1938) - 2

    目录1.漏洞简介2、AJP13协议介绍Tomcat主要有两大功能:3.Tomcat远程文件包含漏洞分析4.漏洞复现 5、漏洞分析6.RCE实现的原理1.漏洞简介2020年2月20日,公开CNVD的漏洞公告中发现ApacheTomcat文件包含漏洞(CVE-2020-1938)。ApacheTomcat是Apache开源组织开发的用于处理HTTP服务的项目。ApacheTomcat服务器中被发现存在文件包含漏洞,攻击者可利用该漏洞读取或包含Tomcat上所有webapp目录下的任意文件。该漏洞是一个单独的文件包含漏洞,依赖于Tomcat的AJP(定向包协议)。AJP自身存在一定缺陷,导致存在可控

  2. postman——集合——执行集合——测试脚本——pm对象简单示例02 - 2

    //1.验证返回状态码是否是200pm.test("Statuscodeis200",function(){pm.response.to.have.status(200);});//2.验证返回body内是否含有某个值pm.test("Bodymatchesstring",function(){pm.expect(pm.response.text()).to.include("string_you_want_to_search");});//3.验证某个返回值是否是100pm.test("Yourtestname",function(){varjsonData=pm.response.json

  3. 牛客网专项练习30天Pytnon篇第02天 - 2

    1.在Python3中,下列关于数学运算结果正确的是:(B)a=10b=3print(a//b)print(a%b)print(a/b)A.3,3,3.3333...B.3,1,3.3333...C.3.3333...,3.3333...,3D.3.3333...,1,3.3333...解析:    在Python中,//表示地板除(向下取整),%表示取余,/表示除(Python2向下取整返回3)2.如下程序Python2会打印多少个数:(D)k=1000whilek>1:    print(k)k=k/2A.1000 B.10C.11D.9解析:    按照题意每次循环K/2,直到K值小于等

  4. 由于 libgmp.10.dylib 的问题,Ruby 2.2.0 无法运行 - 2

    我刚刚安装了带有RVM的Ruby2.2.0,并尝试使用它得到了这个:$rvmuse2.2.0--defaultUsing/Users/brandon/.rvm/gems/ruby-2.2.0dyld:Librarynotloaded:/usr/local/lib/libgmp.10.dylibReferencedfrom:/Users/brandon/.rvm/rubies/ruby-2.2.0/bin/rubyReason:Incompatiblelibraryversion:rubyrequiresversion13.0.0orlater,butlibgmp.10.dylibpro

  5. ruby - ri 有空文件 – Ubuntu 11.10, Ruby 1.9 - 2

    我正在运行Ubuntu11.10并像这样安装Ruby1.9:$sudoapt-getinstallruby1.9rubygems一切都运行良好,但ri似乎有空文档。ri告诉我文档是空的,我必须安装它们。我执行此操作是因为我读到它会有所帮助:$rdoc--all--ri现在,当我尝试打开任何文档时:$riArrayNothingknownaboutArray我搜索的其他所有内容都是一样的。 最佳答案 这个呢?apt-getinstallri1.8编辑或者试试这个:(非rvm)geminstallrdocrdoc-datardoc-da

  6. ruby-on-rails - gem install rmagick -v 2.13.1 错误 Failed to build gem native extension on Mac OS 10.9.1 - 2

    我已经通过提供MagickWand.h的路径尝试了一切,我安装了命令工具。谁能帮帮我?$geminstallrmagick-v2.13.1Buildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingrmagick:ERROR:Failedtobuildgemnativeextension./Users/ghazanfarali/.rvm/rubies/ruby-1.8.7-p357/bin/rubyextconf.rbcheckingforRubyversion>=1.8.5...yescheckingfor/

  7. ruby - 安装 tiny_tds 在 mac os 10.10.5 上出现错误 - 2

    我正在使用macos,我想使用ruby​​驱动程序连接到sqlserver。我想使用tiny_tds,但它给出了缺少free_tds的错误,但它已经安装了。怎么能过这个?~brewinstallfreetdsWarning:freetds-0.91.112alreadyinstalled~sudogeminstalltiny_tdsBuildingnativeextensions.Thiscouldtakeawhile...ERROR:Errorinstallingtiny_tds:ERROR:Failedtobuildgemnativeextension.完整日志如下:/System

  8. ruby-on-rails - rails : Find tasks that were created on a certain day? - 2

    我有一个任务列表(名称、starts_at),我试图在每日View中显示它们(就像iCal)。deftodays_tasks(day)Task.find(:all,:conditions=>["starts_atbetween?and?",day.beginning,day.ending]end我不知道如何将Time.now(例如“2009-04-1210:00:00”)动态转换为一天的开始(和结束),以便进行比较。 最佳答案 deftodays_tasks(now=Time.now)Task.find(:all,:conditio

  9. ruby - rails 3.2.2(或 3.2.1)+ Postgresql 9.1.3 + Ubuntu 11.10 连接错误 - 2

    我正在使用PostgreSQL9.1.3(x86_64-pc-linux-gnu上的PostgreSQL9.1.3,由gcc-4.6.real(Ubuntu/Linaro4.6.1-9ubuntu3)4.6.1,64位编译)和在ubuntu11.10上运行3.2.2或3.2.1。现在,我可以使用以下命令连接PostgreSQLsupostgres输入密码我可以看到postgres=#我将以下详细信息放在我的config/database.yml中并执行“railsdb”,它工作正常。开发:adapter:postgresqlencoding:utf8reconnect:falsedat

  10. ruby-on-rails - 在 osx 10.9.3 上使用 RVM 安装 ruby​​-1.9.3-p547 时出错 - 2

    如何解决这个错误:$rvminstall1.9.3Searchingforbinaryrubies,thismighttakesometime.Nobinaryrubiesavailablefor:osx/10.9/x86_64/ruby-1.9.3-p547.Continuingwithcompilation.Pleaseread'rvmhelpmount'togetmoreinformationonbinaryrubies.Checkingrequirementsforosx.Certificatesin'/usr/local/etc/openssl/cert.pem'arealr

随机推荐