发表于: 2021-01-12 23:30:31
1 1254
今天完成的事情:
了解B\S,C\S架构的特点
为什么要进行项目分层,项目分层的好处
用自己的话梳理springmvc,对之间不懂,忘记的知识点(spring和mybatis整合)进行回顾和重现学习
明天计划的事情:
直接动手开始做了
项目分层,使用mybatis generator代码生成。
写好单元测试,和Service。每一张表的增删改查创建好。
通过梳理mvc的思想,发现自己不懂在Controller层,用的是StudentService,在单元测试当中用的是StudentServiceImpl。这两者之间的区别是什么?我当时学过的,现在忘记了。说明自己还是没有明白它们之间关系和规律。
还有为什么dao层和service层要写接口?
下面写了答案
然后怎么通过mapper代理的也忘了差不多了,转回去复习看了一遍
B\S,C\S架构的特点:
注意到以下几个点:
1.能有效地保护数据平台和管理访问权限,服务器数据库也很安全。
2.在数据库服务器上不一定使用WINDOWS系统(可以使用Linux系统),选择更多,成本更少。
3.如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。
4.在JAVA这样的跨平台语言出现之后,B/S架构管理软件更是方便、快捷、高效。
5.数据存放在数据库服务器,客户端并不存放任何业务数据或者数据库连接信息,所以数据比较安全。
6.随着服务器负载的增加,可以平滑地增加服务器的个数并建立集群服务器系统,然后在各个服务器之间做负载均衡。
7.所有的用户都是通过一个JDBC连接缓冲池连接到数据库的,用户并不保持对数据库的连接,用户数基本上是无限的。
8.软件重用性强,成本低廉。
9.B\S架构主要的逻辑事务处理还是要靠服务器,所以服务器的负担很重。
10.B/S架构相应速度慢,主要的重任在数据库服务器身上,由于B/S架构的无限扩展性,当用户激增,访问量庞大时,服务器相应速度慢,服务器存在瘫痪的危险。(这也就是为什么要使用索引,还要学习一些优化数据库的功能的必要性,一切都是为了用户体验~~~)
前后端分离与前后端不分离的区别:
前后端不分离(之前做个直接返回json页面应该就是前后端不分离)
前后端分离(老大的说法是B\S架构是API,API也就是接口,只要通过这个API连接就可以调用当中的功能,而不去管它的具体实现。其实这和我们用户用各种网页功能也很像,只管使用,不需要知道它是具体怎么实现(前端来决定网页页面,后端处理各种数据))
在前后端分离的应用模式中,我们通常将后端开发的每个视图都称为一个接口,或者API,前端通过访问接口来对数据进行增删改查。
WEB开发的了解
这些都没碰到过,只是大概懵懂一点。
第二层 前后端分离图
数据放在云端,才可以做到多端统一,不需要本地存储.
云端的电脑就叫做服务器,业务层和持久层,就是在云端.
这也是前后端区分的重要区别,不是以语言来区分前端和后端,而是看程序是运行在用户端,还是运行在云端.在用户端的,就是前端,在云端的,就是后端.
CS架构,其实指的就是桌面端,就是PC的应用软件,一般都是用C来写(还是C++或C#?我对C这套体系不够熟悉,对桌面端接触的不多.)
BS架构,指的就是网页端.过去的网页端,原生JS+JQuery是主流,网页又分成两种类型,一种叫静态网页,一种叫动态网页.
静态网页就是只有Html(不考虑JS),内容是在Html里写死的.一般都用于不经常修改的部分,比如说关于我们,公司介绍之类的,每一个网页都有自己的独有设计,不好统一,也不经常修改,没有必要做成动态.
动态网页就是指,页面的框架一致,但是内空不同,比如说知乎的个人主页,结构是相似的,但是不同的人看到的数据不一样.这就是通过前端传过来的用户ID,去后端取数据的过程.
后端是指运行在云端的代码.
前端是指运行在用户端的代码.
前台是指外部用户使用的系统.
后台是指公司内部使用的系统.
在这里看了一遍阮一峰谈MVC模式(参考网址:http://www.ruanyifeng.com/blog/2007/11/mvc.html)
这里梳理一下自己的想法:
Model(模型):目的和数据库进行交互,实现增删改查。
View(视图):对用户进行展示页面,数据。
Controller(控制):根据用户的输入的数据,来对数据库中的数据进行调用,进行相应的操作,返回结果。
因为是每一层都想外层提供接口(这就是接口的意义所在),所以每一层内部的变化不影响其他层。同时三层又联系十分紧密,控制层是数据交互层,同时提供数据的展示和对数据库进行增删改查。
在梳理这些大概念的同时,发现自己对数据库交互,spring和mybatis之间怎么整合忘记了。
是为了让层与层之间不过度联系,不然你修改了dao中的代码,如果service引用了dao中的类,那么也要改变service里面的代码,这样动了一处代码,所有地方的代码都要随之修改,修改起来就会很麻烦。
通过这个:
评论