【代码审计】JAVAWeb基础SpringBoot&SpringCloud
0x00 版权声明
JAVA基础系列是笔者学习@炼石星球的笔记,大部分文字描述取自星球内发布的教程文件,仅作学习。
0x01 SpringBoot/Cloud简介
SpringBoot是一款基于JAVA的开源框架。目的是为了简化Spring应用搭建和开发流程。是目前比较流行,大中小型企业常用的框架。正因为极大简化了开发流程,才收到绝大开发人员的喜爱。SpringBoot核心原理是自动装配(自动配置)。在这之前,开发一个JavaWeb,Spring等项目要进行很多配置,使用了SpringBoot就不 用在过多考虑这些方面。并且在SpringBoot中还内置了Tomcat
Spring Cloud是一系列框架的有序集合。 它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。 Spring Cloud并没有重复制造轮子,它只是将各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。
0x02 Spring Boot之HelloWorld
第一步,创建Spring项目
选择Spring Initializer,右侧保持默认,packing选择war方式:
如果出现
Initialization failed for ‘https://start.spring.io‘ Please check URL, network and proxy settings.
Error message: Cannot download ‘https://start.spring.io‘: Read timed out
错误,使用以下方法
打开idea最上角file选项的Settings,
搜索HTTP Proxy,勾选Automatic proxy configuration URL: 输入https://start.spring.io,接着点击Auto-detect proxy settings 输入https://start.spring.io ,点击ok 然后点击下方的Check Connection,如果仍然无法连接,将https更改为http,最后成功会提示Success:
如果仍然无法连接,把地址改为阿里云https://start.aliyun.com/,创建项目地址也改为https://start.aliyun.com/
然后重新创建项目,选择Web,勾选Spring Web,点击完成,等待自动创建:
第二步,创建package
创建com.example.demo.controller包,在controller目录下新建HelloController.class文件,键入代码:
1 | package com.example.demo.controller; |
第三步,运行项目
点击运行,启动项目,浏览器访问http://127.0.0.1:8080/hello,看到页面输出:
0x03 注解含义
@Controller 注解:标注该类为controller类,可以处理http请求。@Controller一般要配合模版来使用。现在项目大多是前后端分离,后端处理请求,然后返回JSON格式数据即可,这样也就不需要模板了。
@ResponseBody 注解:将该注解写在类的外面,表示这个类所有方法的返回的数据 直接给浏览器。 @RestController 相当于 @ResponseBody 加上 @Controller @RequestMapping 注解:配置 URL映射 ,可以作用于某个Controller类上,也可以作用于某Controller类下的具体方法中,说白了就是URL中请求路径会直接映射到具体方法中执行代码逻辑。
@RequestParam 注解:将请求参数绑定到你控制器的方法参数上(是springmvc中接收普通参数的注解),常用于POST请求处理表单
@PathVariable 注解:接受请求URL路径中占位符的值,示例代码如下:
1 |
|