淄博网站建设公司有几家/win7优化大师免安装版

淄博网站建设公司有几家,win7优化大师免安装版,网站 扁平化,网站谷歌地图提交目录 什么是mybatisplus? 创建项目 先创建一个简单的Java项目​编辑 引入依赖 1.引入父依赖 2.引入其他依赖 springboot配置 application.yml qppication-dev.yml 创建包 实体类 映射(创建一个接口) 构建测试环境 进行方法的实…

目录

什么是mybatisplus?

创建项目

先创建一个简单的Java项目​编辑

引入依赖

1.引入父依赖

2.引入其他依赖

springboot配置

application.yml

qppication-dev.yml

创建包

实体类

映射(创建一个接口)

构建测试环境

进行方法的实现

mybatis分页原理


什么是mybatisplus?

  MyBatis-Plus 是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生.

官网地址:MyBatis-Plus 🚀 为简化开发而生

创建项目

先创建一个简单的Java项目

引入依赖

1.引入父依赖

    <parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.13</version></parent>

   该父依赖定义了大量常用依赖的默认版本号。当你的项目引入了这个父 依赖 后,在声明依赖时可以省略版本号。

2.引入其他依赖

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

以上依赖会自动引入构建 Web 应用所需的核心组件,主要包括:

 Spring MVC:Spring 框架提供的用于构建 Web 应用的模块

 Tomcat:Spring Boot 默认集成的嵌入式 Servlet 容器,用于处理 HTTP 请求

 Jackson:用于处理 JSON 数据的 Java 库

下面我们引入与数据库相关的依赖:

        <dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId></dependency>

上述依赖可以帮助我们建立数据库连接

        <dependency><groupId>com.alibaba</groupId><artifactId>druid-spring-boot-starter</artifactId><version>1.2.18</version></dependency>

上述依赖帮助数据库连接池管理

        <dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.10.1</version></dependency>

上述依赖为mybatisplus的依赖,他的主要功能是基于 MyBatis 进行了增强,提供了大量的通用 CRUD(创建、读取、更新、删除)操作方法,开发者无需编写复杂的 SQL 语句,通过调用 MyBatis-Plus 提供的方法就能完成基本的数据库操作。


  下面这个依赖通过注解自动生成常见的代码(如 getter、setter、构造函数、toString() 方法等),从而让代码更简洁、易读。

        <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></dependency>

下面这个依赖帮助编写单元测试

        <dependency><groupId>junit</groupId><artifactId>junit</artifactId><scope>test</scope></dependency>

下面这个依赖集成了多个在 Java 测试领域广泛使用的框架,这些框架为不同类型的测试提供了丰富的功能和便捷的工具

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

引入依赖之后,我们开始创建数据库,这里就不进行详细的创建过程了

数据库创建完成后,我们开始构建项目。

springboot配置

application.yml

spring:profiles:active: dev

qppication-dev.yml

#端口
server:port: 9099
#数据源配置
spring:datasource:druid:url: jdbc:mysql://localhost:3306/book_db?useUnicode=true&characterEncoding=utf8&useSSL=false&serverTimezone=Asia/Shanghai&allowPublicKeyRetrieval=trueusername: rootpassword: rootdriver-class-name: com.mysql.cj.jdbc.Driverredis:port: 6379host: localhostdatabase: 0
#日志
logging:level:com.ffyc.springboot: debug

创建包

实体类

@TableName("book_tab")//与数据库表名一致
@Data
@AllArgsConstructor
@NoArgsConstructor
public class Book {@TableId(value = "book_id", type = IdType.AUTO)//主键,设置为自增private Integer id;//主键@TableField("book_title")//其他列使用TableField,与数据库字段一一对应private String title;@TableField("book_author")private String author;@TableField("book_price")private  Double price;@TableField("book_desc")private String descx;
}

映射(创建一个接口)

@Mapper//该接口生成代理实现类,无需手动实现代码
public interface IBookMapper extends BaseMapper<Book> {}

构建测试环境

@SpringBootTest//测试的注解
@RunWith(SpringJUnit4ClassRunner.class)
public class IBookMapperTest {@Autowired//依赖注入private IBookMapper mapper;
}

进行方法的实现

    @Testpublic void testSave(){for (int i = 21; i < 40; i++) {Book book =new Book();book.setTitle("西游记"+i);book.setAuthor("吴承恩"+i);book.setDescx("四人");book.setPrice(123.34+i);mapper.insert(book);}}

    @Testpublic void testDelete(){int ID=-324280319;mapper.deleteById(ID);}

    @Testpublic void testUpdate(){Book book =new Book();book.setId(1);book.setDescx("四人取经");mapper.updateById(book);}

全查询

    @Testpublic void testFindAll(){//mapper.selectList(null);System.out.println(mapper.selectList(null));}

模糊查询 

    @Testpublic void testFindCondition(){LambdaQueryWrapper<Book> queryWrapper=new LambdaQueryWrapper<>();//queryWrapper.like(Book::getAuthor,"吴");queryWrapper.eq(Book::getAuthor,"吴承恩").eq(Book::getTitle,"西游记");}

mybatis分页原理

解决了数据量过大的问题,显示规定范围内的数据量

    @Testpublic void testPage() {IPage<Book> page = new Page<>();page.setCurrent(1);page.setSize(20); //limit 0,50LambdaQueryWrapper<Book> queryWrapper = new LambdaQueryWrapper<>();IPage<Book> bookIPage = mapper.selectPage(page, queryWrapper);System.out.println(bookIPage.getRecords());//        books.forEach(System.out::println);}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/71539.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

使用 uniapp 开发标准体重计算小程序

引言 在现代生活中&#xff0c;健康管理越来越受到重视&#xff0c;而体重是衡量健康状况的重要指标之一。为了方便用户快速计算自己的标准体重并了解体重状态&#xff0c;我使用 uniapp 开发了一款简单的标准体重计算小程序。本文将详细介绍开发过程&#xff0c;并分享核心代…

Linux部署java项目

前言 Xshell下载地址 点击连接 常见命令 ls ls:显示当前目录下的文件 ll:可以显示隐藏文件和非隐藏文件与ls -l一样 ls -a -l这两个掌握就可以了 ls --help就可以知道这个后面可以跟什么 ls -al还可以这样 cd cd&#xff1a;进入文件夹 cd后面可以跟相对路径&#xff0…

基于Matlab的多目标粒子群优化

在复杂系统的设计、决策与优化问题中&#xff0c;常常需要同时兼顾多个相互冲突的目标&#xff0c;多目标粒子群优化&#xff08;MOPSO&#xff09;算法应运而生&#xff0c;作为群体智能优化算法家族中的重要成员&#xff0c;它为解决此类棘手难题提供了高效且富有创新性的解决…

Python 爬取唐诗宋词三百首

你可以使用 requests 和 BeautifulSoup 来爬取《唐诗三百首》和《宋词三百首》的数据。以下是一个基本的 Python 爬虫示例&#xff0c;它从 中华诗词网 或类似的网站获取数据并保存为 JSON 文件。 import requests from bs4 import BeautifulSoup import json import time# 爬取…

辛格迪客户案例 | 深圳善康医药科技GMP培训管理(TMS)项目

01 善康医药&#xff1a;创新药领域的探索者 深圳善康医药科技股份有限公司自2017年创立以来&#xff0c;便扎根于创新药研发领域&#xff0c;专注于成瘾治疗药物的研究、生产与销售。公司坐落于深圳&#xff0c;凭借自身独特的技术优势与研发实力&#xff0c;在行业内逐渐崭露…

【长安大学】苹果手机/平板自动连接认证CHD-WIFI脚本(快捷指令)

背景&#xff1a; 已经用这个脚本的记得设置Wifi时候&#xff0c;关闭“自动登录” 前几天实在忍受不了CHD-WIFI动不动就断开&#xff0c;一天要重新连接&#xff0c;点登陆好几次。试了下在网上搜有没有CHD-WIFI的自动连接WIFI自动认证脚本&#xff0c;那样我就可以解放双手&…

Vue+el-upload配置minIO实现大文件的切片并发上传、上传进度展示、失败重试功能

vue3el-upload实现切片上传 效果图 初始界面 上传中的界面 上传完成的界面 上传失败的界面 <template><div><el-uploadclass"BigFileUpload"ref"uploadRef"action"#"drag:show-file-list"false":on-change"…

Kubespray部署企业级高可用K8S指南

目录 前言1 K8S集群节点准备1.1 主机列表1.2 kubespray节点python3及pip3准备1.2.1. 更新系统1.2.2. 安装依赖1.2.3. 下载Python 3.12源码1.2.4. 解压源码包1.2.5. 编译和安装Python1.2.6. 验证安装1.2.7. 设置Python 3.12为默认版本&#xff08;可选&#xff09;1.2.8. 安装pi…

审批流AntV框架蚂蚁数据可视化X6饼图(注释详尽)

大家好&#xff0c;这次使用的是AntV的蚂蚁数据可视化X6框架&#xff0c;类似于审批流的场景等&#xff0c;代码如下&#xff1a; X6框架参考网址&#xff1a;https://x6.antv.vision/zh/examples/showcase/practices#bpmn 可以进入该网址&#xff0c;直接复制下方代码进行调试…

用于管理 Elasticsearch Serverless 项目的 AI Agent

作者&#xff1a;来自 Elastic Fram Souza 由自然语言驱动的 AI 代理&#xff0c;可轻松管理 Elasticsearch Serverless 项目 - 支持项目创建、删除和状态检查。 这个小型命令行工具让你可以用简单的英语管理你的无服务器 Elasticsearch 项目。它通过AI&#xff08;这里是 Ope…

通过计费集成和警报监控 Elasticsearch Service 成本

作者&#xff1a;来自 Elastic Alexis Charveriat 使用 Elasticsearch 服务计费集成来跟踪、定制和提醒 Elasticsearch 服务费用。 监控和管理你的Elasticsearch服务&#xff08;ESS&#xff09;使用情况和成本对高效运营至关重要。 Elasticsearch服务计费集成提供了一种简化的…

【第12节】C++设计模式(结构型模式)-Proxy(代理)模式

一、问题背景 使用 Proxy 模式优化对象访问 在某些情况下&#xff0c;直接访问对象可能会导致性能问题或安全性问题。Proxy 模式&#xff08;代理模式&#xff09;通过引入一个代理对象来控制对原始对象的访问&#xff0c;从而解决这些问题。以下是几种典型的应用场景&#xf…

Python-07PDF转Word

2025-03-04-PDF转Word DeepSeek等大模型从来都不是简单的写一个静态博客这么肤浅&#xff08;太多博主都只讲这个内容了&#xff09;借助全网大神的奇思妙想&#xff0c;拓展我狭隘的思维边界。 文章目录 2025-03-04-PDF转Word [toc]1-参考网址2-学习要点3-核心逻辑4-核心代码 …

XTDrone+Mavros+Gazebo仿真——配置与控制不同的无人机

参考资料为XTDrone官方文档&#xff1a; 配置与控制不同的无人机 语雀XTDrone目前支持多旋翼飞行器&#xff08;multiroto...https://www.yuque.com/xtdrone/manual_cn/vehicle_config# 1、修改无人机机型为solo 以outdoor3.launch为例&#xff0c;讲解如何配置不同的机型 …

快速熟悉JavaScript

目录 1.js的基本认知 2.js的基本语法 2.1 变量的声明 三个关键字的区别 2.2数据类型 2.2.1 基本数据类型 2.2.2 复杂数据类型 2.3对象的属性和方法 2.3.1属性 2.3.2访问方式 2.4.3动态操作 2.4.4方法 2.4字符串的常用属性和方法 2.5运算符 2.6逻辑控制语句 2.7函…

perl初试

我手头有一个脚本&#xff0c;用于从blastp序列比对的结果文件中&#xff0c;进行文本处理&#xff0c; 获取序列比对最优的hit记录 #!/usr/bin/perl -w use strict;my ($blast_out) ARGV; my $usage "This script is to get the best hit from blast output file wit…

unity6 打包webgl注意事项

webgl使用资源需要异步加载 使用localization插件时要注意&#xff0c;webgl不支持WaitForCompletion&#xff0c;LocalizationSettings.InitializationOperation和LocalizationSettings.StringDatabase.GetTable都不能用 web里想要看到具体的报错信息调试开启这两个&#xf…

Three.js 入门(基础材质、贴图、纹理、环境、遮蔽光、透明度、高光贴图)

本篇主要学习内容 : three常用的几种材质环境贴图、贴图、环境光、遮蔽光、透明度、高光贴图&#xff08;纹理贴图&#xff09; 点赞 关注 收藏 学会了 1.three常用的几种材质 1.1&#xff09; 基础网格材质MeshBasicMaterial、漫反射网格材质MeshLambertMaterial、高光…

【大模型安全】大模型的技术风险

【大模型安全】大模型的技术风险 1.DDoS攻击2.常见的传统网络攻击方式3.恶意意图的识别4.AI生成虚假信息传播5.利用AI进行黑客攻击6.模型对抗攻击7.后门攻击8.Prompt攻击9.数据投毒攻击10.模型窃取攻击11.数据窃取攻击 1.DDoS攻击 2023年11月9日凌晨&#xff0c;OpenAI在官网公…

C++学习之路,从0到精通的征途:入门基础

目录 一.C的第一个程序 二.命名空间 1.namespace的价值 2.命名空间的定义 3.命名空间使用 三.C的输入与输出 1.<iostream> 2.流 3.std(standard) 四.缺省参数 1.缺省参数的定义 2.全缺省/半缺省 3.声明与定义 ​五.函数重载 1.参数个数不同 2.参数类型不…