前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >T系列项目讲解笔记4:写一个新的JAVA接口

T系列项目讲解笔记4:写一个新的JAVA接口

作者头像
Designer 小郑
发布2024-07-19 08:38:06
910
发布2024-07-19 08:38:06
举报
文章被收录于专栏:跟着小郑学JAVA

博主介绍:全网粉丝10W+,CSDN博客专家、全栈领域优质创作者,3年JAVA全栈开发经验,专注JAVA技术、系统定制、远程指导,致力于企业数字化转型。 研究方向:SpringBoot、Vue.JS、MyBatisPlus、Redis、SpringSecurity、MySQL、小程序、Android、Uniapp等。

一、写一个最简单的接口

首先,请同学们在 com.controller 包下新建一个 MyTestController.java 文件,如下图所示。

接着,在类的上面增加 @RestController@RequestMapping 注解,如下图所示。

@RestController 是 Java 中的一个注解,它主要用于 Spring 框架中,表示一个类是一个控制器(Controller),并且该控制器中的方法返回的数据将直接作为 HTTP 响应体返回。这个注解是 @Controller 和 @ResponseBody 注解的组合。

RequestMapping 是 Java 中 Spring 框架的一个注解,用于将 HTTP 请求映射到控制器(Controller)的方法上。这个注解使得开发者能够轻松地将 Web 请求与特定的处理方法关联起来。@RequestMapping 注解可以应用于类或方法上,以实现对请求的映射。

接着在类下新增一个 a() 方法,代码如下。

MyTestController 类使用 @RestController 注解,表示它是一个控制器,并且方法 a() 的返回值将直接作为 HTTP 响应体返回。当访问 /a 路径时,服务器将返回字符串 “Hello, World!”。

代码语言:javascript
复制
package com.controller;

import com.annotation.IgnoreAuth;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


@RestController
@RequestMapping("/myTest")
public class MyTestController {

    @IgnoreAuth
    @RequestMapping(value = "/a")
    public String a() {
        return "Hello World";
    }
}

接着我们输入 URL 进行测试,结果如下。

代码语言:javascript
复制
http://localhost:8080/springbootrd362/myTest/a

二、接口传参

请同学们在 a() 方法中增加两个整型参数 xy,最后返回加法运算结果,代码如下。

代码语言:javascript
复制
@IgnoreAuth
@RequestMapping(value = "/a")
public int a(int x, int y) {
    return x + y;
}

重启后端项目后,运行结果如下图所示。

三、注入服务

在java项目中,单单进行静态数据运算是不够的,还需要对系统具体业务的数据进行读写。

请同学们注入学生服务类,代码如下。

代码语言:javascript
复制
@Autowired
private XueshengService xueshengService;

@Autowired 是 Java 中 Spring 框架的一个注解,用于实现依赖注入(Dependency Injection,DI)。依赖注入是一种设计模式,它允许开发者将组件之间的依赖关系从代码中分离出来,从而提高代码的可维护性和可测试性。使用 @Autowired 注解,Spring 框架可以自动管理组件之间的依赖关系,从而简化开发过程并提高代码的可维护性。

接着同学们需要先定义一个 EntityWrapper 类,用于控制数据的搜索条件,代码如下。

MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。EntityWrapper 是 MyBatis-Plus 中一个重要的类,用于构建 SQL 查询条件。


EntityWrapper 类的主要功能如下:

条件封装:EntityWrapper 可以方便地封装查询条件,如等于、不等于、大于、小于等。这使得编写 SQL 查询条件变得更加简洁和易于维护。

链式调用:EntityWrapper 提供了链式调用的方式,可以连续设置多个查询条件,使得代码更加简洁。

排序:EntityWrapper 支持设置排序字段和排序方式(升序或降序)。

分组:EntityWrapper 支持设置分组字段,方便进行分组查询。

查询列:EntityWrapper 允许指定查询返回的列,而不是返回整个表的所有列。

分页:EntityWrapper 支持设置分页参数,如当前页码和每页显示的记录数。

自定义 SQL:EntityWrapper 允许在查询条件中嵌入自定义 SQL 片段,以满足更复杂的查询需求。


代码语言:javascript
复制
EntityWrapper<XueshengEntity> ew = new EntityWrapper<XueshengEntity>();

接着使用 selectListView 方法进行数据查询,最后返回给前端,代码如下。

代码语言:javascript
复制
@IgnoreAuth
@RequestMapping(value = "/a")
public List<XueshengView> a() {
    EntityWrapper<XueshengEntity> ew = new EntityWrapper<XueshengEntity>();
    return xueshengService.selectListView(ew);
}

重启后端项目后,运行结果如下图所示。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-07-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、写一个最简单的接口
  • 二、接口传参
  • 三、注入服务
相关产品与服务
云数据库 MySQL
腾讯云数据库 MySQL(TencentDB for MySQL)为用户提供安全可靠,性能卓越、易于维护的企业级云数据库服务。其具备6大企业级特性,包括企业级定制内核、企业级高可用、企业级高可靠、企业级安全、企业级扩展以及企业级智能运维。通过使用腾讯云数据库 MySQL,可实现分钟级别的数据库部署、弹性扩展以及全自动化的运维管理,不仅经济实惠,而且稳定可靠,易于运维。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档