一.条件构造器方法1.eqSqleqSql 方法是 MyBatis-Plus 中用于构建查询条件的高级方法之一,允许你设置一个字段等于(EQ)某个 SQL 语句的结果。这个方法特别适用于需要将字段值与子查询结果进行比较的场景。 方法签名12345// 设置指定字段等于 SQL 语句的结果eqSql(R column, String inValue)// 在条件满足时设置指定字段等于 SQL 语句的结果eqSql(boolean condition, R column, String inValue) 参数说明column:数据库字段名或使用 Lambda 表达式的字段名。 inValue:一个字符串,包含用于生成等于条件的 SQL 语句。 condition:一个布尔值,用于控制是否应用这个等于条件。 示例普通 Wrapper (QueryWrapper): 12QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.eqSql("id", "sel ...
课外开发
未读套餐管理1. Controller12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091package com.sky.controller.admin;import com.sky.dto.SetmealDTO;import com.sky.dto.SetmealPageQueryDTO;import com.sky.result.PageResult;import com.sky.result.Result;import com.sky.service.SetmealService;import com.sky.vo.SetmealVO;import io.swagger.annotations.Api;import io.swagger.annotations.ApiOperation;imp ...
1.1 Lambda 表达式的语法基本语法:(parameters) -> expression 或 (parameters) ->{ statements; } Lambda 表达式由三部分组成: paramaters:类似方法中的形参列表,这里的参数是函数式接口里的参数。这里的参数类型可以明确的声明也可不声明而由 JVM 隐含的推断。另外当只有一个推断类型时可以省略掉圆括号。 ->:可理解为“被用于”的意思 方法体:可以是表达式也可以代码块,是函数式接口里方法的实现。代码块可返回一个值或者什么都不反回,这里的代码块块等同于方法的方法体。如果是表达式,也可以返回一个值或者什么都不反回。 最经典的比如 java 中的 forEach 方法: 12345678910import java.util.Arrays;import java.util.List;public class LambdaExample { public static void main(String[] args) { List<String> ...
一.条件构造器方法1.eqeq 方法是 MyBatis-Plus 中用于构建查询条件的基本方法之一,它用于设置单个字段的相等条件。 使用范围QueryWrapper LambdaQueryWrapper UpdateWrapper LambdaUpdateWrapper 方法签名12345// 设置指定字段的相等条件eq(R column, Object val)// 根据条件设置指定字段的相等条件eq(boolean condition, R column, Object val) 参数说明column:数据库字段名或使用 Lambda 表达式的字段名。val:与字段名对应的值。condition:一个布尔值,用于控制是否应用这个相等条件。 示例普通 Wrapper (QueryWrapper): 12QueryWrapper<User> queryWrapper = new QueryWrapper<>();queryWrapper.eq("name", "老王"); Lambda Wrapper (Lambda ...
一.条件构造器MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件。Wrapper 类允许开发者以链式调用的方式构造查询条件,无需编写繁琐的 SQL 语句,从而提高开发效率并减少 SQL 注入的风险。 在 MyBatis-Plus 中,Wrapper 类是构建查询和更新条件的核心工具。以下是主要的 Wrapper 类及其功能: AbstractWrapper:这是一个抽象基类,提供了所有 Wrapper 类共有的方法和属性。它定义了条件构造的基本逻辑,包括字段(column)、值(value)、操作符(condition)等。所有的 QueryWrapper、UpdateWrapper、LambdaQueryWrapper 和 LambdaUpdateWrapper 都继承自 AbstractWrapper。 QueryWrapper:专门用于构造查询条件,支持基本的等于、不等于、大于、小于等各种常见操作。它允许你以链式调用的方式添加多个查询条件,并且可以组合使用 and 和 or 逻辑。 UpdateWrapper:用于构造更新条件, ...
1.MyBatis-plus 基础1.1.mybatis-plus 简介MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。 MyBatis-plus 官网:https://baomidou.com/ 特点: 润物无声:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑。 效率至上:只需简单配置,即可快速进行单表 CRUD 操作,从而节省大量时间。 丰富功能:代码生成、自动分页、逻辑删除、自动填充等功能一应俱全 1.2.基本使用 插入依赖 12345<dependency> <groupId>com.baomidou</groupId> <artifactId>mybatis-plus-spring-boot3-starter</artifactId> <version>3.5.7</version></dependency> 配置文件,这里只配置了数据库,可以加 ...
课外开发
未读一.公共字段自动填充方法一:使用 AOP 切面编程方式自定义注解AutoFill,用于标识需要进行公共字段自动填充的方法 自定义切面类AutoFillAspect,统一拦截加入了AutoFill注解的方法,通过反射为公共字段赋值 在Mapper的方法上加入AutoFill注解 AutoFill 注解类 12345678910111213141516import com.sky.enumeration.OperationType;import java.lang.annotation.ElementType;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;import java.lang.annotation.Target;/** * 自动填充注解 */@Target(ElementType.METHOD)//方法上@Retention(RetentionPolicy.RUNTIME)//运行时public @interface AutoFill { ...
7.2 创建JDBC应用 7.2.1 创建JDBC应用程序的步骤使用JDBC操作数据库中的数据包括6个基本操作步骤:(1)载入JDBC驱动程序:首先要在应用程序中加载驱动程序driver,使用Class.forName()方法加载特定的驱动程序,每种数据库管理系统的驱动程序不同,由数据库厂商提供。(2)定义连接URL,建立数据库连接对象:通过DriverManager类的getConnection()方法获得表示数据库连接的Connection类对象。(3)创建Statement对象获取Connection对象以后,可以用Connection对象的方法创建一个Statement对象的实例。(4)执行查询或更新:Statement对象可以执行SELECT语句的executeQuery()方法或执行INSERT、UPDATE、DELETE语句的executeUpdate()方法。(5)操作结果集:利用ResultSet对象对数据库操作返回的结果进行处理。ResultSet包含一些用来从结果集中获取数据并保存到Java变量中的方法。主要包括next()方法,用于移动结果集游标,逐行处理结果集 ...
7.1JDBC概述JDBC提供了在Java程序中直接访问数据库的功能,那么,什么是JDBC?JDBC是如何工作的?本节将介绍JDBC的这些基本知识。 7.1.1JDBC框架介绍JDBC(Java DataBase Connectivity) 称为Java数据库连接,它是一种用于数据库访问的应用程序API,由一组Java语言编写的类和接口组成,有了JDBC就可以用统一的语法对多种关系数据库进行访问,而不用担心其数据库操作语言的差异。 JDBC框架隔离了Java代码和具体的数据库,用户能够以相同的方式连接多种不同的数据库系统,即可以实现即使切换数据库服务器也不必变改写Java代码。如图所示 JDBC连接数据库之前必须先装载特定厂商提供的数据库驱动程序(Driver),通过JDBC的API访问数据库。有了JDBC技术,就不必为访问Mysql数据库专门写一个程序,为访问Oracle又专门写一个程序等等。 7.1.2 JDBC的体系结构JDBC的结构可划分为两层:一个是面向底层的JDBC Driver Interface(驱动程序管理器接口),另一个是面向程序员的JDBC核心API,如图7-2 ...
一.项目介绍该项目是基于 Python 爬虫的淘宝服装数据分析项目,以致于帮助商家了解当前服装市场的需求,制定更加精确的营销策略。首先,需要爬取淘宝中关于服装的大量数据,然后对数据进行处理和分析,比如处理重复值,提取关键信息,统计分析等等,最后,通过 Echarts 将处理后的数据进行可视化展示,可以更为直观的看到服装市场的趋势和变化。 二.爬虫代码123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144 ...