Java EE模式和MVC
Java EE模式
什么是模式?
开发过程中总结出来的约定俗成的“套路”。
Java EE经历的模式
- model1模式
- 技术组成:JSP+JavaBean
- model1的弊端:随着业务的复杂性,导致JSP页面比较混乱
- model2模式
- 技术组成:JSP+Servlet+JavaBean
- model2的优点:使用各个技术擅长的方面
- jsp:擅长页面的显示
- Servlet:擅长Java业务代码
- MVC:web开发的设计模式
- M:Model--模型 JavaBean:封装数据
- V:View--视图 Jsp:单纯进行页面的显示
- C:Controller--控制器 Servlet:获取数据,对数据进行封装,传递数据,指派显示的JSP页面
MVC 其实就是JSP+Servlet+JavaBean,其中Controller就是Servlet
Java EE的三层架构,三层架构是Java EE的架构
服务器开发时,分为三层
- web层:与客户端交互--struts2+springMVC
- service层:复杂业务处理--spring
- dao层:与数据库进行交互--mybatis+hibernate
开发实践时,三层架构通过包的结构体现的。
MVC是三层架构web层的技术:JSP+Servlet+JavaBean
struts2+springMVC
服务器端的三层架构:web层、service层、dao层
- web层的servlet用于接收客户端的请求(表单则进行封装),将请求转发给service层,再转发给dao层,dao查询数据并封装好返回给service层,业务层返回给servlet,servlet将数据存储在request域,交给jsp页面进行显示,最终显示给用户。
创建web工程项目上有红叉,但是项目又可以正常运行,可能是因为你的工作空间有一个和该项目相同的文件存在
总结
EL表达式
从域中取出数据 ${域中存储的数据的name}
${pageContext.request.contextPath}
JSTL 标签(核心库)
- 导入jar包
jstl.jar和standard.jar - JSP中引入方式
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> - 重点语法
- <c:if test="{1==1}">嘻嘻</c:if>
test代表的返回boolean的表达式条件,需要借助EL表达式运算 - <c:forEach items="数组或集合名" var="集合中的某一个元素"></c:forEach>
items代表一个集合或数组,var代表集合中的某一个元素,类似于forEach的用法。
- <c:if test="{1==1}">嘻嘻</c:if>
Java EE三层架构+MVC
- web层:搜集页面数据,封装数据,传递数据,指定响应jsp页面
- service层:逻辑业务代码的编写
- dao层:数据库的访问代码。
Java EE模式和MVC的更多相关文章
- [原创]java WEB学习笔记18:java EE 中的MVC 设计模式(理论)
本博客为原创:综合 尚硅谷(http://www.atguigu.com)的系统教程(深表感谢)和 网络上的现有资源(博客,文档,图书等),资源的出处我会标明 本博客的目的:①总结自己的学习过程,相当 ...
- 最重要的 Java EE 最佳实践
參考:IBM WebSphere 开发人员技术期刊: 最重要的 Java EE 最佳实践 IBM WebSphere 开发人员技术期刊: 最重要的 Java EE 最佳实践 2004 年 IBM® W ...
- Java EE (8) -- Java EE Patterns
Java EE 模式目录由以下三个层组成: – 整合层(4) – 业务层(9) – 表示层(8) 涉及 Java EE 平台代码与其它类型应用程序或遗留系统的集成: 服务激活器 ...
- Java EE企业应用发展
新形式下的企业应用特点企业应用系统从封闭走向开放,由局域网转到互联网,随着涉众面的极大扩展,新的企业应用要求多浏览器支持,国际化支持,全球业务的互联互通.企业需求提升.除了功能性需求,客户对于安全,性 ...
- Java EE设计模式(主要简单介绍工厂模式,适配器模式和模板方法模式)
Java EE设计模式分为三种类型,共23种: 创建型模式:单例模式.抽象工厂模式.建造者模式.工厂模式.原型模式. 结构型模式:适配器模式.桥接模式.装饰模式.组合模式.外观模式.享元模式.代理模式 ...
- java web基础之mvc模式设计(一)--使用httpservlet实现mvc分层设计,DAO层使用的是dbutils实现与数据库的链接
一:1.最终的实现效果图: 2.案例的目录结构: 3.案例中使用到的jar包: 二:案例的链接数据库的层次结构关系:数据库是:mysql ,数据库名字:dsm,表格名字:customers 数据库表格 ...
- 轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)
轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Jav ...
- 用一天的时间学习Java EE中的SSH框架
首先说明一下,本人目前主要从事.NET领域的工作,但对于C++.Java.OC等语言也略知一二,周末闲来无事,特花费一天的时间学习了一下Java中的SSH框架,希望把学习过程中的心得体会与园友们进行分 ...
- Java 新特性(5) - Java EE 5 新特性
Java EE 5 由 Java Community Process 通过 Java Specification Request 244 发布,这个 “总纲” JSR 指出了详细描述 Java EE ...
随机推荐
- js 和jquery
1. js 全称 javascript 是 web客户端 运行的 解释性语言.. 2. jquery 只不过是 js 封装 简化了 ajax 和 dhtml 的 一款js 框架而已. 简单来说 Jqu ...
- rownum的用法oracle
SELECT * FROM T WHERE ROWNUM=1 可以查询出来数据, 而SELECT * FROM T WHERE ROWNUM=2不可以查询出来数据. in the case of wh ...
- vue中操作Dom节点的方法
1.vue中ref操作dom节点 <template> <div id="app"> <div </div> <button @cl ...
- ruby类对象和对象
class Box def initialize(w,h) @width,@height=w,h end def getArea puts "class of self #{self.cla ...
- 002-Visio绘制时序图
一.概述 1.1.什么时候使用 当编码的时候,知道有的用例的业务逻辑按照比较确定的时间先后顺序进行展开.这时候,我们就需要知道我们设计的系统中的不同类之间传递消息(可以认为是不同对象函数间的调用)要按 ...
- eclipse调试debug时出现source not found
eclipse调试debug时出现source not found 在代码中设置了断点,程序调试过程中可以继续运行使用断点,但是看不见程序走到哪了,debug页面出现source not found, ...
- 测开之路七十四:python处理kafka
kafka-python地址:https://github.com/dpkp/kafka-python 安装kafka-python:pip install kafka-python 接收消息 fro ...
- Jenkins+Gitlab+自动化测试配置持续集成
Jenkins安装在win7上 GitLab安装在docker上 需求:本地提交自动化测试代码在gitlab上后,jenkins自动构建,拉下新提交的自动化代码,并且运行 参考的链接: https:/ ...
- mysql使用localhost可以访问,使用ip地址无法访问
本地安装的mysql服务,使用localhost可以连接,ip地址发无法连接: 解决办法: 进入mysql命令界面,输入select host,user from mysql.user; host字段 ...
- mybatis输出映射总结
使用resultType作为输出映射 只有查询出来的列名和pojo中的属性名一致时,才会映射成功, 如果不一致,可以使用resultMap最为输出类型 不管是输出单个对象还是列表(list中包括poj ...