文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Java springboot接口迅速上手,带你半小时极速入门

2024-04-02 19:55

关注

如何通过springboot来写一个简单的接口?

想要知道怎么写可能只需要几步,半小时足矣

本篇文章只是教大家如何快速地使用

但是具体是为什么这样用?以及背后的原理,请大家先认真学习javaweb-servlet-ssm框架等等,这里就不做过多的讲解。

前期准备:

首先在idea中新建项目:

new project-spring initializr一路next(如有需要修改的信息,也可以自己修改,不重要)

在这里插入图片描述

在这里插入图片描述

注意,这里要记得选上,作用是在初始化的时候,需要那些东西idea就帮你初始化进去(当然,后期也能自己手动加,但是这里为了方便学习,还是该选的都选上)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

最后选完了,确保,右边栏selected dependencies为如下:

在这里插入图片描述

再一路next。。等待加载完成

再在MySQL数据库中准备一个student表:

在这里插入图片描述

接着,把src\main\resources中的application.properties文件改名成application.yml,这是因为yml文件的结构比较清晰,好看易懂

application.yml文件是一个配置文件,作用是可以配置一些数据库信息,他来告诉springboot我们的数据库账号密码呀,表名是啥等等。

在这里插入图片描述

在这里插入图片描述

以下是我的application.yml,你们可以根据自己的实际情况修改对应的信息:


server:
  port: 8081
spring:
  #数据库连接配置
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://127.0.0.1:3306/dt55?characterEncoding=utf-8&useSSL=false&serverTimezone=UTC
    username: root
    password: 888888
#mybatis的相关配置
mybatis:
  #mapper配置文件
  mapper-locations: classpath:mapper/*.xml

验证先前配置是否成功:点开src\main\java\com\wzy\demo\DemoApplication.java

点击箭头所指的运行按钮:

在这里插入图片描述

若控制台出现:

在这里插入图片描述

并且在浏览器中输入http://localhost:8081/会出现:

在这里插入图片描述

则代表配置成功

步骤一:建立实体类,需要跟数据库表字段保持一致

在src\main\java\com\wzy\demo目录下新建一个名为entity包

在这里插入图片描述

再在entity包下,新建一个名为Student的class,这个Student即为实体类,该实体类即对应数据库中的表,类中的属性与数据库字段保持一致,并且加上构造函数以及get、set方法:


public class Student {
    private int id;
    private String name;
    private int age;
    private String hobby;
    private String address;
    public Student(int id, String name, int age, String hobby, String address) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.hobby = hobby;
        this.address = address;
    }
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public String getHobby() {
        return hobby;
    }
    public void setHobby(String hobby) {
        this.hobby = hobby;
    }
    public String getAddress() {
        return address;
    }
    public void setAddress(String address) {
        this.address = address;
    }
}

步骤二:建立mapper接口,定义要操作的数据库的动作

操作的数据库的动作比如:查询、更新、删除等等

这些动作就是mapper

在src\main\java\com\wzy\demo目录下新建一个名为mapper包

在这里插入图片描述

再在mapper包下,新建一个接口StudentMapper

又因为,数据库中的一行数据就对应着一个对象

在这里插入图片描述

这里假设,我们想要找到所有的学生信息。


@Mapper
public interface StudentMapper {
    List<Student> findAllStudent();
}

步骤三:建立mapper的xml文件,写具体的sql语句

再在resources目录下建立一个名为mapper的包,并且在mapper的包下新建一个名为StudentMapper.xml的文件。这个文件就是告诉java具体要写哪些sql语句。

在这里插入图片描述


<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.wzy.demo.mapper.StudentMapper">
    <select id="findAllStudent" resultType="com.wzy.demo.entity.Student">
        SELECT * FROM student
    </select>
</mapper>

注意,这里的namespace就是指向哪一个mapper

id是mapper里面的方法名,resultType就是返回的类型

这里与前文中application.yml的mapper-locations相对应

在这里插入图片描述

步骤四:建立service类,处理业务逻辑

步骤三已经得到了数据了,但是展示给前端时,需要根据自己的业务逻辑对数据进行进一步的加工,所以这里在src\main\java\com\wzy\demo下建立service包,并且在service包中,新建一个StudentService类,此类的作用是处理相应的业务逻辑


//@Service的意思是将其实例化,
//之前如果有一个class,是不是需要new一个对象才可以用,
//这里就可以理解成会自动帮你new,new完了之后,将实例加到了spring容器当中
@Service
public class StudentService {
    //引进StudentMapper,@Autowired的意思就是将其实例化,通过autowired从spring容器中拿出来,供我们使用
    @Autowired
    private StudentMapper studentMapper;
    //处理业务逻辑,这里由于业务过于简单,就空着,查询出什么我就返回什么
    public List<Student> findAllStudent() {
        return studentMapper.findAllStudent();
    }
}

步骤五:在controller类中展示处理结果

在src\main\java\com\wzy\demo下建立controller包,并且在controller包中,新建一个StudentController类,此类的作用是将信息传到前端,就是负责给浏览器返回相应的数据。


//@RestController会自动帮一个对象转换成json的格式
@RestController
public class StudentController {
    @Autowired
    private StudentService studentService;
    //@RequestMapping("/getstudent")的意思告诉前端相应的地址访问
    @RequestMapping("/getstudent")
    public List<Student> getStudent(){
        return studentService.findAllStudent();
    }
}

验证

浏览器输入:http://localhost:8081/getstudent

出现数据库相关信息,试验成功

在这里插入图片描述

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注编程网的更多内容!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯