SpringBoot———实现增删改查操作

avatar
作者
筋斗云
阅读量:0

SpringBoot———实现增删改查操作


文章目录


前言


提示:以下是本篇文章正文内容,下面案例可供参考

一、创建一个springboot项目工程

二、准备一个数据库表

create table dept(     id int unsigned primary key auto_increment comment,     name varchar(10) not null unique comment       create_time datetime not null comment       update_time datetime not null comment  ' )  

2.配置pom.xml文件,引入依赖的包

代码如下(示例):

<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">     <modelVersion>4.0.0</modelVersion>     <groupId>com.example</groupId>     <artifactId>tlias-web-management</artifactId>     <version>0.0.1-SNAPSHOT</version>     <name>tlias-web-management</name>     <description>Demo project for Spring Boot</description>     <properties>         <java.version>1.8</java.version>         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>         <spring-boot.version>2.6.13</spring-boot.version>     </properties>     <dependencies>          <!--        web起步依赖-->         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-web</artifactId>         </dependency>          <!--        mybatis起步依赖-->         <dependency>             <groupId>org.mybatis.spring.boot</groupId>             <artifactId>mybatis-spring-boot-starter</artifactId>             <version>2.2.2</version>         </dependency>          <!--        mysql驱动包-->         <dependency>             <groupId>com.mysql</groupId>             <artifactId>mysql-connector-j</artifactId>             <scope>runtime</scope>         </dependency>          <!--        Lombok-->         <dependency>             <groupId>org.projectlombok</groupId>             <artifactId>lombok</artifactId>             <optional>true</optional>         </dependency>         <!--        springboot单元测试-->         <dependency>             <groupId>org.springframework.boot</groupId>             <artifactId>spring-boot-starter-test</artifactId>             <scope>test</scope>         </dependency>     </dependencies>     <dependencyManagement>         <dependencies>             <dependency>                 <groupId>org.springframework.boot</groupId>                 <artifactId>spring-boot-dependencies</artifactId>                 <version>${spring-boot.version}</version>                 <type>pom</type>                 <scope>import</scope>             </dependency>         </dependencies>     </dependencyManagement>      <build>         <plugins>             <plugin>                 <groupId>org.apache.maven.plugins</groupId>                 <artifactId>maven-compiler-plugin</artifactId>                 <version>3.8.1</version>                 <configuration>                     <source>1.8</source>                     <target>1.8</target>                     <encoding>UTF-8</encoding>                 </configuration>             </plugin>             <plugin>                 <groupId>org.springframework.boot</groupId>                 <artifactId>spring-boot-maven-plugin</artifactId>                 <version>${spring-boot.version}</version>                 <configuration>                     <mainClass>com.example.tliaswebmanagement.TliasWebManagementApplication</mainClass>                     <skip>true</skip>                 </configuration>                 <executions>                     <execution>                         <id>repackage</id>                         <goals>                             <goal>repackage</goal>                         </goals>                     </execution>                 </executions>             </plugin>         </plugins>     </build>  </project>  

3.在resources写application.propertiesl配置文件,连接数据库

# 应用服务 WEB 访问端口 server.port=8080  spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #数据库连接的url spring.datasource.url=jdbc:mysql://localhost:3306/demo?useSSL=false&serverTimezone=UTC  #连接数据库的用户名 spring.datasource.username=root #连接数据库的密码 spring.datasource.password=root  #配置mybatis的日志,指定输出到控制台 mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl  #开启mybatis的驼峰命名自动映射开关。a_column ------>aColumn mybatis.configuration.map-underscore-to-camel-case=true  

三、创建一个Dept实体类

 package com.example.tliaswebmanagement.com.itheima.pojo; /**  * @Author 小浩  * @Date 2023/10/25 17:51  * @PackageName:com.example.tliaswebmanagement.com.itheima.pojo  * @ClassName: PageBean  * @Description  实体类  */ import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; import java.time.LocalDate; @Data @AllArgsConstructor @NoArgsConstructor public class Dept {      private Integer id;  //ID     private String name;  //部门名称     private LocalDate createTime;  //创建时间     private LocalDate updateTime;  // 修改时间 }  

1、创建DeptController

package com.example.tliaswebmanagement.com.itheima.controller;   import com.example.tliaswebmanagement.com.itheima.pojo.Dept; import com.example.tliaswebmanagement.com.itheima.pojo.Result; import com.example.tliaswebmanagement.com.itheima.service.DeptService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*;  import java.util.List;  /**  * 部门管理Controller  */ @Slf4j  //lombok提供了日志 @RestController @RequestMapping("/depts") public class DeptController {      @Autowired     private DeptService deptService;     /**      * 查询部门数据      *      * @return      */     @GetMapping     public Result list() {         log.info("查询全部部门数据");         //调用service查询部门数据         List<Dept> list = deptService.list();         return Result.success(list);     }      /**      * 通过id删除部门id      *      * @param id      * @return      */     @DeleteMapping("/{id}")     public Result delete(@PathVariable Integer id) {         log.info("根据id删除部门:{}", id);         //调用service删除部门         deptService.delete(id);         return Result.success();     }      /**      * 新增部门      *      * @param dept      * @return      */     @PostMapping     public Result add(@RequestBody Dept dept) {         log.info("新增部门:{}", dept);         //调用service新增部门         deptService.add(dept);         return Result.success();     }      /**      * 修改部门      *      * @return      */      @PutMapping     public Result update(Dept dept) {         log.info("修改部门");       //调用service修改部门         deptService.update(dept);         return Result.success();     }  }  

2、创建DeptService接口

 /**  * @Author 小浩  * @Date 2023/10/25 17:51  * @PackageName:com.example.tliaswebmanagement.com.itheima.pojo  * @ClassName: PageBean  * @Description  实体类  */     /**      * 查询全部部门数据      * @return      */     List<Dept> list();       /**      * 删除部门       * @return      */     void  delete(Integer id);       /**      * 新增部门      * @param dept      */     void add(Dept dept);       /**      * 修改部门      * @param dept      */     int  update(Dept dept);  

3、创建一个 DeptServiceImpl实现类

package com.example.tliaswebmanagement.com.itheima.service.impl; /**  * @Author 小浩  * @Date 2023/10/25 17:51  * @PackageName:com.example.tliaswebmanagement.com.itheima.pojo  * @ClassName: PageBean  * @Description  实体类  */ import com.example.tliaswebmanagement.com.itheima.mapper.DeptMapper; import com.example.tliaswebmanagement.com.itheima.pojo.Dept; import com.example.tliaswebmanagement.com.itheima.service.DeptService; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service;  import java.time.LocalDate; import java.util.List;  @Service public class DeptServiceImpl  implements DeptService {      @Autowired     private DeptMapper deptMapper;       /**      * 查询全部部门      * @return      */     @Override     public List<Dept> list() {         return deptMapper.list();     }      /**      * 根据id删除部门      * @param id      */     @Override     public void  delete(Integer id) {         deptMapper.deleteById(id);     }       /**      * 新增部门      * @param dept      */     @Override     public void add(Dept dept) {          dept.setCreateTime(LocalDate.now());         dept.setUpdateTime(LocalDate.now());         deptMapper.insert(dept);      }       /**      * 修改部门      * @param dept      */     @Override     public int update(Dept dept) {         return  deptMapper.Update(dept);     } }  

4、创建DeptMapper接口

package com.example.tliaswebmanagement.com.itheima.mapper;  import com.example.tliaswebmanagement.com.itheima.pojo.Dept; import org.apache.ibatis.annotations.*;  import java.util.List;  /**  * @Author 小浩  * @Date 2023/10/25 15:56  * @PackageName:com.example.tliaswebmanagement.com.itheima.mapper  * @ClassName: DeptMapper  * @Description  */  /**  * 部门管理  */ @Mapper public interface DeptMapper {       //查询全部部门     @Select("select  * from  dept")     List<Dept> list();      /**      * 根据id删除部门      *      * @param id      */     @Delete("delete from dept where id = #{id}")     void deleteById(Integer id);       /**      * 新增部门      * @param dept      */     @Insert("insert into  dept(name, create_time, update_time) values (#{name},#{createTime},#{updateTime})")     void insert(Dept dept);       /**      * 修改部门信息      * @param      */     @Update("update  dept set create_time = #{createTime}, update_time = #{updateTime}  where id = #{id}")     int  Update(Dept dept); }  

最后在运行项目在postman测试

在这里插入图片描述

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!