WEBAPP开发之汤姆猫的安装、使用。
白羽 2018-12-29 来源 :网络 阅读 1149 评论 0

摘要:本文将带你了解WEBAPP开发汤姆猫的安装、使用。,希望本文对大家学WEBAPP有所帮助。

    本文将带你了解WEBAPP开发汤姆猫的安装、使用。,希望本文对大家学WEBAPP有所帮助。


               


先要提供jdk-7u9-linux-x64.rpm(如以上版本)

 

安装jdk(java需要用到的编译开发工具)

 

[root@libincla ~]# rpm -vih   jdk-7u9-linux-x64.rpm         
Preparing...                  ########################################### [100%]        
     1:jdk                      ########################################### [100%]        
Unpacking JAR   files...          
    rt.jar...        
Error: Could not open   input file: /usr/java/jdk1.7.0_09/jre/lib/rt.pack          
    jsse.jar...        
Error: Could not open   input file: /usr/java/jdk1.7.0_09/jre/lib/jsse.pack          
    charsets.jar...        
Error: Could not open   input file: /usr/java/jdk1.7.0_09/jre/lib/charsets.pack          
    tools.jar...        
Error: Could not open   input file: /usr/java/jdk1.7.0_09/lib/tools.pack          
    localedata.jar...        
Error: Could not open   input file: /usr/java/jdk1.7.0_09/jre/lib/ext/localedata.pack

 

安装完后会在/usr/java里出现

 

 

   

将JDK提供一些功能编辑到/etc/profile.d/java.sh,以便方便使用。

 

 

   

source一下配置文件,使用命令 java -version查看java虚拟机的信息。

 

[root@libincla ~]# java -version       
java version   "1.7.0_09"          
Java(TM) SE Runtime Environment (build 1.7.0_09-b05)        
Java HotSpot(TM) 64-Bit   Server VM (build 23.5-b02, mixed   mode)

   

下一步,安装tomcat,把tomcat安装到/usr/local目录下。

 

[root@libincla ~]# tar xf    apache-tomcat-7.0.42.tar.gz  -C    /usr/local

 

它会生成一个叫apache-tomcat-7.0.42的目录,为了方便以后的定义配置简便快捷,可以创建一个链接叫tomcat。

 

[root@libincla local ]# ln -sv   apache-tomcat-7.0.42  tomcat         
`tomcat‘ -> `apache-tomcat-7.0.42‘

 

默认tomcat要部署的应用程序的目录为

 

[root@libincla webapps]# pwd         
/usr/local/tomcat/webapps        
[root@libincla webapps]#   ls        
docs    examples  host-manager  manager    ROOT

   

在tomcat目录中有个work目录,用来将webapps存放的文件编译成.class结尾的类文件。

 

强烈推荐将tomcat中bin目录下的脚本文件导出至系统,需要编辑/etc/profile.d/tomcat.sh,在里面添加

 

 

   

 

 

[root@libincla manager]# catalina.sh   version(这里运行成功表示可以看到tomcat的版本以及CPU名称,架构等等信息)       
Using   CATALINA_BASE:   /usr/local/tomcat        
Using   CATALINA_HOME:   /usr/local/tomcat        
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp          
Using   JRE_HOME:          /usr/java/latest          
Using   CLASSPATH:         /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar        
Server version: Apache   Tomcat/7.0.42        
Server   built:   Jul 2 2013 08:57:41        
Server number:    7.0.42.0        
OS   Name:          Linux        
OS   Version:     2.6.32-431.el6.x86_64          
Architecture:   amd64        
JVM   Version:    1.7.0_09-b05        
JVM   Vendor:     Oracle Corporation        
[root@libincla manager]#   version.sh        
Using   CATALINA_BASE:   /usr/local/tomcat        
Using   CATALINA_HOME:   /usr/local/tomcat        
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp          
Using   JRE_HOME:          /usr/java

 

比较规范的作法是用catalina.sh调用/usr/local/tomcat/bin下的脚本,查看catalina。sh的帮助信息。

 

[root@libincla manager]# catalina.sh   --help       
Using   CATALINA_BASE:   /usr/local/tomcat        
Using   CATALINA_HOME:   /usr/local/tomcat        
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp          
Using   JRE_HOME:          /usr/java/latest          
Using CLASSPATH:         /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar        
Usage: catalina.sh (   commands ... )        
commands:        
    debug               Start Catalina in a debugger          
  debug -security   Debug   Catalina with a security manager          
  jpda start          Start Catalina under JPDA debugger          
    run                 Start Catalina in the current window          
  run   -security     Start in the current window   with security manager          
    start               Start Catalina in a separate window          
  start -security   Start in a   separate window with security manager          
  stop                Stop Catalina, waiting up to 5 seconds for the process to end        
  stop   n              Stop Catalina, waiting up to n seconds for the process to end        
  stop   -force       Stop   Catalina, wait up to 5 seconds and then use kill -KILL if still running        
  stop n   -force     Stop Catalina, wait up to n   seconds and then use kill -KILL if still running        
    configtest          Run a basic syntax check on server.xml - check exit code for result        
    version             What version of tomcat are you running?        
Note: Waiting for the   process to end and use of the -force option require that $CATALINA_PID is   defined

   

由于catalina默认监听在8080端口上,在启动之前首先要保证你的8080端口没有被占用,然后在去开启服务,catalina.sh   start

   

[root@libincla manager]# catalina.sh   start       
Using   CATALINA_BASE:   /usr/local/tomcat        
Using   CATALINA_HOME:   /usr/local/tomcat        
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp          
Using JRE_HOME:          /usr/java/latest          
Using   CLASSPATH:         /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar        
[root@libincla manager]#   ss -tnlp | grep 8080          
LISTEN       0        100                        :::8080                      :::*      users:(("java",4760,40))

 

然后客户端win7访问一下,汤姆猫就算安装成功啦。

 

 

=========================================================================

 

tomcat:是由java编程语言编写的web   container(Servlet,JSP),每个java项目运行起来以后都表现为一个jvm进程。它的运行过程大概是tomcat由classloader装载到JVM上运行的。

 

JDK主要提供JVM虚拟机,而JVM虚拟机自己有版本的依赖性。而运行在JVM虚拟机上的java程序却没有依赖性。

 

tomcat安装时生成的各目录以及定义,例如:

 

[root@libincla bin]# cd   /usr/local/tomcat/        
[root@libincla tomcat]# ls       
bin    conf  lib  LICENSE  logs    NOTICE  RELEASE-NOTES  RUNNING.txt  temp    webapps  work

 

bin目录:

 

[root@libincla tomcat]# cd bin/      
[root@libincla bin]# ls         
bootstrap.jar                   configtest.bat  memcached-session-manager    startup.bat             version.bat         
catalina.bat                    configtest.sh     msm                          startup.sh              version.sh         
catalina.sh                     cpappend.bat      setclasspath.bat             tomcat-juli.jar         
catalina-tasks.xml              daemon.sh         setclasspath.sh              tomcat-native.tar.gz       
commons-daemon.jar              digest.bat        shutdown.bat                 tool-wrapper.bat         
commons-daemon-native.tar.gz    digest.sh         shutdown.sh                  tool-wrapper.sh

 

提供java的各种脚本,以及自举的jar文件。(自举就是当你启动tomcat的时候,默认并不是启动tomcat,而是JVM,还要tomcat自己在JVM上运行。该过程就是tomcat先启动JVM,再由JVM启动装载自己的过程。)

 

conf:配置文件目录    server.xml(配置的主文件),tomcat-users.xml(tomcat实现用户认证时, tomcat自己的账号密码)   web.xml(tomcat的部署描述符文件)

 

这里渗透一个部署的概念,部署(deployment)就是java应用程序放在指定路径下,让JVM能够找到它,让web   container找到它,必要时访问web资源能够自动加载这个应用程序的所有类文件的过程。

 

logs:日志,log4j(独特类)java内部专用日志管理的专用类。

 

lib:库文件和类库文件

 

temp   临时文件目录

   

webapps:应用程序部署的位置、路径。

 

work:把webapps下的所有jsp格式的页面程序文件转换成Servlet程序文件并编译成class文件,编译完的class文件都放到work目录。

 

重点是tomcat的配置文件都定义了哪些?

 

[root@libincla tomcat]# cd conf/      
[root@libincla conf]#   ls       
Catalina    catalina.policy  catalina.properties  context.xml    logging.properties  server.xml  tomcat-users.xml    web.xml

   

主配置文件   server.xml

 

上下文文件 context.xml:每个webapp都有它自己的默认配置文件,此类配置文件正式用于部署为当前tomcat实例上所有的webapp目录下的META-INF目录中,通常用于定义会话管理器,Realm以及JDBC等。

 

部署描述符文件 web.xml    部署为当前tomcat实例上所有的webapp目录下提供默认部署的描述符。通常用于为webapp提供基本的Servlet定义和MEM映射表。

 

用户账号文件、tomcat-users.xml

 

catalina的策略 catalina.policy   当基于-security选项启动tomcat实例时会读取此配置文件,用于定义java的安全策略,配置访问codebase或某些java类权限。

 

catalina的属性 catalina.properties :Java   属性定义的文件,用于设定类加载器路径/安全包列表,以及一些调整jvm性能的信息。

 

logging.properties:定义日志相关的配置信息,如日志级别、文件路径等信息.

 

 

tomcat的主配置文件:

 

每个组件由java类实现,有些组件的实现方式不止一种,有多个组件组成,有些组件可以嵌套别人的组件。

 

 

   

补充一个概念   路径别名,将一个url路径映射至非当前网站站点根目录下的其他目录资源中去。

 

下面一起来看看server.xml这个主配置文件

 

 

   

  CATALINA工作起来的端口。

 

tomcat的工作端口   8005唯一可以接受的就是SHUTDOWN指令,用telnet连接 127.0.0.1   8005可以发送SHUTDOWN让java进程关闭掉。

 

[root@libincla tomcat]#  telnet   127.0.0.1 8005      
Trying   127.0.0.1...       
Connected   to 127.0.0.1.       
Escape   character is ‘^]‘.         
SHUTDOWN  
Connection closed by   foreign host

现在再查看服务,      

 

   

另外在主配置文件中分别定义了不同的connector

 

1、监听在8080的连接器,可以负责响应前段的http请求

 

<Connector port="8080"   protocol="HTTP/1.1"        
             connectionTimeout="20000"         
             redirectPort="8443" />

 

2、监听在8009的连接器,实现与当你的前段使用apache反向代理过来使用的ajp协议。

 

<Connector port="8009"   protocol="AJP/1.3" redirectPort="8443"   />

 

再次启动tomcat可以使用catalina.sh   start

   

[root@libincla   tomcat]# catalina.sh start

 

当你在开启tomcat以后,在work目录中就有这些目录

 

  其中最后的index_jsp.java就是index的源码,index_jsp.class就是index的类文件。我们响应给用户的就是编译好运行的index_jsp.class

 

下面这个主页

 

 

   

是由/tomcat/webapps/ROOT提供的

 

 

 

   

tomcat自带了两个webapp

 

manager  app(server   status)webapp 部署

 

host-manager   (各虚拟主机的管理器)

 

点击主页上的Manager   App会出现要求用户认证的信息

 

 

   

如何点“取消”,就出现如下画面,并提示你从哪提供认证信息。

 

 

   

如果想要编辑,需要编辑/tomcat/conf/tomcat-users.xml文件

 

在下方任意行中插入:

 

<role   rolename="manager-gui"/>  #定义一个叫manager-gui的角色      
<user username="tomcat"   password="tomcat" roles="manager-gui"/>   #设定账号叫tomcat,密码叫tomcat。

 

然后catalin.sh stop ; catalina.sh   start

   

[root@libincla conf]# catalina.sh stop ;   catalina.sh start      
Using   CATALINA_BASE:   /usr/local/tomcat       
Using   CATALINA_HOME:   /usr/local/tomcat       
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp         
Using   JRE_HOME:          /usr/java/latest       
Using   CLASSPATH:         /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar       
Using   CATALINA_BASE:   /usr/local/tomcat       
Using   CATALINA_HOME:   /usr/local/tomcat       
Using CATALINA_TMPDIR:   /usr/local/tomcat/temp         
Using   JRE_HOME:          /usr/java/latest       
Using   CLASSPATH:         /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar

 

再次点击Manager   App按钮,输入定义的账号密码(都为tomcat),再次访问出现管理页面。

 

  Page1

   

部分解释。

 

  Page2

   

但是,如果用相同的账号密码访问Host-Manager页面,则会出现

 

Error   Page1

   

所以重新编辑tomcat-users.xml  

   

 

 

 

[root@libincla conf]# vim   tomcat-users.xml 添加一个新的认证的用户叫jerry

 

<role   rolename="admin-gui"/>        
<user username="jerry"   password="jerry" roles="admin-gui"/>       
<role   rolename="manager-gui"/>       
<user   username="tomcat" password="tomcat" roles="manager-gui,admin-gui"/>

 

再次catalina.sh stop &&   catalina.sh start

 

访问页面。

 

  访问成功。

   

 

下面将更深入介绍汤姆猫的更多应用。

 

 


                           

本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标移动开发之WebApp频道!


本文由 @白羽 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程