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截图

 

 

 

  • 14
    点赞
  • 190
    收藏
    觉得还不错? 一键收藏
  • 24
    评论
本项目基于Spring Boot框架,实现了医生排班管理系统,包括医生信息管理、排班设置、排班查询等功能。具体实现如下: 1. 技术选型 - Spring Boot:基于Spring框架的快速开发框架。 - MyBatis:ORM框架,用于操作数据库。 - MySQL:关系型数据库,存储数据。 2. 数据库设计 本项目使用MySQL数据库,设计了三张表:Doctor、Schedule和ScheduleDetail。 Doctor表存储医生信息,包括姓名、性别、科室、职称等字段。 Schedule表存储排班信息,包括排班日期、星期几、班次等字段。 ScheduleDetail表存储具体排班信息,包括排班ID、医生ID、排班日期、班次等字段。 3. 代码实现 (1)DoctorController类 该类实现了医生信息的增删改查功能,包括通过姓名、性别、科室、职称等条件查询医生信息。 (2)ScheduleController类 该类实现了排班信息的增删改查功能,包括通过日期、星期几、班次等条件查询排班信息。 (3)ScheduleDetailController类 该类实现了排班详情的增删改查功能,包括通过排班ID、医生ID、排班日期、班次等条件查询排班详情信息。 (4)DoctorMapper接口 该接口定义了医生信息的数据库操作,包括增删改查等方法。 (5)ScheduleMapper接口 该接口定义了排班信息的数据库操作,包括增删改查等方法。 (6)ScheduleDetailMapper接口 该接口定义了排班详情的数据库操作,包括增删改查等方法。 4. 总结 本项目实现了医生排班管理系统的基本功能,包括医生信息管理、排班设置、排班查询等。通过本项目的实战,可以加深对Spring Boot框架的理解和使用,同时也能够了解到ORM框架MyBatis的使用方法。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 24
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值