springboot查询全部部门流程分析

 更新时间:2024年10月14日 11:41:19   作者:golemon  
本文分析了在SpringBoot框架中前端如何请求DeptController的list()方法,并通过DeptService到DeptMapper接口查询数据库中的全部部门信息的流程,整个过程涉及前端到后端数据的获取和返回,是SpringBoot应用中常见的数据处理模式

前端发送请求后,会请求DeptController的方法list()

package com.intelligent_learning_aid_system.controller;
import com.intelligent_learning_aid_system.pojo.Dept;
import com.intelligent_learning_aid_system.pojo.Result;
import com.intelligent_learning_aid_system.service.DeptService;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * 部门管理Controller
 */
@Slf4j
@RestController
public class DeptController {
    @Autowired
    private DeptService deptService;
    //    @RequestMapping(value = "/depts", method = RequestMethod.GET) // 指定请求参数为 GET
    @GetMapping("/depts") // 等同于上面的写法
    public Result list() {
//        System.out.println("查询全部部门数据");
        log.info("查询全部部门数据");
        // 调用service查询部门数据
        List<Dept> deptList = deptService.list();
        return Result.success(deptList);
    }
}

list()中调用DeptService获取数据。

DeptService中调用DeptMapper接口中的方法来查询全部的部门信息。

package com.intelligent_learning_aid_system.service;
import com.intelligent_learning_aid_system.pojo.Dept;
import java.util.List;
/**
 * 部门管理
 */
public interface DeptService {
    /**
     * 查询全部部门
     * @return
     */
    List<Dept> list();
}
package com.intelligent_learning_aid_system.service.impl;
import com.intelligent_learning_aid_system.mapper.DeptMapper;
import com.intelligent_learning_aid_system.pojo.Dept;
import com.intelligent_learning_aid_system.service.DeptService;
import lombok.extern.slf4j.Slf4j;
import org.apache.ibatis.annotations.Select;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
@Slf4j
@Service
public class DeptServiceImpl implements DeptService {
    @Autowired
    private DeptMapper deptMapper;
    /**
     * 查询全部部门
     */
    public List<Dept> list() {
        return deptMapper.list();
    }
}

DeptMapper接口会往数据库发送SQL语句,查询全部的部门,并且把查询的信息封装到List<Dept>集合中。

package com.intelligent_learning_aid_system.mapper;
import com.intelligent_learning_aid_system.pojo.Dept;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
import org.springframework.web.bind.annotation.GetMapping;
import java.util.List;
/**
 * 部门管理
 */
@Mapper
public interface DeptMapper {
    /**
     * 查询全部部门
     * @return
     */
    @Select("select * from dept")
    List<Dept> list();
}

最终将集合数据返回给DeptServiceDeptService又返回给DeptControllerDeptController拿到数据再返回给前端。

到此这篇关于springboot查询全部部门流程的文章就介绍到这了,更多相关springboot查询全部部门内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 学习Java模拟实现百度文档在线浏览

    学习Java模拟实现百度文档在线浏览

    这片文章介绍了如何使用Java模拟实现百度文档在线浏览,文章思路清晰,需要的朋友可以参考下
    2015-07-07
  • Spring Cloud OAuth2 实现用户认证及单点登录的示例代码

    Spring Cloud OAuth2 实现用户认证及单点登录的示例代码

    这篇文章主要介绍了Spring Cloud OAuth2 实现用户认证及单点登录的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-10-10
  • 从内存方面解释Java中String与StringBuilder的性能差异

    从内存方面解释Java中String与StringBuilder的性能差异

    我们通常会发现使用StringBuffer或StringBuilder创建出来的字符串在拼接时回避String要来得快,尤其是StringBuilder,本文就从内存方面解释Java中String与StringBuilder的性能差异,需要的朋友可以参考下
    2016-05-05
  • 浅析Bean Searcher 与 MyBatis Plus 区别介绍

    浅析Bean Searcher 与 MyBatis Plus 区别介绍

    Bean Searcher号称任何复杂的查询都可以一行代码搞定,但 Mybatis Plus 似乎也有类似的动态查询功能,最近火起的 Bean Searcher 与 MyBatis Plus 倒底有啥区别?带着这个问题一起通过本文学习下吧
    2022-05-05
  • 详解Spring如何解析占位符

    详解Spring如何解析占位符

    Spring一直支持将属性定义到外部的属性的文件中,并使用占占位符的形式为使用"${}"包装的属性名称,为了使用属性占位符,我们必须配置一个PropertyPlaceholderConfigurer或PropertySourcesPlaceholderConfigurer实例,本文将介绍如何解析占位符
    2021-06-06
  • springboot如何读取配置文件(application.yml)中的属性值

    springboot如何读取配置文件(application.yml)中的属性值

    本篇文章主要介绍了springboot如何读取配置文件(application.yml)中的属性值,具有一定的参考价值,有兴趣的小伙伴可以了解一下
    2017-04-04
  • 详解MySQL事务日志undo log

    详解MySQL事务日志undo log

    众所周知,事务的一大特点是原子性,即同一事务的SQL要同时成功或者失败,那大家有没有想过在MySQL的innoDB存储引擎中是如何保证这样的原子性操作的,接下来就带大家一探究竟,感兴趣的小伙伴和小编一起来探讨吧
    2023-07-07
  • Java Web开发环境配置详解

    Java Web开发环境配置详解

    这篇文章主要介绍了Java Web开发环境配置详解,对初学者是个必备的过程,有需要的可以了解一下
    2016-11-11
  • Java Servlet中Response对象的使用方法

    Java Servlet中Response对象的使用方法

    本文介绍了Java Servlet中Response对象的使用方法,包括设置响应头、设置响应编码、向客户端发送数据、重定向等操作,同时介绍了常用的响应状态码和响应类型,帮助读者更好地理解和掌握Servlet中Response对象的用法
    2023-05-05
  • SpringBoot整合Netty实现WebSocket的示例代码

    SpringBoot整合Netty实现WebSocket的示例代码

    本文主要介绍了SpringBoot整合Netty实现WebSocket的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-05-05

最新评论