[Java Web] 2、Web开发中的一些架构
1、企业开发架构:
企业平台开发大量采用B/S开发模式,不管采用何种动态Web实现手段,其操作形式都是一样的,其核心操作的大部分都是围绕着数据库进行的。但是如果使用编程语言进行数据库开发,要涉及很多诸如事务、安全等操作问题,所以现在开发往往要通过中间件进行过渡,即,程序运行在中间件上,并通过中间件进行操作系统的操作,而具体一些相关的处理,如事务、安全等完全由中间件来负责,这样程序员只要完成具体的功能开发即可。

2、Java EE架构:
Java EE 是在 Java SE 的基础上构建的,.NET也是由Java EE而来。

2.1、四大容器:
Applet Container、Application Container、Web Container、EJB Container 各自负责,互不影响,如果要运行Web程序,则一定要Web容器。
2.2、Java EE组件:
Applet、Application、JSP/Servlet、EJB 每种容器运行着各自的组件,每个组件意味着一种程序开发。
2.3、Java EE服务:
HTTP(Hypertext Transfer Protocol):主要的通信协议
RMI-IIOP(Remote Method Invocation over the Internet Inter-ORB Protocol):远程方法调用
Java IDL(Java Interface Definition Language):Java接口定义语言,主要用于访问外部的CORBA服务
JTA(Java Transaction API):用于进行事务处理的API,但在Java EE中所有事务应交给容器处理
JDBC(Java Database Connectivity):为数据库操作提供一组API
JMS(Java Message Service):用于发送点对点的消息服务,需要额外的消息服务中间件支持
JavaMail:用于发送邮件,需要额外的邮件服务支持
JAF(JavaBeans Activation Framework):用于封装传递的邮件数据
JNDI(Java Naming and Directory Interface):“key-value"提供名称绑定,并依靠绑定的名字取得具体对象
JAXP(Java API for XML Parsing):专门用来XML解析的API
JCA(J2EE Connector Architecture):Java 连接器架构,通过此连接器可以连接不同开发架构的应用程序
JAAS(Java Authentication and Authorization Service):用于认证用户操作,可以让当前运行代码更加可靠
JSF(Java Server Faces):官方MVC实现组件
JSTL(JSP Standard Tag Library):JSP页面标签支持库
SAAJ(SOAP with Attachments API for JAVA)、JAXR(Java API for XML Registries):Web服务组件,主要用于异构的分布式服务开发
3、Java EE在企业应用环境中的位置:
只是中间层的一种组件!
4、Java EE核心设计模式:MVC(Mode-View-Controller)

5、Struts开发框架:
使用标准的MVC设计模式进行开发,则肯定进行过多的复杂设计,Struts是一套用于进行MVC开发的框架。显然这里Struts是对JSP和Servlet的一种综合,或变相应用。

[Java Web] 2、Web开发中的一些架构的更多相关文章
- Java 反射在实际开发中的应用
运行时类型识别(RTTI, Run-Time Type Information)是Java中非常有用的机制,在java中,有两种RTTI的方式,一种是传统的,即假设在编译时已经知道了所有的类型:还有一 ...
- [转]Java 反射在实际开发中的应用
一:Java类加载和初始化 1.1 类加载器(类加载的工具) 1.2 Java使用一个类所需的准备工作 二:Java中RTTI 2.1 :为什么要用到运行时类型信息(就是RTTI) 2.2 :RTT ...
- Java生鲜电商平台-SpringCloud微服务开发中的数据架构设计实战精讲
Java生鲜电商平台-SpringCloud微服务开发中的数据架构设计实战精讲 Java生鲜电商平台: 微服务是当前非常流行的技术框架,通过服务的小型化.原子化以及分布式架构的弹性伸缩和高可用性, ...
- 转:Android开发中的MVP架构(最后链接资源不错)
Android开发中的MVP架构 最近越来越多的人开始谈论架构.我周围的同事和工程师也是如此.尽管我还不是特别深入理解MVP和DDD,但是我们的新项目还是决定通过MVP来构建. 这篇文章是我通过研究和 ...
- Java 泛型在实际开发中的应用
java泛型是对Java语言的类型系统的一种扩展,泛型的本质就是将所操作的数据类型参数化.下面我会由浅入深地介绍Java的泛型. 一:泛型出现的背景 在java代码里,你会经常发现类似下边的代码: p ...
- Java IO在实际开发中的应用
IO是java绕不过去的槛,在开发中io无处不在, 正如同 世界上本没有路,java io写多了,也就知道了大体是什么意思,在读完thinking in java 感觉就更清晰了,结合具体的业务场景, ...
- Android学习探索之Java 8 在Android 开发中的应用
前言: Java 8推出已经将近2年多了,引入很多革命性变化,加入了函数式编程的特征,使基于行为的编程成为可能,同时减化了各种设计模式的实现方式,是Java有史以来最重要的更新.但是Android上, ...
- Java 数据类型在实际开发中应用
在前边的博文中,我已经介绍了Java核心的容器IO等,现在我来说一下java中的数据类型.在java中,一切东西皆为对象(这句话意思是java中绝大数情况都用对象),极少数不是对象的,也存在与之对应的 ...
- 转: Android开发中的MVP架构详解(附加链接比较不错)
转: http://www.codeceo.com/article/android-mvp-artch.html 最近越来越多的人开始谈论架构.我周围的同事和工程师也是如此.尽管我还不是特别深入理解M ...
随机推荐
- 命令行启动win7系统操作部分功能
control.exe /name microsoft.folderoptions 启动资源管理器的 文件夹属性 选项卡 control.exe /name Microsoft.AddHardware ...
- win7的svchost.exe占用内存过高如何解决
方法/步骤 1 在我的电脑上点击鼠标右键,选择[管理] 步骤阅读 2 选择右侧[服务和应用程序]下的[服务]选项 步骤阅读 3 找到名称我Superfetch的服务,双击鼠标左键. 步骤阅读 4 选择 ...
- css 透明(transparent)
opacity : .75; //standard css3 style for transparency -moz-opacity : .75; // transparenc ...
- Mahout源码分析之 -- QR矩阵分解
一.算法原理 请参考我在大学时写的<QR方法求矩阵全部特征值>,其包含原理.实例及C语言实现:http://www.docin.com/p-114587383.html 二.源码分析 这里 ...
- [转] Oracle analyze 命令分析
转自:http://blog.sina.com.cn/s/blog_682841ba0101bncp.html 1.analyze table t1 compute statistics for ta ...
- Shi-Tomasi角点检测
代码示例: #include <opencv2/highgui/highgui.hpp> #include <opencv2/imgproc/imgproc.hpp> #inc ...
- B. Factory Repairs--cf627B(线段树)
http://codeforces.com/problemset/problem/627/B 题目大意: n代表天数 ,k代表每一次维修持续的天数,a代表维修过后每天能生产a件产品,b代表维修之前每 ...
- js全局变量和局部变量
<script> var i = 'yuanjianhang'; function myloveName() { alert(i); var i = 'guanxi'; } myloveN ...
- JS学习之DOM节点的关系属性封装、克隆节点、Dom中Style常用的一些属性等小结
JS DOM节点: 在JS DOM中节点的关系被定义为节点的属性: 通常有以下几种节点之间的关系: (这里的关系是所有浏览器都支持的) parentNode 父节点 childNodes ...
- PHP中想过获取系统内置的所有常量吗?
print_r(get_defined_constants(true)); OK!这样就可以了,赶紧去试试吧