SpringBoot常见问题

1. RESTful风格的后端接口

    RESTful(Representational State Transfer)是一种设计风格,用于构建网络应用程序的后端接口。它基于HTTP协议,通过使用不同的HTTP方法(GET、POST、PUT、DELETE等)来对资源进行操作。

2. 开发一个功能的流程

    大致流程:查看需求及接口文档--->开发思路整理--->接口开发--->接口测试--->前后端联调

 

    详细流程

  1. 需求分析:明确功能的需求和目标,与相关利益相关者(如客户、用户、产品经理等)进行沟通和讨论,确保对功能的理解一致。

  2. 设计规划:根据需求分析的结果,进行功能的设计规划。包括确定功能的界面设计、数据结构设计、算法设计等。

  3. 编码实现:根据设计规划,使用所选的编程语言和开发工具进行功能的编码实现。可以采用模块化的方式,将功能拆分为多个子任务,逐个完成。

  4. 单元测试:对功能的每个模块进行单元测试,确保每个模块的功能正确性和稳定性。可以使用自动化测试工具或编写测试用例进行测试。

  5. 集成测试:将各个模块进行集成测试,测试功能在整体上的正确性和稳定性。可以模拟真实环境进行测试,检查功能是否符合预期。

  6. 调试和修复:在测试过程中,如果发现功能存在问题或bug,进行调试和修复。可以使用调试工具和日志记录来定位和解决问题。

  7. 用户验收测试:将开发完成的功能交付给用户或客户进行验收测试。根据用户的反馈和意见,进行必要的修改和优化。

  8. 文档编写:编写功能的相关文档,包括用户手册、开发文档、API文档等,以便用户和开发人员理解和使用功能。

  9. 部署和发布:将功能部署到目标环境中,并进行发布。可以使用自动化部署工具和版本控制系统来简化部署和发布过程。

  10. 维护和优化:功能发布后,根据用户的反馈和需求变化,进行功能的维护和优化。可以定期进行性能优化、安全性检查和功能扩展等工作。


3.开发分页功能前端至少需要传什么参数过来,后台简化分页开发的插件及用法
查询的页码(page)和每页记录数(pageSize)

 PageHelper

 (1)pom.xml中引入依赖

<dependency>
    <groupId>com.github.pagehelper</groupId>
    <artifactId>pagehelper-spring-boot-starter</artifactId>
    <version>1.4.2</version>
</dependency>

(2)EmpServiceImpl

    @Override
    public PageBean page(Integer page, Integer pageSize , String name, Short gender, LocalDate begin, LocalDate end) {
 
//        PageHelper实现分页查询
        PageHelper.startPage(page, pageSize);
        Page<Emp> pages = empMapper.list(name,gender,begin,end);
 
        return new PageBean(pages.getTotal(), pages.getResult());
    }

(3)EmpMapper

    @Select("select * from emp")
    Page<Emp> list();

4.部门新增逻辑

浏览器发送新增部门请求,将部门名称以json数据的形式发送给后端。Controller层处理HTTP请求和响应,使用注解@RequestBody拿到json数据,并调用Service层的方法来处理新增部门的请求,Service层补充基础属性完善数据,调用Mapper层将新增的部门存入到数据库

5.部门删除逻辑

浏览器发送删除部门请求,Controller层通过@PathVariable注解拿到路径上的部门id数据参数,调用Service层方法来处理删除部门请求,Service先调用empMapper层方法删除对应该部门id下的所有员工,再调用deptMapper层方法删除部门,Mapper层对数据库中数据进行删除操作

6.部门查询逻辑

由于是查询所有部门,所以逻辑上比较简单,就是浏览器发送查询部门请求,Controller层接收请求调用Service层,Service层调用Mapper层,Mapper层跟数据库交互,拿到所有部门对象集合,返回到Service层,Service层再讲部门对象集合返回到Controller层,Controller层展示数据给用户

7.员工查询逻辑以及实现分页查询

员工查询和部门查询是一个逻辑,至于实现分页查询的逻辑则是,定义pojo类PageBean里面有总记录数(total)和行数记录(rows)。前端传入参数查询的页码(page)和每页记录数(pageSize),Controller层接收数据可以通过注解@RequestParam(defaultValue = "1")标记使得没有接收到前端数据时使用设定的默认值,然后调用Service层方法将参数传入,Service层通过PageHelper插件实现分页,然后调用Mapper层从数据库里拿取全部员工数据

8.批量员工删除实现

浏览器发送删除请求,Controller层接收请求通过注解@PathVariable拿到路径上要删除的id数据参数封装到集合里。然后调用Service层方法将集合传入,Service层调用Mapper层传入集合参数。Mapper层使用xml实现,在xml文件中书写foreach语句来对数据库中的员工数据进行删除
 

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值