第一章JAVA
一、Java虚拟机的由来
常见编程语言(开发工具),系统级别的有常见的c、c++、go。而应用级别的有c#、ruby、java、python、php、Perl。而这些程序要运行有两种方式,一种是编译,一种是解释,而采用解释就需要有专门的解释器(运行环境)来逐条解释程序源码。但是针对java来说使用的就是虚拟机,称为JVM(c#使用的是CVM)。
在web应用场景中,由于客户端系统版本众多,对于服务器端程序的编译采用了两种方式:客户端编译(源码发送到客户端,有客户端安装编译程序进行编译,早期使用,现在淘汰),服务器端编译(通过CGI接口将前端web请求通过CGI接口发送到后端应用程序服务器,并有后端服务器计算出请求的结果后发送给前端web服务器,有其发送给客户端的形式)。
常见的源码(编程语言)对应的运行环境服务器有:
JSP:TOMCAT、JBOSS、
PHP:PHP-FPM
平台移植
开发工具开发一个程序,通常是在一个系统架构上来进行的比如windows或者linux平台,开发的时候需要调用库文件,而这需要API接口,它的作用就是连接开发工具和库文件。那么依据不同的平台开发的程序通常是不能够跨平台安装的,因为他们的库文件是不同的,那么如何实现跨平台呢,于是有了POSIX,一个标准,用于实现开发出来的程序可以跨平台安装的。
Java的四种技术
Java设计语言
JVM:解释器,虚拟机
Java class 文件格式,源程序编译完成后的程序文件名。*.class
http://note.youdao.com/src/9F748AF74143426888760682BF3CA3E1
JVM的实现方式:
1、一次性解释器,解释字节码(*.class)
2、即时编译期
3、自适应编译器
常见java虚拟机
Java公司
JDK:java开发组件,开发(编译),JDK包含JRE。
java+API+JVM,是开发java的最小环境。
JRE:Java运行时环境,运行。
JVM+Java SE AIP
OpenJDK:开发+运行
java的分类
按应用领域不同:
Java SE:标准版,包含了java二进制程序(字码解释器和JVM虚拟机)和Java的核心代码库(库文件)。它包括的API只有JNDI和JAXP。j2se,第二版,JDK+JAVA API
Java EE:企业版,建立在Java SE基础之上,程序依赖于SE才能工作,适用于大型项目开发。包含了很多独立的API,其中最著名的就是servlet和jsp,还包括EJB,JMX,JTA等。
Java ME:移动版
知识点:
早期java通过applet类程序完成web服务的动态页面功能,这是一种客户端解释程序,需要客户端解析的。后来出现了CGI,实现了服务器端解释动态请求的功能。
servlet技术实质上就是Java公司开发的实现CGI功能的一个技术,目的同样和CGI一样,用于编译执行动态请求。
JSP就是一种动态开发语言,可以像php一样直接将语言嵌套在HTML静态语言中。而解释则需要自己的servlet技术。
tomcat是sun公司将servlet卖给apache公司后,整合出来的程序,用于实现java的虚拟机功能。tomcat包含java se+servlet+jsp。
Java EE的实现:(不同厂家有不同的实现方式)
WebSphere:IBM公司
Weblogic:BEA公司
JBoss:redhat公司
开源实现方式:
Tomcat:apache公司
jetty:轻量级,小型架构
resin:
JSP技术
Java实现动态开发网页的语言,使用.jsp格式,需要转换成.java格式(需要servlet container (servlet 容器)),而.java格式需要转换成.class格式(需要JVM进行转换)。应用程序生成的代码文件存放在/usr/local/tomcat/work目录下以虚拟主机为名称创建目录,并且会先将JSP文件通过jasper翻译成.java文件,然后在通过编译器javac编译成.class文件才可以使用
第二章Tomcat
一、安装Tomcat
官网下载地址:http://www.oracle.com/technetwork/java/javase/archive-139210.html
我这里使用的是 jdk-8u131-linux-x64.tar ,首先需要解压缩,然后移动到/usr/java目录下,然后在/etc/profile.d/目录下创建java.sh文件,并执行。
[root@localhost ~]# tar xf jdk-8u131-linux-x64.tar
[root@localhost ~]# mv jdk1.8.0_131/ /usr/java/
[root@localhost java]# ll
总用量 25884
drwxr-xr-x. 2 uucp 143 4096 3月 15 16:33 bin
-r--r--r--. 1 uucp 143 3244 3月 15 16:32 COPYRIGHT
drwxr-xr-x. 4 uucp 143 4096 3月 15 16:32 db
drwxr-xr-x. 3 uucp 143 4096 3月 15 16:32 include
-rwxr-xr-x. 1 uucp 143 5097105 3月 15 12:39 javafx-src.zip
drwxr-xr-x. 5 uucp 143 4096 3月 15 16:32 jre
drwxr-xr-x. 5 uucp 143 4096 3月 15 16:33 lib
-r--r--r--. 1 uucp 143 40 3月 15 16:32 LICENSE
drwxr-xr-x. 4 uucp 143 4096 3月 15 16:32 man
-r--r--r--. 1 uucp 143 159 3月 15 16:32 README.html
-rw-r--r--. 1 uucp 143 526 3月 15 16:32 release
-rw-r--r--. 1 uucp 143 21115141 3月 15 16:32 src.zip
-rwxr-xr-x. 1 uucp 143 63933 3月 15 12:39 THIRDPARTYLICENSEREADME-JAVAFX.txt
-r--r--r--. 1 uucp 143 177094 3月 15 16:32 THIRDPARTYLICENSEREADME.txt
[root@localhost java]# cat /etc/profile.d/java.sh
export JAVA_HOME=/usr/java/
export PATH=$JAVA_HOME/bin:$PATH
[root@localhost java]# . /etc/profile.d/
查看java运行环境及虚拟机状态
[root@localhost java]# java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
2、Tomcat环境部署
我这里下载使用的是apache-tomcat-8.5.15.tar 版本,同样解压缩后移动到指定目录并通过profile.d目录创建配置文件并激活变量。
[root@localhost ~]# tar xf apache-tomcat-8.5.15.tar
[root@localhost apache-tomcat-8.5.15]# mv /root/apache-tomcat-8.5.15 /usr/local/tomcat
[root@localhost tomcat]# . /etc/profile.d/tomcat.sh
配置文件内容:
[root@localhost tomcat]# cat /etc/profile.d/tomcat.sh
export CATALINA_HOME=/usr/local/tomcat
export PATH=$CATALINA_HOME/bin:$PATH
启动tomcat,可以通过catalina.sh文件启动。实际生产环境要使用tomcat账户启动而不是root账户,安全考虑。
[root@localhost bin]# 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/
Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar类加载器,tomcat同样是java的一种类。
Tomcat started.
创建开机启动脚本:/etc/rc.d/init.d/tomcat,并设置“执行”权限,建议不要使用管理员root启动
[root@localhost bin]# cat /etc/rc.d/init.d/tomcat
#!bin/bash
#Tomcat init-script for linux
#
#
#chkconfig 2345: 96 14
JAVA_HOME=/usr/java/
CATALINA_HOME=/usr/local/tomcat/
export JAVA_HOME CATALINA_HOME
exec $CATALINA_HOME/bin/catalina.sh $*
查看启动项:
tcp 0 0 :::8080 :::* LISTEN 19917/java
更改监听端口/usr/local/tomcat/conf/server.xml
运维网声明
1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网 享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com