SpringBoot实现简单的增删改查以及条件分页

  • 条件

  • 使用Spring boot、mybatis、mysql、分页插件实现以下功能

  1. 用户列表

  2. 用户增加

  3. 信息修改

  4. 信息查看

  5. 用户搜索

  6. 分页

  • 效果图如下

 

  • 步骤

1.使用IDEA的Spring Initializr构建

2.模板选择web、
MyBatis、MySQL(以上步骤都不懂的自行百度)

3.在src下创建以下包名,目录如下:

4.修改resources目录下的application.yml

server:
  port: 8080 #指定接口
  servlet:
    context-path: /springbootPagination #指定项目名
    jsp:
      init-parameters:
        development: true #开启jsp模板开发模式

#配置jsp模板
spring:
  mvc:
    view:
      suffix: .jsp
      prefix: /
  #整合mybatis相关配置
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://localhost:3306/y2demo?serverTimezone=UTC
    username: root
    password: root

#配置mybatis
mybatis:
  mapper-locations: classpath:com/p/mapper/*.xml
  type-aliases-package: com.p.entity

#分页插件的配置
pagehelper:
  #配置四項 hprs
  helper-dialect: mysql  #分页助手方言:mysql
  params: count=countSql  #为了支持 startPage(Object params) 方法
  support-methods-arguments: true  #支持通过 Mapper 接口参数来传递分页参数,默认值 false
  reasonable: true #分页合理化参数,默认值为 false,页码不为负,不超总页码

#配置日志
logging:
  level:
    root: info #调整全局日志展示debug
    com.p: debug #输出指定包的日志级别

5.在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>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.5</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.p</groupId>
    <artifactId>springbootPagination</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springbootPagination</name>
    <description>Demo project for Spring Boot</description>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <dependency>
            <groupId>org.apache.tomcat.embed</groupId>
            <artifactId>tomcat-embed-jasper</artifactId>
        </dependency>

        <!--开启热部署调试-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

        <!--druid-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>druid</artifactId>
            <version>1.2.4</version>
        </dependency>
        <!--mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.20</version>
        </dependency>
        <!--mybatis-spring-boot-->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.1.4</version>
        </dependency>
        <!--jstl标准数据库 c标签库-->
        <dependency>
            <groupId>jstl</groupId>
            <artifactId>jstl</artifactId>
            <version>1.2</version>
        </dependency>
        <!--pagehelper-spring-boot-->
        <dependency>
            <groupId>com.github.pagehelper</groupId>
            <artifactId>pagehelper-spring-boot-starter</artifactId>
            <version>1.2.5</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <version>2.7.5</version>
            </plugin>
        </plugins>
    </build>

</project>

6.在pojo里添加实体类

public class Users {
    private int id;
    private String mobName;
    private String userName;
    ...
}

7.在mapper里添加注解方式数据库操作接口

@Mapper
public interface UsersMapper {

    @Select("select * from users where CONCAT(mobName,userName,nickname,phone) like CONCAT('%',#{name},'%')")
    List<Users> getUsersList(String name);

    @Insert("insert into users (id,mobName,userName,nickname,phone,register) " +
            "values (#{id},#{mobName},#{userName},#{nickname},#{phone},#{register})")
    public int add(Users users);

    @Delete(" delete from users where id= #{id} ")
    public void del(int id);

    @Select("select * from users where id= #{id} ")
    public Users getUser(int id);

    @Update("update users set " +
            "mobName = #{mobName}," +
            "userName = #{userName}," +
            "nickname = #{nickname}," +
            "phone = #{phone}," +
            "register = #{register} " +
            "where id=#{id} ")
    public int update(Users users);

}

8.在tools里添加分页工具类

import com.github.pagehelper.PageHelper;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.util.Properties;

@Configuration
public class PageHelperConfig {
    @Bean
    public PageHelper pageHelper() {
        PageHelper pageHelper = new PageHelper();
        Properties properties = new Properties();
        properties.setProperty("offsetAsPageNum", "true");
        properties.setProperty("rowBoundsWithCount", "true");
        properties.setProperty("reasonable", "true");
        pageHelper.setProperties(properties);
        return pageHelper;
    }
}

9.添加controller

@Controller
public class UserController {
    @Resource
    private UsersMapper usersMapper;

    //添加页面
    @RequestMapping("add")
    public String add() {
        return "add";
    }

    //查找(用于查询)
    @RequestMapping("getUser")
    public String getUser(int id, Model model) throws Exception {
        Users Users = usersMapper.getUser(id);
        model.addAttribute("Users", Users);
        return "userShow";
    }
    
    ...
}

10.在templates添加.jsp页面

PageHelper详解:分页工具地址:MyBatis 分页插件 PageHelper

PageHelper.startPage(int PageNum,int PageSize): 用来设置页面的位置和展示的数据条目数;

PageInfo pageInfo = new PageInfo(list):PageInfo用来封装页面信息,返回给前台界面

pageHelper中一些常见的参数:

PageInfo.list  结果集
PageInfo.pageNum当前页码
PageInfo.pageSize当前页面显示的数据条目
PageInfo.pages总页数
PageInfo.total数据的总条目数
PageInfo.prePage上一页
PageInfo.nextPage下一页
PageInfo.isFirstPage    是否为第一页
PageInfo.isLastPage    是否为最后一页
PageInfo.hasPreviousPage    是否有上一页
PageHelper.hasNextPage    是否有下一页
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Spring Boot物资库存的增删,你可以按照以下步骤进行操作: 1. 增加物资:创建一个POST请求的接口,接收物资信息作为参数,并将其保存到数据库中。 ```java @PostMapping("/materials") public Material addMaterial(@RequestBody Material material) { // 保存物资到数据库 // 返回保存后的物资对象 return material; } ``` 2. 删除物资:创建一个DELETE请求的接口,接收物资ID作为参数,然后根据ID从数据库中删除对应的物资。 ```java @DeleteMapping("/materials/{id}") public void deleteMaterial(@PathVariable("id") Long id) { // 根据ID从数据库中删除物资 } ``` 3. 更新物资:创建一个PUT请求的接口,接收物资信息作为参数,并根据物资ID更新数据库中对应的物资信息。 ```java @PutMapping("/materials/{id}") public Material updateMaterial(@PathVariable("id") Long id, @RequestBody Material material) { // 根据ID获取物资对象 // 更新物资信息 // 返回更新后的物资对象 return material; } ``` 4. 询物资:创建一个GET请求的接口,可以根据不同的条件询物资信息,如根据ID询单个物资、询所有物资等。 ```java @GetMapping("/materials/{id}") public Material getMaterialById(@PathVariable("id") Long id) { // 根据ID从数据库中获取物资信息 // 返回获取到的物资对象 return material; } @GetMapping("/materials") public List<Material> getAllMaterials() { // 询所有物资信息 // 返回物资列表 return materials; } ``` 以上是一个简单的示例,你可以根据具体需求进行调整和优化。相关问题如下: 相关问题: 1. 如何在Spring Boot中使用数据库操作物资库存? 2. 如何实现物资库存的分页询? 3. 如何进行物资库存的数量统计?

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值