-
创建springboot工程,填写模块信息,勾选相关依赖。(若未下载配置Maven,需要先配置Maven)
-
创建请求处理类HelloConroller,添加请求处理方法hello,并添加注解(@Rest……部分)
-
运行启动类(第一步创建springboot工程时自动已经创建启动类)打开浏览器测试。
请求响应
- 概述:
基本概念:
请求(HttpServleRequest):获取请求数据
响应(HttpServleReponse):设置响应数据
BS架构:Browser/Server,浏览器架构模式。客户端只需要浏览器,应用程序的逻辑和数据都存在服务器。
CS架构:Client/Server,客户端/服务器架构模式。(开发维护麻烦,体验不错)
postman:(需要安装postman,或者可以直接在idea下载Apipost-Helper-2.0插件,更方便)
作用:用于接口测试(因为后端看不到前端页面的话,就没法测试了)
若选择下载Apipost-Helper-2.0插件,可以到下面地址处查看如何配置插件IDEA插件
IDEA插件Java语言,已兼容19.3以后版本喽~
- 请求响应各类参数(可以先了解,之后调试多了就熟了)
//1.简单参数
@RequestMapping("/hello")//网站请求/hello时,调用hello方法
public String hello(){
System.out.println("hello world~");
return "Hello World~";
}
//2.实体参数
@RequestMapping("/simpleParam")//网站请求/simpleParam时,调用simpleParam方法
public String simpleParam(String name,Integer age){
System.out.println(name+":"+age);
return "OK";
}
//2.数组
@RequestMapping("/arrayParam")
public String arrayParam(String[] hobby){
System.out.println(Arrays.toString(hobby));
return "OK";
}
//3.集合
@RequestMapping("/listParam")
public String listParam(@RequestParam List<String>hobby){
System.out.println(hobby);
return "OK";
}
//4.日期时间参数
@RequestMapping("/dataParam")
public String dataParam(@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")LocalDateTime updateTime){
System.out.println(updateTime);
return "OK";
}
//5.json参数
@RequestMapping("/jsonParam")
public String jsonParam(@RequestBody User user){
System.out.println(user);
return "OK";
}
//6.路径参数
@RequestMapping("/path/{id}")//{id}表示不是一个固定值
public String pathParam(@PathVariable Integer id){
System.out.println(id);
return "OK";
}
@RequestMapping("/path/{id}/{name}")//{id}表示不是一个固定值
public String pathParam2(@PathVariable Integer id,@PathVariable String name){
System.out.println(id+":"+name);
return "OK";
}
三层架构
Controller接受请求,响应数据
Service层业务逻辑处理
Dao层数据访问操作
分层解耦
内聚:软件中各个功能模块内部的功能联系。
耦合:衡量软件中各个层/模块之间的依赖、关联的程度。
软件设计原则:高内聚,低耦合。
IOC&DI
声明bean的注解:@Controller、@Component、@Service、@Repository
建议按照springboot的规范,将所写代码全部放在启动类所在包及其子包上,当然,如果扫描的在其他包上,可以添加注解@ComponentScan()指定包。
Bean注入