扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
Java
是一个面向对象的编程语言, 由 sun
公司所研发, 是目前世界上使用最广泛的编程语言之一
Java
技术的组成:
JVM
: Java
虚拟机, 提供 Java
的运行环境JAVA 编程语言
: 提供给程序员编写代码JAVA Class
: Java 的类文件格式, 决定 Java
程序编译出的字节码应该遵循的规范, 用于兼容不同的 JVM
JAVA API
: 提供 Java
的 API
接口, 缩短应用程序的开发周期JVM
是 Java
的核心和基础, 是 Java
解释器和 OS
平台之间的虚拟处理器(中间层), 它是一种基于操作系统和硬件平台利用软件方法抽象出的计算机
引入 Java
虚拟机后, 使得 Java
语言在不同平台上运行时不需要重新编; 使得 Java
程序员在开发 Java
程序时只需要面对 JVM
编写代码即可, 不用关心底层的操作系统和硬件平台Java
语言使用 Java
虚拟机屏蔽了与具体平台相关的信息, 使得 Java
语言编译程序只需生成在 Java
虚拟机上运行的目标字节码, 就可以在多种平台上不加修改地运行
JDK
是 Java
语言的软件开发工具包, 是整个 Java
的核心, 它包含了 Java
的运行环境和 Java
工具
简单来说 JDK = JAVA 编程语言 + JAVA API + 编译器 + JVM
JDK 的分类
JDK
开发 J2EE
应用程序Java
应用程序applet
是采用 Java
编程语言编写的, 经过编译后 applet
程序可以嵌到 HTML
中去, 然后将 applet
程序发送到客户端, 客户端的浏览器只要安装有 JDK
插件就能执行这个 applet
程序, 并将结果通过浏览器显示在客户端上, 这便是客户端动态网站
客户端动态网站的缺点:
JDK
插件applet
带有病毒如果这个程序在客户端运行就可能会对客户端主机造成巨大的危害因为这些缺点所以后来出现了服务器端动态的概念
Servlet
是用 Java
编写的服务器端程序, 其主要功能为交互式的浏览和修改数据, 生成动态 WEB 资源Servlet
可以让 Java
语言根据 CGI
技术开发运行在服务器端的动态 WEB
程序, 但在通信量大的服务器上 Java Servlet
的优点在于它们的执行速度更快于 CGI
程序Servlet
各个用户请求被激活成单个程序中的一个线程, 而无需创建单独的进程, 这意味着服务器端处理请求的系统开销将明显降低
Servlet
处理请求的过程:
Servlet
Servlet
生成响应内容并将其传给服务器JSP
是 Java
的服务器页面,它是 Servlet
的一个特殊类, 在根本上是一个简化的 Servlet
设计JSP
是在传统的 HTML
文件中插入 Java
的程序段, 从而形成了 JSP
文件
开发 JSP
程序的一个著名框架就是 SSH(Structs, Spring, Hebernate)
JSP
实现了 HTML
语法中的 Java
扩展, 通过在服务器端执行 Java
代码然后将执行结果嵌入到 HTML
中返回给客户端Servlet
主要是实现了用 Java
语言开发运行在 server
端的 WEB
动态资源
而这些依据 Java
语言开发的 WEB
动态资源大多数都是 .jsp
资源
Servlet Container
包含 JDK
以及 JDK
所不具备的功能, 可以让一个 Servlet
运行起来, 有相应的 Servlet
进程Servlet
进程负责接收前端 CGI
传递过来的请求, 并在本地的 JVM
上进行处理Servlet
同时还负责监控本地的 .java
程序是否发生了修改, 一旦发生修改则重新让编译器编译成 .class
文件
Web Container
是一个包含 Jasper
和 Servlet
相关的技术的框架, 其中 Jasper
负责监控本地的 .jsp
程序是否发生修改, 一旦修改就根据需求将其替换为 .java
源代码, 而 .java
就交给 Servlet
进行处理
Web Container
的商业实现: websphere
, weblogic
Web Container
的开源实现: tomcat
, jetty
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流