1.开发架构的形式:

一般我们在学习或者实际开发中,所了解的开发架构都是基于两种形式:C/S架构(客户端/服务器)和B/S架构(浏览器/服务器).而在JavaEE的开发中,几乎全部都是基于B/S架构开发的.而在B/S架构中,系统和标准的三层架构包括:表现层,业务层,持久层.也就是我们刚开始接触Java Web项目所了解的web层,service层和dao层.

2.三层架构的概述:
 表现层: 
 也就是我们刚接触web项目常说的web层.它负责接受客户端请求,向客户端响应结果,通常客户端使用http协议请求web层, web层需要接受http请求并完成http响应.(在这一层我们主要是接受前台所传来的数据,并对数据进行封装使用.)
 而表现层又包括展示层和控制层:展示层负责结果的展示,控制层负责接受请求.(展示和控制属于MVC的设计模式)
 表现层依赖业务层,接受到客户端请求一般会调用业务层(也就是service层)进行业务处理,并将处理结果响应给客户端.
 表现层的设计一般都使用MVC模型.(MVC是一种框架模式,它是一种设计模式,当然也有很多人把它将其和框架混为一谈,框架和设计模式是有区别的,具体的区别大家可以去相关的论坛了解下.)

业务层:
 也就是我们说的service层.它负责业务逻辑的处理,和web项目的需求是紧密相关的,web层依赖业务层,但业务层不依赖web 层.(也就是我们会在web层调用service来实现具体的功能,这个调用关系就使得web层依赖service层.)
业务层在业务处理时可能会依赖持久层,如果要对数据持久化需要保证事务的一致性.也就是说,我们需要在业务层控制事务.(这一层主要是处理业务逻辑, 管理事务,调用dao层进行数据库交互.)

持久层:
也就是我们常说的dao层.负责数据的持久化,包括数据层(也就是数据库)和数据访问层,数据库是对数据持久化的载体, 数据访问层是业务层和持久层交互的接口,业务层需要通过数据访问层将数据持久化到数据库中.总的来说,持久层就是和数据 库进行交互,对数据进行CRUD(增删改查)操作的.(这一层主要是进行数据库的交互,也就是增删改查,并将结果的数据持久化到数据库保存.)
=========================================================================
大家可以了解下这里面涉及到的MVC设计模式,持久化,以及每一层所用到的技术等等,这样在学习框架的过程中会更容易理解框架的思想和使用了!还有就是动态代理,工厂模式等,这些都是和SSH(Struts2+Spring+Hibernate)框架的底层实现息息相关的.

Java的开发架构---浅谈相关推荐

  1. 【JAVA企业级开发】浅谈关于在WEB大前端已然降临的时代中,你是否还是在学习jsp、freemarker、velocity、themleaf等模板引擎么?

    这里写目录标题 一级目录 二级目录 三级目录 一在java领域,表现层技术主要有四种:`jsp.freemarker.velocity,themleaf` 1jsp是大家最熟悉的技术 2velocit ...

  2. Android应用安全开发之浅谈加密算法的坑

    <Android应用安全开发之浅谈加密算法的坑> 作者:阿里移动安全@伊樵,@舟海 阿里聚安全,一站式解决应用开发安全问题     Android开发中,难免会遇到需要加解密一些数据内容存 ...

  3. Android安全开发之浅谈密钥硬编码

    Android安全开发之浅谈密钥硬编码 作者:伊樵.呆狐@阿里聚安全 1 简介 在阿里聚安全的漏洞扫描器中和人工APP安全审计中,经常发现有开发者将密钥硬编码在Java代码.文件中,这样做会引起很大风 ...

  4. 大型项目前端架构浅谈(8000字原创首发)

    大型项目前端架构浅谈 目录: 1.综合 1.1.使用场景 1.2.核心思想 1.3.切入角度 1.4.其他 2.基础层设计 2.1.自建Gitlab 2.2.版本管理 2.3.自动编译发布Jenkin ...

  5. 大型直播平台应用架构浅谈

    大型直播平台应用架构浅谈 进入直播领域有段时间了. 跟大多数同学一样,刚接触直播这个领域都非常好奇这个领域的宏观架构大概是什么样子的. 这里根据自己的这段时间学习,粗浅总结下分享给感兴趣的小伙伴扫扫盲 ...

  6. 跨平台开发解决方案浅谈

    跨平台开发解决方案浅谈 前言 本文所讨论技术都是基于大前端生态下的 本文所指跨平台概念无特殊说明时泛指跨安卓和ios 用前端工程化技术开发出app也是本文所讲重点 作为用户来说,当然希望使用App的时 ...

  7. 【技术分享】Android应用安全开发之浅谈加密算法的坑

    <Android应用安全开发之浅谈加密算法的坑> 作者:阿里移动安全@伊樵,@舟海 阿里聚安全,一站式解决应用开发安全问题    Android开发中,难免会遇到需要加解密一些数据内容存到 ...

  8. Android安全开发之浅谈加密算法的坑

    Android安全开发之浅谈加密算法的坑 作者:伊樵.舟海@阿里聚安全 Android开发中,难免会遇到需要加解密一些数据内容存到本地文件.或者通过网络传输到其他服务器和设备的问题,但并不是使用了加密 ...

  9. Android应用安全开发之浅谈密钥硬编码

    Android应用安全开发之浅谈密钥硬编码 作者:伊樵.呆狐@阿里聚安全 1 简介 在阿里聚安全的漏洞扫描器中和人工APP安全审计中,经常发现有开发者将密钥硬编码在Java代码.文件中,这样做会引起很 ...

最新文章

  1. python构造和析构_python魔法方法 构造和析构实例讲解
  2. 【Linux入门基础知识】Linux 脚本编写基础
  3. mysql 架构名_MySQL 逻辑体系架构
  4. POSIX规范-unbuffered I/O (文件I/O)
  5. 网络编程 之 有用的 socket
  6. php转型mysql dba_MySQL_DBA整理(转)
  7. (Markdown图片居中)CSDN 验证通过
  8. 1. 路过面了个试就拿到2个offer。是运气吗?
  9. 6 大主流 Web 框架优缺点对比
  10. 再谈删除数据的SQL语句
  11. sqlplus连接Oracle的正确语法
  12. 上新:视频加密功能增加防录屏(随机水印)功能
  13. 如何规避rm-rf导致的服务器删除问题
  14. 【008】基于vue.js的仿网易云web端(含源码答辩PPT、接口文档、运行教程)
  15. java 生成水印_Java实现图片生成水印
  16. phyton方面相关书籍
  17. 关于java中method.invoked 传入类型不一样的问题
  18. 女神青涩时纤毫毕现,腾讯 AI 模型 GFPGAN 火上 GitHub 热榜第一,Demo 在线可玩
  19. Ubuntu16.04下fctix无法切换中英文输入法
  20. QT——连接USB摄像头

热门文章

  1. 【产业互联网周报】京东数科冲击科创板,估值近2000亿元;集成电路研发商昆腾微拟科创板IPO;中芯国际科创板募资或达450亿...
  2. scJoint integrates atlas-scale single-cell RNA-seq and ATAC-seq data with transfer learning
  3. SISO/MIMO信道估计(channel estimation)原理详细图解
  4. 基于网易云音乐API的微信小程序——网愈芸音乐
  5. 如何删除已被谷歌收录的404错误页面
  6. 前端React下载文件到浏览器
  7. php xmp,xmp1和2模式区别有哪些
  8. 【调剂】北京语言大学 SAIT 智能语音习得技术实验室
  9. 字符串为null 和 字符串长度为0
  10. ibatis中resultMap和resultClass的区别 以及parameterClass 的取值