网站首页 > 技术文章 正文
今天是刘小爱自学Java的第74天。
感谢你的观看,谢谢你。
话不多说,开始今天的学习:
Java又常被称之为后台开发。
什么叫后台呢?除了后台还有什么前台、前端后端……
这些概念一大堆,还容易弄混。
以一个三层架构的知识点来引出我对于后台的理解。
理解肯定是很浅薄甚至是有问题的,但只能说以我当前的知识水平,这样去理解更便于记忆。
随着今后的学习过程中不断地将概念完善。
一、三层架构
Java后台就相当于一个Java服务器,它的作用在于将数据库和前端(或者说浏览器或者说网页)连接起来了。
如何连接起来的?也就是三层架构,画图说明:
①Web层
也叫展示层,是和前端打交道的。
至于前端到底指的什么,目前还不是太清楚。
我所理解的前端就是和浏览器挂钩的,我此时也只能这么理解,至于什么http,css我也暂时还不懂。
不过马上也要进入前端的学习了。
②Service层
又叫业务层,用来处理具体的业务逻辑。
从数据库中查到数据,但有时需要对其做一定的处理。
这些业务逻辑的编写就在业务层中。
③Dao层
又叫数据持久层,全称就是Data access object,数据访问对象,也就是和数据库打交道的。
这段时间一直在学习的Jdbc就是这一层里的代码。
所以整个流程是:从数据库中查询到数据,然后经过具体业务逻辑处理,再返回给Web层经过渲染成为网页,最后能给用户直接观看。
其中编写的代码存放的包也有一个规范:
①beans包
也就是一个JavaBean,说白了就是对应数据库中某个表的一个类,需要操作多少表就对应多少个类。
②dao包
也就是上述的数据持久层。
③service包
也就是上述的业务逻辑层。
④utils包
就是存放工具类的包,就比如这段时间自定义的一个Jdbc工具类JdbcUtil。
⑤web包
也就是上述的展示层。
二、编写一个登入案例
关于这三层架构代码的编写顺序,本来我是觉得从Dao层开始更好理解的。
先查询数据,再经过业务处理,最后返回给Web层。
这不是很好么?
但是呢,又有人说从Web开始更符合实际开发情况,emm……行吧,就从web层开始。
其实从Web层开始或者Dao层开始都可以,别从Service层开始就行。
1Web层
①模拟登录页面
因为还没有学前端的知识,所以用Scanner类来模拟一个登录页面。
②调用服务层实现登录操作
服务层中有一个方法叫login():
参数即①中的用户名和密码.。
返回值即从数据库中查询到的数据。
③判断结果
如果返回值不存在,也就是说用户输入的用户名或者密码在数据库中查询不到。
那么提示用户:用户名或者密码不正确。
2Service层
因为登录案例这个例子非常的简单,没有具体的业务逻辑,只需要查询数据库就好了。
所以代码编写也非常地简单,直接调用Dao层查询数据库的方法即可,其中方法要见名知意:
queryUserByNameAndPwd()也就是根据name和pwd来查询用户。
3Dao层
根据web层中输入的用户名和密码,从数据库中查询出对应的数据。
也就是Jdbc代码的编写,这里使用的是JdbcTemplate,因为前两天一直都在学习这其中的代码,就不再赘述了。
三、代码测试
代码编写完毕,做一个测试。
①测试一
用户名和密码在数据表中确实存在,故登录成功。
②测试二
用户名密码不正确,故登录失败。
以上便是对于三层架构的初步学习,以及一个简单登录案例的编写。
先对其有一个初步的印象,随着后面的学习,再将三层架构不断地完善。
来源:刘小爱
猜你喜欢
- 2024-11-24 测试开发基础,教你做一个完整功能的Web平台之登录认证
- 2024-11-24 iframe嵌入页面实现免登录
- 2024-11-24 带你掌握springboot集成SpringSecurity认证授权
- 2024-11-24 .NET云原生应用实践(五):使用Blazor WebAssembly实现前端页面
- 2024-11-24 我觉得再没有登录页卷的啦,简单需求非要惊艳效果
- 2024-11-24 一步步使用SpringBoot实现登录和用户管理功能源码分享
- 2024-11-24 登录页漂亮不漂亮,来走两步。
- 2024-11-24 再来一波登录页,就这个样被征服了。
- 2024-11-24 自定义 WordPress 登录以回复链接及文字
- 2024-11-24 Request之登录系统跳转应用以及原理详解「JavaWeb」
你 发表评论:
欢迎- 07-10Oracle 与 Google Cloud 携手大幅扩展多云服务
- 07-10分享收藏的 oracle 11.2.0.4各平台的下载地址
- 07-10Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- 07-10Oracle Database@Azure 推进到南美等新区域并增加了新服务
- 07-10Oracle宣布推出 Oracle Database@AWS 的有限预览版
- 07-10Oracle与Nextcloud合作,推出主权云上的安全协作平台
- 07-10NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 07-10对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 601℃几个Oracle空值处理函数 oracle处理null值的函数
- 593℃Oracle分析函数之Lag和Lead()使用
- 581℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 578℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 573℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 566℃【数据统计分析】详解Oracle分组函数之CUBE
- 552℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 547℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- Oracle 与 Google Cloud 携手大幅扩展多云服务
- 分享收藏的 oracle 11.2.0.4各平台的下载地址
- Oracle 和 Microsoft 推出 Oracle Exadata 数据库服务
- Oracle Database@Azure 推进到南美等新区域并增加了新服务
- Oracle宣布推出 Oracle Database@AWS 的有限预览版
- Oracle与Nextcloud合作,推出主权云上的安全协作平台
- NodeRED魔改版连接MsSql、PostgreSQL、MySQL、OracleDB存储无忧
- 对于企业数据云备份,“多备份”承诺的是成本更低,管理更高效#36氪开放日深圳站#
- 解读丨《归档文件整理规则》— 电子文件元数据存储
- Data Guard跳归档恢复的实践(dataguard failover)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (57)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)