黑马程序员技术交流社区

标题: 【西安校区】TOMCAT之java技术详解 [打印本页]

作者: 逆风TO    时间: 2019-9-4 09:41
标题: 【西安校区】TOMCAT之java技术详解
一、JAVA的形成历史

早期在20世纪90年代,SUN公司为了抢占智能电视的市场,在1991年成立了一个Green的研发小组,专攻计算机在家电产品上的嵌入应用;但是由于消费电子产品所采用的嵌入式处理器芯片的种类繁杂,如何让编写的程序跨平台运行也是个难题,所以后来开发了一种称为Oak的面向对象语言。1995年,更名为java,据说是在Java岛(爪哇岛)上曾喝过一种美味的咖啡,于是便命名为java;开始向互联网进发,开启了java的辉煌之旅。

二、java的主要技术

java程序设计语言
java API
java class
JVM:java virtual machine
三、JAVA应用领域上分类

JAVA SE:java standard edition 标准版
JAVA EE:java enterprise edition  企业版
JAVA ME:java mobile edition  移动版(基本不用来移动端开发)
四、JVM的实现方式

一次性解释器,解释字节码并执行
即时编译器(just-in-time complier)依赖于更多内存缓存解释后的结果
自适应编译器,缓存20%左右代码,提高80%左右的速度
五、JVM分类----SUM自有的Hotspot JVM;开源的Open JDK

JRE:java运行时环境

JRE=JVM+java SE API

JDK:java开发环境(开发编译+运行)

JDK=java+api+JVM

六、JVM内存模型

纯种私有内存区:程序计数器、java虚拟机栈
线程共享内存区:方法区、堆(几乎是JVM所占内存的最大比);堆----java中可自动进行内存回收
java垃圾回收算法:1.标记-清除;2.复制(可以避免碎片,但浪费空间);3.标记-整理
七、JDK安装

下载JKD安装包https://www.oracle.com/technetwo ... nloads-2133151.html


     2.安装JDK

[root@localhost ~]# rpm -ivh jdk-8u221-linux-x64.rpm
warning: jdk-8u221-linux-x64.rpm: Header V3 RSA/SHA256 Signature, key ID ec551f03: NOKEY
Preparing...                          ################################# [100%]
Updating / installing...
   1:jdk1.8-2000:1.8.0_221-fcs        ################################# [100%]
Unpacking JAR files...
        tools.jar...
        plugin.jar...
        javaws.jar...
        deploy.jar...
        rt.jar...
        jsse.jar...
        charsets.jar...
        localedata.jar...
#安装后,默认的安装在/usr/java;使用java -version命令,能显示信息,表示成功
[root@localhost jdk1.8.0_221-amd64]# java -version
java version "1.8.0_221"
Java(TM) SE Runtime Environment (build 1.8.0_221-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

#设置环境变量
vim /etc/profile.d/java.sh
#建入以下内容
export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export PATH=$PATH:$JAVA_HOME/bin

# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/java/jdk1.8.0_221-amd64/bin
    3.java配置参数

java -XX:+OptionName    #表示开启此参数指定的功能
java -XX:-OptionName    #表示关闭此参数指定的功能
java -XX:OptionName=value    #表示给指定的参数赋值
java -XX:+PrintFlagsFinal       #显示支持的所有参数及默认值
八、Sun JDK监控和故障处理工具

jps:JVM Process Status Tool   #显示指定系统内所有的HotSpot虚拟机进程的列表信息
jstat:JVM Statistics Monitoring Tool   #收集并显示HotSpot虚拟机各方面的运行数据
jinfo   #显示HotSpot虚拟机配置信息
jmap  #生成某HotSpot虚拟机的内存转储快照
可视化工具:jconsole
九、JAVA web相关技术

    1.Servlet 是Java Servlet的简称,能够使得java开发动态页面,通过CGI技术与web前端进行通信;但是这种技术是硬编码,编码不方便,每一次改动都得重新编译,即使html的改变,也得重新编译

    2.JSP是JAVA Server Pages的简称,是一种实现普通静态HTML 和动态 HTML 混合编码的技术;jsp技术主要功能是让java能以标签的形式嵌入到html中,使得java程序员不在需要深入了解html。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2