JavaWeb三层结构---课设02
收获总结
1三层架构模式
区分层次的目的即为了“高内聚,低耦合”的思想
分层介绍:
Javaweb设计分为三层:数据访问层,业务逻辑层和表示层。
数据访问层:只提供对基本数据的访问,不涉及任何的业务逻辑;对数据库进行操作
业务逻辑层:负责业务逻辑,通过获取表示层传来的用户指令,执行业务逻辑;需要访问数据库时,交给数据访问层处理,处理完成后,必要时将结果返回到表示层。
具体介绍:
1 数据持久层:数据持久层由Java对象持久化类和数据访问对象(DAO)组成。每个数据库表都对应着一个持久化对象,
2 业务逻辑层:调用数据访问dao层中的方法,实现对数据的操作
3 表示层:表示层结合JSP,TagLib库处理显示功能。
·····································································
由于刚开始进行开发,老师虽然给了几个小项目的源码,但是不知道各个层之间的调用关系等等,也是一筹莫展,没办法,,,只能硬着头皮看,上网查资料,通过努力终于明白了一点,通过这次实际操作进一步加强了自己的理解。
一般的JavaWeb项目都有不同的包,但是之间有一定的联系。下面,以“用户注册登录系统”为例,进行简单介绍流程。
1 需求分析
2 数据库设计
3 代码实现
!实体层(Domain包):就是根据数据库设计中不同的表进行建立的,跟人理解一般:一个表对应一个实体。
!!实体访问层(Dao包):对实体数据库进行操作:连接数据库,操作数据库,关闭数据库。
!!!Util包:实现对公用工具类进行设计,就是通用的一些方法类,就像是String转Date类呀,相似的之类
!!!!业务逻辑层(Service包):将数据访问层在进行封装
作用:从dao层获取数据,提供表示层显示;从表示层获取用户和指令,执行业务逻辑;从表示层获取用户和指令,通过数据访问层写入数据
!!!!!表示层(Web)servlet+jsp: Servlet包:其主要功能在于交互式地浏览和修改数据,生成动态Web内容。JSP 前端页面表示。
············································
设计方法可以分为自顶向下和自底向上两种方法,自己比较喜欢自底向上的设计方法。
一般调用方法:
用户登陆网站,通过展示的页面进行操作
JSP(HTML)--->Servlet---->Servive--->Dao---->Service--->Servlet--->JSP
Servlet--->Service-->Dao--->Service-->Servlet-->JSP
总之,不管如何,网站必须通过网页来给用户显示出来,网页上不同的超链接,用户通过点击超链接,转到后台进行相关的处理,对数据进行处理,最后再将处理后的数据进行前端显示出来,这样用户就能得到自己想要看到的效果。知道这个逻辑,我们的设计就能更加容易一点。
JavaWeb三层结构---课设02的更多相关文章
- JavaWEB 常用开发模式MVC+三层结构
MVC开发模式: M: Model -- JavaBean C: Controler -- Servlet V: View --- JSP 不会在word里面画画,所以就直接截了 老 ...
- mvc与三层结构
http://www.cnblogs.com/zhhh/archive/2011/06/10/2077519.html 又看到有人在问三层架构和MVC的关系,感觉这种问题有点教条化了.因为它们都在逻辑 ...
- C语言课设心得分享(一)
今儿上完课设,老师果然讲的比较少,周四还不用去,看来还是学生自己折腾.我在做课设的过程中,攒了一些心得/体会,希望能和大家分享分享,也希望能一起探讨探讨.如果是我能回答的问题,我很乐意能够提供帮助. ...
- mvc与三层结构终极区别
http://blog.csdn.net/csh624366188/article/details/7183872 http://www.cnblogs.com/zhhh/archive/2011/0 ...
- MySQL三层结构、用户权限、索引设计原则
一.守护进程是什么? Linux Daemon(守护进程)是运行在后台的一种特殊进程.它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件.它不需要用户输入就能运行而且提供某种服务,不是对 ...
- Javaweb学习笔记——(十三)——————JSTL、JSTL核心标签库、自定义标签、有标签体的标签、带有属性的标签、MVC、Javaweb三层框架
JSTLApache提供的标签库 jar包:jstl-1.2.jar,如果传MyEclipse,他会在我们导入jar包,无需自己导入,如果没有使用MyEclipse那么需要自行导入.--------- ...
- 计算机网络课设之基于UDP协议的简易聊天机器人
前言:2017年6月份计算机网络的课设任务,在同学的帮助和自学下基本搞懂了,基于UDP协议的基本聊天的实现方法.实现起来很简单,原理也很简单,主要是由于老师必须要求使用C语言来写,所以特别麻烦,而且C ...
- Atitit.软件开发的三层结构isv金字塔模型
Atitit.软件开发的三层结构isv金字塔模型 第一层,Implements 层,着重与功能的实现.. 第二次,spec层,理论层,设计规范,接口,等.流程.方法论 顶层,val层,价值观层,原则, ...
- C#-WebForm-WebForm开发基础、如何给控件注册事件?——事件委托写法、http无状态性、三层结构
(小知识 - xml:可扩展的标记语言 html:超文本标记语言) 一.创建WebForm:新建→网站 此时文件夹中只有一个 config 文件,打开后 二.在项目下右键添加新项 在设计页面中打开 从 ...
随机推荐
- js 复制内容到剪切板
function oCopy(objname){//只兼容IE var obj = $(objname); obj.select(); js=obj.createTextRange(); js.exe ...
- 背景透明IE和rgba
opacity:0.5; filter:Alpha(opacity=40); //IE8以下 当我们设置opacity透明时,opacity后代元素会随着一起具有透明性,所以我们Opacity中的文字 ...
- 翻译的很好的一篇android mediaplayer
MediaPlayer类可用于控制音频/视频文件或流的播放.关于如何使用这个类的方法还可以阅读VideoView类的文档. 1.状态图对播放音频/视频文件和流的控制是通过一个状态机来管理的.下图显示一 ...
- fsck害了我很久了,必须关掉,因为他每次打卡都要推迟数十分钟。
http://crashmag.net/disable-filesystem-check-fsck-at-boot-time Disable the filesystem check (fsck) a ...
- strace 分析 跟踪 进程错误
strace是什么? 按照strace官网的描述, strace是一个可用于诊断.调试和教学的Linux用户空间跟踪器.我们用它来监控用户空间进程和内核的交互,比如系统调用.信号传递.进程状态变更等. ...
- Python+Selenium+PhantomJS下载JavaScript异步加载网页
# -*- coding: utf-8 -*- from selenium import webdriver import selenium.webdriver.support.ui as ui fr ...
- ubuntu中mysql修改编码utf8
摘要:Ubuntu Server 服务器下使用apt-get 命令安装的mysql,默认不是utf8.在这里记录一下如何将编码修改成utf8. 办法解决: 1.查看mysql编码 show varia ...
- eclipse java生成exe
eclipse导出jar文件再将它转换成exe可执行文件详解 关键字: 欢迎光临 此文章是为了帮助刚接触j2se或不懂如何打包jar文件的人而着笔,同时也是让自己的知识以文章的形式保存起来. 一.导出 ...
- JAVA中浅复制与深复制 - coolmist - ITeye技术网站
body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...
- js动画(三)
咳咳咳咳,感冒了感冒了,鼻塞,蓝瘦啊!嘴巴也开裂,哎,心疼自己.想到这是第三只唇膏了!只怪,放荡不倔爱自由, 行驶在冷风路上么,北风那个吹啊吹啊吹啊,好了,发神经发完了,接下来进入正题,严肃脸.(字数 ...