SpringBoot企业云端开发实践

发布时间:2026/7/23 18:48:24
SpringBoot企业云端开发实践 课程介绍Java EE企业级框架SpringBoot MyBatisPlusWeb前端核心框架Vue ElementUI架构对比1、C/S架构主要特点是交互性强具有安全访问模式网络流量低响应速度快因为客户端负责大多数业务逻辑和UI演示所以也被称为胖客户端C/S结构的软件需要针对不同的操作系统开发不同版本的软件。2、随着互联网的兴起CS架构不适合Web最大的原因是Web应用程序的修改和升级非常迅速而CS架构需要每个客户端逐个升级桌面App因此Browser/Server模式开始流行简称BS架构。3、B/S架构的主要特点是分散性高、维护方便、开发简单、共享性高、总拥有成本低。Maven的作用1、项目构建提供标准的跨平台的自动化构建 项目的方式2、依赖管理方便快捷的管理项目以来的资源jar包避免资源间的版本冲突问题。3、统一开发结构提供标准的统一的项目开发结构。即构建的Springboot项目格式包括src/main/java/、resources 以及pom.xml配置等等。总结使用 Maven坐标可以简化开发很多方法都可以通过引入Maven坐标的形式然后采用注解的方式进行项目的开发。SpringBoot快速上手特点1、遵循“约定优于配置”的原则只需要很少的配置或使用默认的配置。2、能够使用内嵌的Tomcat、Jetty服务器不需要部署war文件。即不需要像Javaweb项目那样需要自己每一个项目都部署一个tomcat服务器可以自动运行项目。3、提供定制化的启动器Starters简化Maven配置开箱即用。采用Maven坐标的形式。4、纯Java配置没有代码生成也不需要XML配置。5、提供了生产级的服务监控方案如安全监控、应用监控、健康检测等。Web开发基础Web入门SpringBoot将传统Web开发的mvc、json、tomcat等框架整合提供Spring-boot-starter-web组件简化了Web应用配置。即不需要繁琐的配置只要创建的时候选择SpringBoot项目然后配置好自己下载的Maven即可。Maven配置如下控制器1、Spring Boot提供了Controller和RestController两种注解来标识此类负责接收和处理HTTP请求。2、如果请求的是页面和数据使用Controller注解即可如果只是请求数据则可以使用RestController注解。路由映射RequestMapping注解主要负责URL的路由映射。它可以添加在Controller类或者具体的方法上。但是一般不这样使用使用更多的方式是PostMapping(“/”)、GetMapping(“/”)等这种方式直接确定了请求方式。通常都是类上写一个然后不同的方法上再写一个。参数传递RequestParam将请求参数绑定到控制器的方法参数上接收的参数来自HTTP请求体或请求url的QueryString当请求的参数名称与Controller的业务方法参数名称一致时,RequestParam可以省略。即在定义的方法中加入参数如GetMapping(/hello)publicStringhelloStringname{returnhello worldname;}如果像下面这种情况参数的名称与方法里面的名称不一致那么就必须加上RequestParam并且浏览器中的nicknameXXX是必须加上的。RequestBody接收的参数是来自requestBody中即请求体。一般用于处理非 Content-Type: application/x-www-form-urlencoded编码格式的数据比如application/json、application/xml等类型的数据。Web开发进阶静态资源访问使用IDEA创建Spring Boot项目会默认创建出classpath:/static/目录静态资源一般放在这个目录下即可。但是后期开发都是前后端分离前端使用vscode所以这个了解一下即可一般用不到。拦截器的应用场景1、权限检查如登录检测进入处理程序检测是否登录如果没有则直接返回登录页面。2、性能监控有时系统在某段时间莫名其妙很慢可以通过拦截器在进入处理程序之前记录开始时间在处理完后记录结束时间从而得到该请求的处理时间。3、性能监控有时系统在某段时间莫名其妙很慢可以通过拦截器在进入处理程序之前记录开始时间在处理完后记录结束时间从而得到该请求的处理时间。拦截器的使用SpringBoot定义了HandlerInterceptor接口来实现自定义拦截器的功能主要包括preHandle、postHandle、afterCompletion需要重写该方法因为提供的这三个默认功能都是默认放行不拦截的主要用preHandle这个方法。注意点1、addPathPatterns方法定义拦截的地址。2、excludePathPatterns定义排除某些地址不被拦截。3、添加的一个拦截器没有addPathPattern任何一个url则默认拦截所有请求。4、如果没有excludePathPatterns任何一个请求则默认不放过任何一个请求。构建RESTful服务RESTful介绍REST并不是一个标准它更像一组客户端和服务端交互时的架构理念和设计原则基于这种架构理念和设计原则的Web API更加简洁更有层次。符合RESTful规范的Web API需要具备如下两个关键特性1、安全性安全的方法被期望不会产生任何副作用当我们使用GET操作获取资源时不会引起资源本身的改变也不会引起服务器状态的改变。2、幂等性幂等的方法保证了重复进行一个请求和一次请求的效果相同并不是指响应总是相同的而是指服务器上资源的状态从第一次请求后就不再改变了在数学上幂等性是指N次变换和一次变换相同。SpringBoot实现RESTful API在RESTful架构中每一个网址代表一种资源所以URI中建议不要包含动词只有名字即可而且所用的名词往往与数据库的表格名对应。实例如下如果像动态的根据用户ID来获取用户那么就需要加上PathVariable,否则方法立里面的int id无法与访问路径中的 {id}对应上。Swagger的应用1、Swagger是一个规范和完整的框架用于生成、描述、调用和可视化RESTful风格的Web服务是非常流行的API表达工具。2、Swagger能够自动生成完善的RESTful API文档同时并根据后台代码的修改同步更新同时提供完整的测试页面来调试API。总结主要就是用来在编写后端代码的时候自动生成对应的API接口文档方便前后端开发人员的交互与合作。使用Swagger生成Web API文档使用Maven方法引入依赖然后配置一下即可需要配置的Config内容是固定的然后启动项目访问 http://127.0.0.1:8080/swagger-ui.html 即可打开自动生成的可视化测试页面实例如下没有什么难度需要注意的点就是1、Spring Boot 2.6.X后与Swagger有版本冲突问题需要在application.properties中加入以下配置spring.mvc.pathmatch.matching-strategyant_path_matcher2、在拦截器中忽略该拦截这样就可以不需要登陆即可查看文档。