JavaWeb学习(2)

Posted by Csming on 2016-10-14

Tomcat的管理程序

  • manager,用于部署到Tomcat服务器中的web应用程序

  • 要访问manager web应用程序,需要添加管理员权限账号

  • 步骤如下:

  • 编辑conf目录下的tomcat-user.xml文件,添加manager角色设置用户名和密码

    <?xml version='1.0' encoding='utf-8'?>
    <tomcat-users>
    <role rolename="manager-gui"/>
    <user username="tomcat" password="s3cret" roles="manager-gui"/>
    </tomcat-users>
    
  • webapps下的web应用程序都会在manager下管理

补充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/ **

Web程序结构

程序结构

  • 一个web应用程序是由一组Servlet、HTML页面、类。以及其他的资源组成的运行在web服务器上的完整的应用程序
  • 以一种结构化的有层次的目录型是存在
  • 组成web应用程序的这些文件要部署在相应的目录层次中,根目录代表整个web应用程序的“根”
  • 通常将web应用程序的目录放在webapps目录下,在webapps目录下的每一个子目录都是一个独立的web应用程序
  • 子目录的名字就是web应用程序的名字,也就是web应用程序的“根”
  • 用户通过web应用程序的“根”来访问web应用程序中的资源
  • 在web.xml中存放web应用的配置信息

利用原始方法创建web应用程序实例

  • 在Eclipse 新建一个Java Project

在Java项目下创建WEB开发的目录结构
-WebContent
-WEB-INF
-classes//编译后的class文件在此目录下
-lib
-web.xml
html页面
JSP页面
各种资源

  • 在src下新建Person类
  • 手工将Person类对应的class文件(含包)扶植到classes目录下
  • 可以通过修改默认的输出目录达到自动把编译好的class放到classes目录下:BuildPath->sourse
  • 在WebContent目录下新建一个JSP文件
  • 把WebContent目录复制到Tomcat的webapps目录下,并改名为helloworld
  • 在浏览器的地址栏中输入localhost/helloworld/hello.jsp即可看到命令行打印信息

配置任意目录下的web应用程序

  • 在Web服务器中可以配置虚拟目录,而虚拟目录对应的真实目录可以在任意目录下
  • 方法1:在Tomcat服务器中,主要在XML配置文件中通过元素的设置来完成的。
    一个原色就表示一个Web应用程序,运行在特定的虚拟主机中
    元素是元素的子元素,可以在conf\server.xml文件中设置Context元素
  • 方法2:在conf目录下依次创建Catalina\localhost目录,然后在localhost目录下为test这个Web应用程序建立test.xml文件,输入:
  • 比如:helloworld.xml

  • 则使用http://localhost:8080/helloworld/hello.jsp访问
    path:虚拟路径//没什么用- -可以去掉
    docBase:实际路径
    reloadbale:当修改了docBase下的classes目录下的class文件时,Tomcat服务器是否会重新加载WEB应用

从Tomcat5开始,不建议在server.xml文件中配置元素,因为server.xml文件作为Tomcat的主要配置文件,一单Tomcat启动后,将不再读取这个文件,因此无法再Tomcat服务器启动时发布Web应用程序。如果在其他地方配置元素,那么在Tomcat运行时,也可以发布Web应用程序


从Tomcat5.5开始,在\conf\Catalina\localhost目录下创建XML配置文件来配置Web应用程序,Tomcat将以XML文件的文件名作为Web应用程序的上下文路径,而不理会在元素的path属性中指定的上下文路径是什么。由于Tomcat5.5之后的版本是以XML配置文件的文件名作为Wev应用程序的上下文路径的,因此在配置元素时,可以不使用path属性