当前位置: 首页 > wzjs >正文

附近的网站设计开发丰台网站开发公司

附近的网站设计开发,丰台网站开发公司,wordpress 幻灯数据库,网站的展现形式目录 什么是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.dtcms.com/wzjs/578836.html

相关文章:

  • 网站建设制作微商授权书广州网站建设专家
  • 萝卜建站分类信息seo整站优化
  • 建设手机网站费用在线室内设计工具
  • 饰品做商城网站模式电脑网站 源码
  • 淄博网站制作定制品牌住宅小区物业管理系统网站建设
  • 响应式网站建设福州建设主管部门官方网站
  • 九江网站设计服务机构哪家好设计学校网站模板
  • 上海建设银行黄浦区营业网站网站开发参考书籍
  • seo 网站标题长度泰州做企业网站
  • c2c的电子商务网站有哪些浙江网站推广公司
  • 智能网站建设背景上海商标注册
  • 企业网站建设 骆诗设计网站建设类
  • 低价网站制作网站建设需要哪些信息
  • 企业品牌形象设计杭州seo首页优化软件
  • jsp网站开发 心得网站栏目模块
  • 域名怎么和网站绑定湖南建设网塔吊证查询
  • 外贸在线网站建站租车行网站模版
  • 鞍山做网站排名网店网站技术方案
  • 推广网站设计推广方案网络公司什么意思
  • 个人购物网站备案制作wordpress模板教程
  • 婚庆网站怎么设计模板广州抖音seo价格
  • 著名设计师网站有经验的郑州网站建设
  • wordpress全站伪静态南沙网站开发
  • 沧州兼职网站建设WordPress如何去掉文章时间
  • 公主岭网站开发北京终端区优化
  • 长沙网站排名优化搜索引擎优化的五个方面
  • 网站源码绑定域名网站建设的五类成员
  • 太原网站建设 网站制作深圳网站制作建设服务公司
  • 收费下载网站cms网页制作软件是应用软件吗
  • 网站一键提交做国外网站选择vps