Spring SSM框架--MVC

SSM框架--Mybatis

一、介绍

Spring 框架是一个资源整合的框架,可以整合一切可以整合的资源(Spring 自身和第三方),是一个庞大的生态,包含很多子框架:Spring Framework、Spring Boot、Spring Data、Spring Cloud...... 其中Spring Framework是核心。

SSM框架

  • Spring Framework框架
  • Spring MVC框架
  • Mybatis框架

二、Spring MVC简介

1.MVC

一种软件架构设计思想,目的是降低项目中各个模块之间的耦合度,模型视图控制器(model View Controller)

  • model:负责业务逻辑处理和数据库操作
  • view:负责页面最终显示
  • Controller:负责接受请求并调用模型层处理业务,组织响应结果的返回

2.Spring MVC

java中基于MVC设计思想的框架,用于快速开发web应用程序,是Spring Framework的核心子框架

3.请求

3.1静态请求

静态文件放在resources/static目录下,build static 重新编译静态文件

3.2动态请求
  1. 控制器类上加@Controller注解

    标识当前类为控制器,用于接收客户端发过来的请求

  2. 控制器方法上加@RequestMapping("url路径")

    请求映射的路径,通过浏览器输入localhost/8080/url 进行访问

  3. 控制器方法上加@ResponseBody注解

    允许控制器方法以返回值的形式返回给客户端数据

  4. @RestController = @Controller+@ResponseBody

  5. @PostMapping(url)

    Post请求类型的Mapping,只能是post类型请求

  6. @GetMapping (url)

    Get类型请求

  7. @Configuration

    加在config类上,标识这是配置类

三、HTTP请求和响应

1.Http和Https

1.1 Http:

默认端口号:80

安全性较低:数据明文传输

传输效率高

不需要SSL证书

1.2Https

默认端口号:443

安全性较高:数据密文传输

传输效率较低

需要SSL证书

2.请求Request

  • 请求行:
    GET:获取资源
    POST:新增资源
    PUT:更新资源
    DELETE:删除资源
    请求路径
    HTTP协议版本
  • 请求头:
    Content-Type:请求体的类型
    Host:请求的主机地址
    Cookie:后期会话保持
  • 请求体:
    客户端传给服务端的具体数据

GET请求

传递数据:通过查询参数的方式传递

http://localhost:8080/v1/users/login?username=xxx\&password=xxx

POST请求

通过<input>表单控件传递

java 复制代码
<form action="http://localhost:8080/v1/users/login" method="post">
    <input type="text" name="username">
    <input type="text" name="password">   
    <input type="submit" value="登录">
</form>

3.响应Response

  • 响应状态码:
    1xx:保留
    2xx:成功
    3xx:重定向
    4xx:客户端错误
    5xx:服务端服务
  • 响应头:对当前响应的进一步描述
    Content-Type:text/html 响应体的类型
    Content-Length:3546 响应体数据大小
  • 响应体:服务端返回客户端的具体数据

三、流程

1.创建工程,勾选lombok、Spring web依赖

2.创建pojo.dto.类名

dto是客户端发送给服务端所需的数据,一般是数据表的部分必需字段

java 复制代码
@Data
public class UserRegDTO {
    // 用户名,密码
    private String username;
    private String password;

3.创建controller

java 复制代码
@Controller
public class UserController {
	@PostMapping("/v1/users/reg1")
    @ResponseBody
    public String login(String username,String password){
    	return username + ":::" + password;
     
    }
//pojo类传输参数
	@RequestMapping("/v1/users/reg2")
    @ResponseBody
    public String reg3(UserRegDTO userRegDTO){
        String username = userRegDTO.getUsername();
        String password = userRegDTO.getPassword();
        System.out.println(username + ":::" + password);
        return username + "***" + password;
    }

4.开启连接服务Application(自带的)

5.打开浏览器输入网址进行查看

http://localhost:8080/v1/users/reg1?username=xxx\&password=yyy

相关推荐
zhangjw3427 分钟前
第47篇:Java综合实战:电商秒杀系统(高并发场景)
java·开发语言
土司大王37 分钟前
LeetCode hot100 回溯专题总结:Java 通用模板、决策树模型
java·算法·leetcode·决策树
重生之我是Java开发战士1 小时前
【Spring Cloud】Nacos注册中心
后端·spring·spring cloud
Wang's Blog1 小时前
Java框架快速入门:Spring Security+OAuth2之用户注册与唯一性校验实现
java·数据库·spring
Wang's Blog1 小时前
Java框架快速入门: Spring Security+OAuth2之多因子认证与TOTP实战
java·spring·ui
滕州市燕猫虎计算机科技工作室个体工商户1 小时前
Java面试题汇总
java·开发语言
2301_32241428043 小时前
活力孕康复APP 47737- 原创(免费领源码+部署教程+开发环境)
java·vue.js·spring boot·mysql·微信小程序·idea·微信开发者工具
君顾13 小时前
外卖CPS软件开发实战:从系统架构到部署全流程指南
java·开发语言·外卖
vx_Biye_Design3 小时前
springboot游泳馆系统93765-计算机课程设计、毕业设计
java·javascript·spring boot·后端·python·spring·课程设计
名字还没想好☜3 小时前
Java NIO ByteBuffer 实战:flip/clear/compact 三个绕晕人的方法与 position/limit 心智模型
java·开发语言·后端·spring·nio