文档开发者中心
我的

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安装


1、下载JKD安装包https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-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。


————————————————

版权声明:本文为CSDN博主「@shitouji」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。

原文链接:

点赞
收藏
回复
2
分享
举报
浏览1642 发布于2019-10-18 07:11未知归属地
全部评论
最多点赞
最新发布
最早发布

很详细的内容,感谢分享~

1楼回复于2019-10-18 07:31 未知归属地
写回答
新增插入模板功能
一键使用模板,快速填写内容,轻松发帖~
知道了
  • 为了保障您的信息安全,请勿上传您的敏感个人信息(如您的密码等信息)和您的敏感资产信息(如关键源代码、签名私钥、调试安装包、业务日志等信息),且您需自行承担由此产生的信息泄露等安全风险。
  • 如您发布的内容为转载内容,请注明内容来源。

我要发帖子

了解社区公约,与您携手共创和谐专业的开发者社区。