springboot开发浅谈 2021/05/11
学习了这么久,本人希望有时间能分享一下,这才写下这篇浅谈,谈谈软件,散散心情。
这是本人的博客园账号,欢迎关注,一起学习。
一开始学习springboot,看了好多网站,搜了好多课程。零零落落学了一些,看得懂一些基础的springboot项目代码
,个人觉得线上课程太乱了,有些讲的全,有些讲的太难,看的想睡觉,个人还是建议看书,效率会比较高。
一开始学习,自己也不懂,学一下这个学一下那个,做了一堆笔记,现在翻看,成效不大。有些笔记太复杂,有些比较简单,但都缺乏一根绳子,将他们连起来,这个时候我就建议自己动手写一个项目,有一定基础的当然可以去研究一个框架,这样效率会非常高,自己动手写接口,学习效率会比看视频和看书高的多。
首次开发经历了太多坑,有一个好的项目经理来做引导或者说有一个比较好的框架来解决前期项目架构的问题,那可真是再好不过了。当然,在熟悉springboot之后,当然要看得懂架构。本人在这里分享一些前期项目开发的经验。

我大部分要分享的,这张图片差不错概括了一些。
首先,在前期开发项目中,如果是工作室开发,前期必然是看重项目的总体设计,说白了,就是demo,老师或者说是甲方,会很重视这个demo,这个demo某种程度上代表了很多东西,如果项目中包含多个模块,例如学校管理系统,要做学校端、老师端、学生端,其实都可以从demo扩展,只要前期做出了一个demo,那么后面熟练了流程,再多的端,也只要分配任务就行,一个人可以写几个端,没有压力。
对于demo,包括的无非是公共组件、项目模块、子系统。开发就照着这个项目模块来就行,最后测试完毕之后再整合,效率会比一般开发高。
至于图片中的前端后端交互,或许有些初学者会觉得开发很难,其实不然,你只要写出几个,其他的基本就是依葫芦画瓢,无非是业务不同而已。前后端的交互,在我看来,核心在于URL,不要小看这个URL,他代表了很多东西,例如如果项目包含多个模块,你可以从url中划分模块,分路径开发,可以说前后端分离,连接的核心便是url。
对于前后端,前端不用说,HTML+CSS+js或者vue或者其他,再包括一些请求技术,如axios和ajax,前端无非就是这些,前端学的好不好一看这些掌握的怎么样、用的怎么样,二看设计。至于后端,那确实门道挺多,对于图片上的这个后端,他不是简单的“后端”,他是经过层层包裹的后端,请求后端,刚接触后端的人可能觉得基础的MVC再加上一些安全框架就OK,其实不然,后端请求,首先他肯定是不能直接调到MVC的,在这张图看来,首先应该是过滤,成百上千的请求中,难免有几个”不怀好意“,非法闯入,像这种请求就应该过滤掉。之后请求就到了权限层,判断你是否有权限进行访问 ,之后再调MVC基本的接口。这样讲,请求某种程度上来讲是“横贯而来”的,但是呢,在它横贯而来的时候,也有东西要伴随他的一生,例如最常见的,log日志记录,从你请求后端的那一刻,他就伴随着你了,包裹住你,直到消失。可能我写的有点词不达意,各位可以看看图片中的后端部分,它用一个正方形形象描述了后端运作的过程,非常形象。
图片下面三个小圆柱体,那代表的是多数据源,这个我们后面再唠。
一个完整的项目,正是许许多多的细节、组件组合起来的,放大了来看,就像是水滴汇聚成河流,河流在汇聚成大海,其实开发并没有那么难,有些时候只不过是眼界的问题,基础打扎实了,或者一直在学习基础的,有时候可以放大眼界看一看,有时往往会发现很多有趣的东西,知识其实在你眼前,只不过你看他的方法太笨,扩展视野,放大眼界,开发、学习自然也就没那么困难,有时甚至还可以闲下来写写博客、散散心情。软件工程的生活,其实也是很有趣的。
springboot开发浅谈 2021/05/11的更多相关文章
- Android开发-浅谈架构(二)
写在前面的话 我记得有一期罗胖的<罗辑思维>中他提到 我们在这个碎片化 充满焦虑的时代该怎么学习--用30%的时间 了解70%该领域的知识然后迅速转移芳草鲜美的地方 像游牧民族那样.原话应 ...
- Python测试开发-浅谈如何自动化生成测试脚本
Python测试开发-浅谈如何自动化生成测试脚本 原创: fin 测试开发社区 前天 阅读文本大概需要 6.66 分钟. 一 .接口列表展示,并选择 在右边,点击选择要关联的接口,区分是否要登录, ...
- Delphi 组件渐进开发浅谈(一)——由简入繁
最近业余时间在写游戏修改器玩,对于Delphi自带的组件总觉得差强人意,需要书写大量冗余代码,如果大量使用第三方组件,在以后的移植和与他人交互时也不是很方便,因此便产生了自己封装组件的想法. 实际上这 ...
- 七年开发浅谈Nginx负载均衡
一 特点 1.1 应用情况 Nginx做为一个强大的Web服务器软件,具有高性能.高并发性和低内存占用的特点.此外,其也能够提供强大的反向代理功能.俄罗斯大约有超过20%的虚拟主机采用Nginx作为反 ...
- .NET项目开发—浅谈面向对象的纵横向关系、多态入口,单元测试(项目小结)
阅读目录: 1.开篇介绍 2.使用委托消除函数串联调用 2.1.使用委托工厂转换两个独立层面的对象 3.多态入口(面向对象继承体系是可被扩展的) 4.多态的受保护方法的单元测试(Protected成员 ...
- .NET项目开发—浅谈面向接口编程、可测试性、单元测试、迭代重构(项目小结)
阅读目录: 1.开篇介绍 2.迭代测试.重构(强制性面向接口编程,要求代码具有可测试性) 2.1.面向接口编程的两个设计误区 2.1.1.接口的依赖倒置 2.1.2.接口对实体的抽象 2.2.迭代单元 ...
- iOS开发--浅谈CocoaAsyncSocket编程
Socket就是一种特殊的文件.它是一个连接了两个用户的文件,任何一个用户向Socket里写数据,另一个用户都能看得到,不管这两个用户分布在世界上相距多么遥远的角落,感觉就像坐在一起传纸条一样. 这么 ...
- linux服务器开发浅谈
[开发前准备] 在进行linux服务器开发之前,必须很清楚地了解所开发的对象需要考虑的相关问题比如:功能架构:提供服务的模块体系结构稳定性:服务器的出core率,内存泄露情况性能:请求与返回的速度与正 ...
- JAVAEE企业级应用开发浅谈第二辑:MVC和三层架构
上海尚学堂警句:一份信心,一份努力,一份成功:十分信心,十分努力,十分成功. Step1.情景概要 Hello,小伙伴们,昨天跟大家分享了JAVA EE 企业级应用开发中大家耳熟能详的概念-三层架构, ...
随机推荐
- Webpack 5 配置手册(从0开始)
针对新手入门搭建项目,Webpack5 配置手册(从0开始) webpack安装顺序 1. `npm init -y`,初始化包管理文件 package.json 2. 新建src源代码目录 3. 新 ...
- Tkinter系列教程01—引言和安装Tk—Python GUI编程
目录 Tkinter教程系列01--引言和安装Tk 引言 什么是Tkinter 安装 Tk 为 Windows 安装 Tk 验证是否安装正确 为 GNU/Linux 安装 Tk 使用 Linux 的包 ...
- 第6 章 : 应用编排与管理:Deployment
应用编排与管理 本节课程要点 需求来源: 用例解读: 操作演示以及架构设计. 需求来源 背景问题 首先,我们来看一下背景问题.如下图所示:如果我们直接管理集群中所有的 Pod,应用 A.B.C 的 P ...
- Kubernetes中Deployment部署故障排除
Kubernetes中Deployment部署故障排除 字符型思维导图 排查pod状态(带标签):kubectl get pods,是否有等待处理的pod? 是?kubectl describe po ...
- [Fundamental of Power Electronics]-PART I-5.不连续导电模式-5.4 总结与重点
5.4 总结与重点 基本的buck,boost以及buck-boost电路的特点总结在表5.2中.其中给出了\(K_{crit}(D)\)的表达式,CCM和DCM下的变换比,以及DCM下二极管导通占空 ...
- python基础(十七):函数
在正式讲述函数之前,先给大家说明一点:编写函数就是"面向过程"的方式,编写类就是"面向对象"的方式.你如果不知道这是啥意思,至少别人提到这2个词你应该知道是在干 ...
- springboot项目整合mybatis
记录创建springboot项目并配置mybatis中间件: 资源准备及版本说明 编程工具:IDEA JDK版本:1.8 Maven版本:Apache Maven 3.6.3 springboot版本 ...
- 数据库MySQL五
测试题复习 子查询案例 DML语句(很重要) 自增长列 为某一个字段设置自增长 修改语句 truncate实际上是DDL语句删除表再新建一个表 DCL事务 ACID 回滚:没发生 提交才更新数据 /* ...
- 对象存储服务MinIO安装部署分布式及Spring Boot项目实现文件上传下载
目录 一.MinIO快速入门 1. MinIO简介 2. CentOS7更换成阿里云镜像 3. 安装 3.1 下载 3.2 运行测试 4. 配置脚本执行文件 4.1 创建配置执行文件 4.2 执行 二 ...
- Spring Boot超简单的测试类demo
1 概述 Spring Boot结合Junit的简单测试类demo,流程是先引入依赖,接着编写测试类测试运行即可. 2 依赖 <dependency> <groupId>org ...