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,因为前两天一直都在学习这其中的代码,就不再赘述了。
三、代码测试
代码编写完毕,做一个测试。
①测试一
用户名和密码在数据表中确实存在,故登录成功。
②测试二
用户名密码不正确,故登录失败。
以上便是对于三层架构的初步学习,以及一个简单登录案例的编写。
先对其有一个初步的印象,随着后面的学习,再将三层架构不断地完善。