Java Dao层的作用
Dao层叫数据访问层,属于一种比较底层,比较基础的操作,可以具体到对于某个表或某个实体的增删改查,其Dao层的作用是对数据库的访问进行封装,从而不涉及业务,实现解耦。
调用流程
JSP页面 —— Action —— Service —— DAO —— (Hibernate框架) —— 数据库
扩展资料
MVC 模式
MVC 模式是一种软件框架模式,被广泛应用在 JavaEE 项目的开发中。MVC 模式很好理解,但也十分重要,在今后的 Web 应用开发中,我们都离不开它。
之前,我们学习过了 Servlet、JSP,看起来它们都可以独立完成许多功能,却各有特点,MVC 就提供了一种扬长避短,双剑合璧的方法。
1.什么是 MVC
MVC 即模型(Model) 、视图(View)、控制器(Controller)。
模型(Model)
模型是用于处理数据逻辑的部分。
所谓数据逻辑,也就是数据的映射以及对数据的增删改查,Bean、DAO(data access object,数据访问对象)等都属于模型部分。
视图(View)
视图负责数据与其它信息的显示,也就是给用户看到的页面。
html、jsp 等页面都可以作为视图。
控制器(controller)
控制器是模型与视图之间的桥梁,控制着数据与用户的交互。
控制器通常负责从视图读取数据,处理用户输入,并向模型发送数据,也可以从模型中读取数据,再发送给视图,由视图显示。
前面学到的 Servlet 便可以用作控制器。
2.为什么要用 MVC
窃以为,MVC 模式有以下三大好处。
看着舒服
前面学习 Servlet 和 JSP 的时候,我们发现这俩东西都是功能和显示混着来,可读性很差,而使用 MVC,Servlet 里都是逻辑代码,JSP 都是显示代码,一目了然。
写着容易
MVC 模式有利于人员的分工合作,不同的开发人员可各自发挥专长,同时开发不同的部分。
改着省心
MVC 可以在一个时间内专门关注一个方面,从而让应用程序的测试与迭代更加方便。所以,复杂的应用程序大都会选择使用 MVC 模式。
上述好处,用一句行话来说,就叫 “高内聚 低耦合”。
3.设计模式与框架模式
在搜集资料的时候发现很多地方把 MVC 称为一种 “设计模式”,一开始我觉得没什么毛病,从字面上完全说地通,但是仔细一想,“设计模式” 这个词是一个术语,是指工厂模式、单例模式这些东西,是不能乱用的。而 MVC,应该被称作是 “框架模式”。
那么两者有什么区别呢?
设计模式,是针对 “代码” 的,如同修筑房屋时砖瓦的层叠方式,是软件开发的基石。
框架模式,是针对 “框架” 的,是面向某些应用场景的可复用的方案,如同医院、商场等不同功能建筑的布局,是比设计模式更宏观一些的概念。
在今后的文章中,我将与大家共同学习当前的主流框架。
4.MVC 实践
在 JavaEE 中,最为经典的 MVC 模式即
Bean(Model) + JSP(View) + Servlet(Controller)
假如有一个需求:实现编辑网页上的信息并与数据库同步
在实现上,可以分为以下几步:
用 Bean 来映射数据表,并编写好 DAO
用负责查询的 Servlet 调用 DAO 查询需要编辑的内容并发送给用于编辑的 jsp 页面
把编辑页面进行修改后的值,再提交给负责更新的 Servlet 调用 DAO 更新数据库
使用另一个负责查询的 Servlet,把查询出来的更新过的内容发送给负责显示的 JSP
推荐教程:《Java教程》
以上是Java Dao层的作用的详细内容。更多信息请关注PHP中文网其他相关文章!

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于结构化数据处理开源库SPL的相关问题,下面就一起来看一下java下理想的结构化数据处理类库,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于PriorityQueue优先级队列的相关知识,Java集合框架中提供了PriorityQueue和PriorityBlockingQueue两种类型的优先级队列,PriorityQueue是线程不安全的,PriorityBlockingQueue是线程安全的,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于java锁的相关问题,包括了独占锁、悲观锁、乐观锁、共享锁等等内容,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于多线程的相关问题,包括了线程安装、线程加锁与线程不安全的原因、线程安全的标准类等等内容,希望对大家有帮助。

本篇文章给大家带来了关于Java的相关知识,其中主要介绍了关于关键字中this和super的相关问题,以及他们的一些区别,下面一起来看一下,希望对大家有帮助。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于枚举的相关问题,包括了枚举的基本操作、集合类对枚举的支持等等内容,下面一起来看一下,希望对大家有帮助。

封装是一种信息隐藏技术,是指一种将抽象性函式接口的实现细节部分包装、隐藏起来的方法;封装可以被认为是一个保护屏障,防止指定类的代码和数据被外部类定义的代码随机访问。封装可以通过关键字private,protected和public实现。

本篇文章给大家带来了关于java的相关知识,其中主要介绍了关于设计模式的相关问题,主要将装饰器模式的相关内容,指在不改变现有对象结构的情况下,动态地给该对象增加一些职责的模式,希望对大家有帮助。


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

VSCode Windows 64位 下载
微软推出的免费、功能强大的一款IDE编辑器

Dreamweaver Mac版
视觉化网页开发工具

SublimeText3 英文版
推荐:为Win版本,支持代码提示!

记事本++7.3.1
好用且免费的代码编辑器