千家信息网

springboot2结合mybatis实现增删改查的功能

发表于:2024-09-21 作者:千家信息网编辑
千家信息网最后更新 2024年09月21日,本篇内容主要讲解"springboot2结合mybatis实现增删改查的功能",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"springboot2结合myb
千家信息网最后更新 2024年09月21日springboot2结合mybatis实现增删改查的功能

本篇内容主要讲解"springboot2结合mybatis实现增删改查的功能",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"springboot2结合mybatis实现增删改查的功能"吧!

1. 场景描述

本节结合springboot2、springmvc、mybatis、swagger2等,搭建一个完整的增删改查项目,希望通过这个基础项目,能帮忙朋友快速上手springboot2项目。

2. 解决方案

2.1新建springboot项目

使用idea新建springboot项目(springboot项目快速搭建)

(1)new project

(2)gav设置

2.2 项目整体图及说明2.2.1 整体图

2.2.2 说明

项目包含4大内容

(1)pom.xml

maven项目必备,用于定义项目、获取jar包、打包等。

(2)项目配置文件

有两个,一个是项目内配置文件;一个是用于mybatis-generate生成相关数据库操作文件。

(3)spcrudapplication

项目启动类,springboot项目必备。

(4)springmvc对应类。

包含controller、service、db等相关类。

2.3 详细说明

2.3.1 pom文件

4.0.0 org.springframework.boot spring-boot-starter-parent 2.1.7.RELEASE com.laowang spcrud 0.0.1-SNAPSHOT spcrud Demo project for Spring Boot 1.8 org.springframework.boot spring-boot-starter-web org.springframework.boot spring-boot-starter-test test mysql mysql-connector-java 8.0.15 org.springframework.boot spring-boot-starter-jdbc 2.1.5.RELEASE io.springfox springfox-swagger2 2.7.0 io.springfox springfox-swagger-ui 2.7.0 org.mybatis.spring.boot mybatis-spring-boot-starter 2.1.0 src/main/resources/ src/main/java **/*.xml org.springframework.boot spring-boot-maven-plugin org.mybatis.generator mybatis-generator-maven-plugin 1.3.5 src/main/resources/generatorConfig.xml true true

说明:

包含5块内容

(1)web启动包 ;

(2)数据库 ;

(3)swagger;

(4)mybatis;

(5)打包;

2.3.2 资源文件

(1)application.properties

spring.datasource.url=jdbc:mysql://127.0.0.1:3306/ruanjianlaowang?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8spring.datasource.username=rootspring.datasource.password=root

说明: 数据库配置文件,连接、用户名、密码

(2)mybatis资源文件

说明:

包含几块内容:

(a)classPathEntry 标签定义的是mysql-connector的jar包地址

(b)jdbcConnection 数据库连接信息

(c)javaModelGenerator、sqlMapGenerator、javaClientGenerator定义的是生成文件存放的地址;

(d)table具体执行生成代码的tabel,增加几个标签,不生成example方法。

2.3.3 启动类

package com.laowang.spcrud;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import springfox.documentation.swagger2.annotations.EnableSwagger2;@SpringBootApplication@EnableSwagger2@MapperScan("com.laowang.spcrud.db.mapper")public class SpcrudApplication { public static void main(String[] args) { SpringApplication.run(SpcrudApplication.class, args); }}

说明:

@SpringBootApplication所有springboot项目启动必备

@EnableSwagger2 启动swagger

@MapperScan加载mpper文件。

2.3.4 springmvc类

(1)TestController

package com.laowang.spcrud;import org.mybatis.spring.annotation.MapperScan;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication;import springfox.documentation.swagger2.annotations.EnableSwagger2;@SpringBootApplication@EnableSwagger2@MapperScan("com.laowang.spcrud.db.mapper")public class SpcrudApplication { public static void main(String[] args) { SpringApplication.run(SpcrudApplication.class, args); }}

ctroller类包含增删改查4个方法,使用了rest请求的方式。

(2)TestService

package com.laowang.spcrud.service;import com.laowang.spcrud.db.entity.TLaowang;import com.laowang.spcrud.db.mapper.TLaowangMapper;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Service;@Servicepublic class TestService { @Autowired private TLaowangMapper tLaowangMapper; /** * 增加 * @auther: 软件老王 */ public void insertRecord(TLaowang tLaowang) { tLaowangMapper.insert(tLaowang); } /** * 删除 * @auther: 软件老王 */ public void deleteByPrimaryKey(int id) { tLaowangMapper.deleteByPrimaryKey(id); } /** * 更新 * @auther: 软件老王 */ public void updateByPrimaryKeySelective(TLaowang tLaowang) { tLaowangMapper.updateByPrimaryKeySelective(tLaowang); } /** * 查询 * @auther: 软件老王 */ public TLaowang selectByPrimaryKey(int id) { return tLaowangMapper.selectByPrimaryKey(id); }}

TestService类,增删改查的服务类。

(3)实体类TLaowang

package com.laowang.spcrud.db.entity;public class TLaowang { private Integer id; private String name; private String password; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name == null ? null : name.trim(); } public String getPassword() { return password; } public void setPassword(String password) { this.password = password == null ? null : password.trim(); }}

操作实体类,包含三个字段:id、name、password

(4)mpper接口类TLaowangMapper

package com.laowang.spcrud.db.mapper;import com.laowang.spcrud.db.entity.TLaowang;public interface TLaowangMapper { int deleteByPrimaryKey(Integer id); int insert(TLaowang record); int insertSelective(TLaowang record); TLaowang selectByPrimaryKey(Integer id); int updateByPrimaryKeySelective(TLaowang record); int updateByPrimaryKey(TLaowang record);}

(5)mapper接口xml

id, name, password delete from t_laowang where id = #{id,jdbcType=INTEGER} SELECT LAST_INSERT_ID() insert into t_laowang (name, password) values (#{name,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}) SELECT LAST_INSERT_ID() insert into t_laowang name, password, #{name,jdbcType=VARCHAR}, #{password,jdbcType=VARCHAR}, update t_laowang name = #{name,jdbcType=VARCHAR}, password = #{password,jdbcType=VARCHAR}, where id = #{id,jdbcType=INTEGER} update t_laowang set name = #{name,jdbcType=VARCHAR}, password = #{password,jdbcType=VARCHAR} where id = #{id,jdbcType=INTEGER}

4与5在一起,这里使用了mybatis自动生成的增删改查方法,未做扩展,真实项目中除了这几个外,肯定还会做些扩展,比如根据name查询等。

2.4 数据库建表语句

CREATE TABLE `t_laowang` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(50) DEFAULT NULL, `password` varchar(50) DEFAULT NULL, PRIMARY KEY (`id`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

到此,相信大家对"springboot2结合mybatis实现增删改查的功能"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

项目 文件 数据 数据库 生成 内容 方法 软件 老王 功能 查询 配置 地址 实体 接口 整体 朋友 标签 资源 学习 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 名人数据库 软件开发实施方案 百度文库 购买服务后还承担网络安全责任吗 ivx数据库检索 网络安全 学生 湖北工控软件开发哪家好 2020互联网黑科技 底层软件开发需要懂硬件知识吗 数据库中永久删除表的命令 信息网络安全专业是干什么的 河南省深度网络技术有限公司 武汉悦购互联网科技有限公司 数据库删除所有数据命令 计算机网络技术论文前沿 防诈骗网络安全知识竞赛简答题 完整版传奇服务器端 网络技术是电信业务网 上海智慧园区软件开发费用 平谷区信息网络技术服务哪家好 构建服务器 疫情期间企业网络安全预算 网络技术公司有哪些职位 采矿权数据库清理工作总结 武汉悦购互联网科技有限公司 陕西松毅软件开发年终奖 ios软件开发版怎么安装 box虚拟机创建dhcp服务器 数据库读取有字符格式吗 品牌的语音对讲软件开发 安徽互联网展览科技馆设计
0