个人网站建设实训目的,备案不关闭网站的方法,苏州新区高端网站制作,怎么做网站维护宣传本篇文章为SpringBoot学习笔记#xff0c;方便自己再复习。
Maven#xff1a;jar包管理工具 注解#xff1a; Controller:处理http请求#xff0c;返回的视图 RestController: 相当于ResponseBody和Controller一起用#xff0c;返回的是json
ResponseBody:返回响应内容 …本篇文章为SpringBoot学习笔记方便自己再复习。
Mavenjar包管理工具 注解 Controller:处理http请求返回的视图 RestController: 相当于ResponseBody和Controller一起用返回的是json
ResponseBody:返回响应内容 RequestMapping:配置url映射 例子
RestController
RequestMapping(/users) //表示是下面每一个控制器方法请求路径的前缀
public class UserController{GetMapping(/{id})public String getById(PathVariable Integer id){return getById;}}PathVariable:用于接收路径参数使用参数名描述路径参数。例如
RequestMapping(valueusers/{id},methodRequestMethod.DELETE)
ResponseBody
public String delete(PathVariable Integer id)
//PathVariable路径参数id对应路径中的id
{System.out.println(delete user);return {module:user delete};
}RequestParam:用于接收URL地址传参或表单传参 如RequestParam(“name”) String name1 表示这里定义的name1与传来的参数name是一个东西。 方法注解GetMapping PostMapping PutMapping DeleteMapping 用于设置当前控制器方法请求访问路径与请求动作
软件设计的基本原则单一责任原则
服务器最基本的三层系统结构
功能和HTTP MethodURL获取一组数据列表GET/base-path/records根据ID获取某个数据(GET)/base-path/records/{recordID}新建数据POST)/base-path/records完整的更新数据PUT)/base-path/records/{recordID}部分更新数据PATCH)/base-path/records/{recordID}删除(DELETE)/base-path/records/{recordID}跨域访问预请求OPTION)/base-path/records/{recordID}
MVC: M:model(模型)对应数据和逻辑 V:view(视图代表模型包含的数据的可视化 C:controller(控制器作用于视图和模型上。控制数据流向模型对象并在数据变化时更新视图
post:暗送 Get明送 Restful风格认为post和get太过单调而提出的 restful有意义的URL合适的http动词
书写风格驼峰法则如getById类名
int和integer的区别integer是一个对象可以为空int是一个整数。
Data自动生成getter和setter AllArgsConstructor自动生成全参构造函数 NoArgsConstructor自动生成无参构造函数
课堂代码
项目结构 StudentVO
package cn.edu.ctbu.demo1.vo;import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;/*** 这是用于显示学生信息的值对象*/
Data
AllArgsConstructor
NoArgsConstructor
public class StudentVo {private Integer sno;private String name;private Integer age;}StudentController
package cn.edu.ctbu.demo1.api;import cn.edu.ctbu.demo1.vo.StudentVo;
import org.springframework.web.bind.annotation.*;import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;RestController //返回json数据
RequestMapping(/api/student) //路径映射
public class StudentController {private static final ListStudentVo students new ArrayList(Arrays.asList(new StudentVo(1,A,20),new StudentVo(2,B,20),new StudentVo(3,C,20)));//get all studentsGetMapping()public ListStudentVo getAllStudents(){return students;}//get student by idGetMapping(/{sno})public StudentVo getStudentBySno(PathVariable Integer sno){for(StudentVo s:students){if(s.getSno() sno){return s;}}return null;}//create a new studentPostMapping()public String createStudent(StudentVo student){students.add(student);return Success;}//update an existing studentPutMapping(/{sno})public String updateStudent(PathVariable Integer sno,StudentVo updateStudent){for(int i0;i students.size();i){if(students.get(i).getSno() sno){students.set(i,updateStudent);return Success;}}return Error;}//delete a student by idDeleteMapping(/{sno})public String deleteStudentById(PathVariable Integer sno){for(int i0;istudents.size();i){if(students.get(i).getSno() sno){students.remove(i);return Success;}}return Error;}}
postman显示截图 小结
之前学过SSM框架所以在刚学SpringBoot时没有感到很吃力很多注解和项目的框架比较熟悉。但这次学习让自己对各个知识点都理解更深刻更能把握。也解锁了很多IEDEA里的快捷方式。继续努力!