SpringBoot实战之增删改查

首先我们需要使用IDEA新建一个javaweb项目,步骤图示如下

  1. 选择File菜单中的Project子菜单,弹出如下图所示窗口

  1. 在右侧菜单中选择Spring Initial,如上图所示选择JDK的版本,此处为JDK1.8。弹出如下如所示的窗口

 

 

如上图所示输入包名、选择Maven构建项目,选择java语言,项目打包方式,选择Java JDK的版本,输入项目名称。点击Next弹出如下窗口。

选择右侧web菜单,在右侧框中选择Web复选框。此步骤用于自动导入所需的基本Jar包。然后一路next便可以新建一个SpringBoot的Web项目。

实战之前先了解下Spring中的相关注解,方便后续的开发

SpringBoot相关注解

注解的作用

@Entity

 

@Entity说明这个class是实体类,并且使用默认的orm规则

@GeneratedValue

JPA通用策略生成器

@Controller

处理HTTP请求

@RestContoller

Spring4以后的注解,相当于@Controller+@ResponseBody配合使用

@RequestMapping

配置URL映射

@PathVariable

获取URL中的数据

@RequestParam

获取请求参数的值

@GetMapping

注解组合

在项目的\src\main\resources目录下建一个名为application.yml的文件。将由原的application文件删除。在文件中做如下设置

 

 

在文件中设置项目启动的端口号

  
server:

     port: 8081

设置项目连接的数据库连接信息

spring:

  datasource:

    driver-class-name: com.mysql.jdbc.Driver

    url: jdbc:mysql://localhost:3306/test

    username: root

    password: liuhong987

设置JPA无SQL语句操作方式

jpa:

  hibernate:

    ddl-auto: update

  show-sql: true

在navicat中新建一个数据库名为test。

新建一个java实体类Girl

package com.itast.girl;

import javax.persistence.Entity;

import javax.persistence.GeneratedValue;

import javax.persistence.Id;

@Entity

public class Girl {

    @Id

    @GeneratedValue

    private  Integer id;

    private String cpuSize;

    private Integer age;

    public Integer getId() {

        return id;
    }

    public void setId(Integer id) {

        this.id = id;
    }
    public String getCpuSize() {

        return cpuSize;
    }
    public void setCpuSize(String cpuSize) {

        this.cpuSize = cpuSize;

    }
   public Integer getAge() {

        return age;
    }
    public void setAge(Integer age) {

        this.age = age;
    }

    public Girl() {

    }

}

新建一个DAO层抽象与封装

package com.itast.girl;

import org.springframework.data.jpa.repository.JpaRepository;

import java.util.List;

public  interface GirlRepository extends JpaRepository<Girl,Integer> {

 // 自定义通过年龄来查询接口

    public List<Girl> findByAge(Integer id);

}

新建一个Controller控制层编写增删改查方法。

1、新建一个查询所有的方法。

package com.itast.girl;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.cache.annotation.CachePut;

import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController

public class GirlController {

    @Autowired

    private GirlRepository girls2;

    @Autowired

    private GirlService girlService;

    @GetMapping(value = "/girls")

    public List<Girl> girlList() {

        return girls2.findAll();

    }
}

这是通过get方式提交信息。返回数据默认为Json格式。运行项目便可以访问,获取列表。在浏览器输入如下地址,即可返回数据中的所有数据。

同理在Controller中添加一个按年龄查询的方法,首先要在DAO层接口中自定义一个方法。

// 自定义通过年龄来查询接口

public List<Girl> findByAge(Integer id);

controller编写一个按年龄查询的方法

    @GetMapping(value="/girls/age/{age}")
    public List<Girl> girlListByAge(@PathVariable("age")  Integer age){
        return girls2.findByAge(age);
    }

然后按下图浏览器中方式输入

下面编写添加的方法

@PostMapping(value="/girlsadd")

public Girl  girlAdd(@RequestParam("cpuSize") String cpuSize

,@RequestParam("age") Integer age){

  Girl girl=new Girl();

  girl.setAge(age);

  girl.setCpuSize(cpuSize);

  return   girls2.save(girl);

}

这里我们要使用POSTMAN工具来测试接口。

执行后返回如下结果。

同理编写删除和修改方法

修改方法:

    @PutMapping(value="/girls/{id}")

    public Girl girlUpdate(@PathVariable("id") Integer id ,@RequestParam("cpuSize") String cpuSize

            ,@RequestParam("age") Integer age){

            Girl girl=new Girl();

            girl.setId(id);

            girl.setAge(age);

            girl.setCpuSize(cpuSize);

            return   girls2.save(girl);
}

访问方式,在POSTMAN截图如下

删除方法

@DeleteMapping(value="/girls/{id}")

public void  girlDelte(@PathVariable("id") Integer id){

      girls2.deleteById(id);

 }

访问方式,如下POSTMAN截图

 

 

 

猜你喜欢

转载自blog.csdn.net/weixin_42324471/article/details/81157418