webapp server与java技术基础 |
java技术基础及tomcat入门 |
tomcat配置详解 |
tomcat配置及案例 |
一、Java技术基础
二、tomcat的安装
安装tomcat步骤:卸载掉自带的OpenJD---安装 JDK1.7---安装Tomcat---配置Tomcat为daemon方式启动
(一)、下载相关安装包
注:可以先进入 #cd /usr/local/ /进里面后再下载(也可以根据自己情况而定)
1、下载jdk (cenots6.5默认带openjdk, yum list all | grep jdk 查看)
2、下载Tomcat
(二)、安装JDK和Tomcat
注:可以先进入 #cd /usr/local/ /再执行下面的命令
1、编译安装Jdk
#chmod 777 jdk-7u9-linux-i586-rpm.bin
#./jdk-6u41-linux-i586-rpm.bin
#按提示完成操作,默认安装路径应该是/usr/java/jdk1.7.0_09
2、配置jdk(定义Java环境变量)
#vi /etc/profile
在尾部添加:
export JAVA_HOME=/usr/java/jdk1.7.0_09/
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export LASSPATH=.:/usr/java/jdk1.7.0_09/lib:/usr/java/jdk1.7.0_09/jre/lib:$CLASSPATH
#source /etc/profile
或者 vi /etc/profile.d/java.sh
JAVA_HOME=/usr/java/latest/
PATH=$JAVA_HOME/bin:$PATH
exprot JAVA_HOME PATH
#. /etc/profile.d/java.sh
#java -version /测试安装的Java 出现如下所示的
[root@centos bin]# java -version
java version "1.7.0_09"
Java(TM) SE Runtime Environment (build 1.7.0_09-b02)
Java HotSpot(TM) Client VM (build 20.14-b01, mixed mode, sharing)
(如果出现差不多没有关系,因为我是VM安装的多少会有点差别)
(三)、安装Tomcat
#tar zxvf apache-tomcat-7.0.35.tar.gz -C /usr/local #解压
#ls -sv apache-tomcat-7.0.35 tomcat #创建软连接
#cd /tomcat/bin/ # 打开此目录
#chmod 777 *.sh #加777权限
#catalina.sh start #启动
(四)、验证结果
访问 http://192.168.1.251:8080 /访问地址 IP:8080 如果访问不了
#/etc/init.d/iptables stop /停用防火墙 再访问看看
(五)、将tomcat服务设置为守护进程
配置Tomcat为daemon方式启动
将daemon.sh 拷贝到启动目录,安装服务,测试服务:
先编译安装 commons-daemon :
先安装gcc,因为编译的时候要用到
yum install gcc
创建tomcat用户,用来运行tomcat服务:
在生产环境用 root 是不安全的,所以
useradd -s /sbin/nologin tomcat
chown -R tomcat:tomcat /usr/local/tomcat
做为 service,和操作系统一起启动
# tar -xzvf commons-daemon-native.tar.gz
# cd commons-daemon-1.0.10-native-src/unix
# ./configure
# make
# cp jsvc ../..
# cd ../..
cp daemon.sh /etc/init.d/tomcat
chmod 755 /etc/init.d/tomcat
chkconfig --add tomcat
chkconfig tomcat on
chkconfig --list tomcat
显示: tomcat 0:off 1:off 2:on 3:on 4:on 5:on 6:off ← 确认2~5为on的状态就OK
启动Tomcat: service tomcat start
增加防火墙配置,允许8080端口:
# vi /etc/sysconfig/iptables
在允许ssh的下面增加一条:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
保存,重启iptables服务 :
# service iptables restart
三、tomcat配置详解
每个java项目运行起之后,都表现为一个jvm进程;
查看tomcat版本:#cataline.sh version
tomcat的安装目录:
bin:
conf:
server.xml, 主配置文件
tomcat-users.xml, 用户账号文件(用户认证)
web.xml(部署描述符),
部署:deployment
logs: 日志, log4j
lib: 库文件,类库
temp: 临时文件位置
webapps: 部署应用程序的根路径
work: 工作目录
tomcat的配置文件:
server.xml: 主配置文件
context.xml:每个webapp都有其配置文件,通常位于webapp目录下的WEB-INF目录中,通常用于定义会话管理器、Realm以及JDBC等;此配置文件是用于为部署在当前tomcat实例上的所有的webapp提供默认配置;
web.xml: 为部署在当前tomcat实例上的所有的webapp提供默认部署描述符;通常用于为webapp提供基本的servlet定义和MEM映射表;
tomcat-users.xml:
catalina.policy: 当基于-security选项启动tomcat实例时会读取此配置文件;用于定义JAVA的安全策略,配置访问codebase或某些Java类的权限;
catalina.properties: Java属性定义的文件,用于设定类加载器路径、安全包列表,以及一些调整jvm性能的相关参数的信息;
logging.properties: 定义日志相关的配置信息,如日志级别、文件路径等;
tomcat的主配置文件:
组件:由java类实现;有些组件实现的方式不止一种;有些组件可以实现嵌套别的组件;
顶级类组件:server(代表一个tomcat实例)
服务类组件:service
容器类组件:engine(代表一个web container), host, context
连接器组件:connector
http, ssl, ajp(apache jserv protocol)
被嵌套类组件:valve, logger, realm
<server port="8005" shutdown="shutdown">
<service>
<connector>
<connector>
……
<engine>
<host>
<context>
</contest>
……
</host>
</engine>
</service>
</server>
tomcat自带的两webapp:
manager: 管理器
输出状态信息
部署webapp
host-manager: 主机管理器
tomcat的应用程序必须被“部署”才能够被访问:
部署:是指将webapp及其所依赖的类库等装载进tomcat实例,以便接收用户请求的操作过程;
部署方式:
静态方式(冷部署):在tomcat启动之前进行的部署;
动态方式(热部署):在不打断tomcat实例运行的前提下,通过tomcat manager或其它的部署工具进行的部署;具体的部署工具:
Tomcat Manager
ANT脚本
TCD: tomcat client deployer
部署相关的操作:
Deploy: 将webapp的源文件放置于目标目录、配置tomcat服务器能够基于context中定义的路径来访问此webapp,并将其特有的类通过class loader装载到tomcat实例上;
Redeploy: 重新部署,常用于升级时;
Undeploy: 反部署,停止webapp,并从tomcat实例移除其部分文件和部署名;
Stop: 停止;
Start: 启动
webapp应用程序:有多种归档格式
.war: web应用程序
.jar: EJB类
.rar: 资源适配器
.ear:企业级应用程序
webapp体系结构:
webapp的特定组织格式,是一种层次型目标结构;通常包含了servlet代码文件、jsp页面文件、类文件、部署描述符文件等等;
/: webapp的根目录
/WEB-INF: 当前webapp的私有资源目录,通常web.xml和context.xml都放置于此目录中;
/classes: 此webapp私有的类
/lib: 此webapp私有的,被打包为jar格式的类;
/META-INF:
创建一个应用程序:
#mkdir /tomcat/webapps -pv #自定义网站路径
#mkdir test #cd test #创建应用程序目录
#mkdir WEB-INF/{classes,lib} -pv
#vi index.jsp (编辑网页内容)
#vi /usr/local/tomcat/conf/server.xml #因为自定义网站路径,所有得修改主配置文件,定义虚拟主机添加host段,
<Host name="www.magedu.com" appBase="/tomcat/webapps" >
unpackWARs="true" autoDeploy="true">
</Host>