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

多国语言网站百度上做优化一年多少钱

多国语言网站,百度上做优化一年多少钱,怎样下载网页的视频,百度如何把网站做链接地址目录 一、概念 1、什么是mybatisplus 2、为什么要使用mybatisplus 二、mybatisplus的使用 1、安装 2、常用注解 3、条件构造器 一、概念 1、什么是mybatisplus MyBatis-Plus(简称MP)是一个基于MyBatis的增强框架,旨在简化开发、提高…

目录

一、概念

1、什么是mybatisplus

2、为什么要使用mybatisplus

二、mybatisplus的使用

1、安装

2、常用注解

3、条件构造器 


一、概念

1、什么是mybatisplus

MyBatis-Plus(简称MP)是一个基于MyBatis的增强框架,旨在简化开发、提高效率。

2、为什么要使用mybatisplus

① mybatisplus为我们提供好了基础的增删改查sql,仅仅是针对单表操作的增删改查。

② 为我们提供了一些好用的插件,例如分页插件、乐观锁插件具体使用参考官网 

③ 为我们提供了一些好用的功能,比如代码生成、枚举映射、逻辑删除、主键生成等等具体参考官网 

二、mybatisplus的使用

1、安装

首先需要引入mybatisplus的起步依赖(其中包含mybatis,基于springboot的起步依赖原理)

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

其次mapper和service层需要继承basemapper、Iservice,serviceimpl,注意其中的泛型需要指定,泛型的类型就是要操作的数据库表对应的实体类。

2、常用注解

① @TableName

  • 描述:表名注解,标识实体类对应的表

  • 使用位置:实体类

示例:

@TableName("user")
public class User {private Long id;private String name;
}

TableName注解除了指定表名以外,还可以指定很多其它属性:

属性类型必须指定默认值描述
valueString""表名
schemaString""schema
keepGlobalPrefixbooleanFALSE是否保持使用全局的 tablePrefix 的值(当全局 tablePrefix 生效时)
resultMapString""xml 中 resultMap 的 id(用于满足特定类型的实体类对象绑定)
autoResultMapbooleanFALSE是否自动构建 resultMap 并使用(如果设置 resultMap 则不会进行 resultMap 的自动构建与注入)
excludePropertyString[]{}需要排除的属性名 @since 3.3.1

 ② @tableId

说明:

  • 描述:主键注解,标识实体类中的主键字段

  • 使用位置:实体类的主键字段

示例:

@TableName("user")
public class User {@TableIdprivate Long id;private String name;
}

tableId注解支持的两个属性:

属性类型必须指定默认值描述
valueString""表名
typeEnumIdType.NONE指定主键类型

 IdType支持的类型有:

描述
AUTO数据库 ID 自增
NONE无状态,该类型为未设置主键类型(注解里等于跟随全局,全局里约等于 INPUT)
INPUTinsert 前自行 set 主键值
ASSIGN_ID分配 ID(主键类型为 Number(Long 和 Integer)或 String)(since 3.3.0),使用接口IdentifierGenerator的方法nextId(默认实现类为DefaultIdentifierGenerator雪花算法)
ASSIGN_UUID分配 UUID,主键类型为 String(since 3.3.0),使用接口IdentifierGenerator的方法nextUUID(默认 default 方法)
ID_WORKER分布式全局唯一 ID 长整型类型(please use ASSIGN_ID)
UUID32 位 UUID 字符串(please use ASSIGN_UUID)
ID_WORKER_STR分布式全局唯一 ID 字符串类型(please use ASSIGN_ID)

这里比较常见的有三种:

  • AUTO:利用数据库的id自增长

  • INPUT:手动生成id

  • ASSIGN_ID:雪花算法生成Long类型的全局唯一id,这是默认的ID策略

③ @TableField

说明:

描述:普通字段注解

示例:

@TableName("user")
public class User {@TableIdprivate Long id;private String name;private Integer age;@TableField("isMarried")private Boolean isMarried;@TableField("concat")private String concat;
}

一般情况下我们并不需要给字段添加@TableField注解,一些特殊情况除外:

  • 成员变量名与数据库字段名不一致

  • 成员变量是以isXXX命名,按照JavaBean的规范,MybatisPlus识别字段时会把is去除,这就导致与数据库不符。

  • 成员变量名与数据库一致,但是与数据库的关键字冲突。使用@TableField注解给字段名添加``转义

支持的其它属性如下:

属性类型必填默认值描述
valueString""数据库字段名
existbooleanTRUE是否为数据库表字段
conditionString""字段 where 实体查询比较条件,有值设置则按设置的值为准,没有则为默认全局的 %s=#{%s},参考(opens new window)
updateString""字段 update set 部分注入,例如:当在version字段上注解update="%s+1" 表示更新时会 set version=version+1 (该属性优先级高于 el 属性)
insertStrategyEnumFieldStrategy.DEFAULT举例:NOT_NULL
insert into table_a(<if test="columnProperty != null">column</if>) values (<if test="columnProperty != null">#{columnProperty}</if>)
updateStrategyEnumFieldStrategy.DEFAULT举例:IGNORED
update table_a set column=#{columnProperty}
whereStrategyEnumFieldStrategy.DEFAULT举例:NOT_EMPTY
where <if test="columnProperty != null and columnProperty!=''">column=#{columnProperty}</if>
fillEnumFieldFill.DEFAULT字段自动填充策略
selectbooleanTRUE是否进行 select 查询
keepGlobalFormatbooleanFALSE是否保持使用全局的 format 进行处理
jdbcTypeJdbcTypeJdbcType.UNDEFINEDJDBC 类型 (该默认值不代表会按照该值生效)
typeHandlerTypeHander类型处理器 (该默认值不代表会按照该值生效)
numericScaleString""指定小数点后保留的位数

3、条件构造器 

①  MyBatis-Plus 提供了一套强大的条件构造器(Wrapper),用于构建复杂的数据库查询条件。Wrapper 类允许开发者以链式调用的方式构造查询条件,无需编写繁琐的 SQL 语句,从而提高开发效率并减少 SQL 注入的风险。

②具体使用

QueryWrapper需要手写字段名,容易错。示例如下:

@Testpublic void test1() {//select id,username,info,balance from user where username like "%o%" and balance >= 1000List<User> users = userMapper.selectList(new QueryWrapper<User>().like("username", "o").ge("balance", 1000).select("id", "username", "info", "balance"));

LambdaQueryWrapper使用实体类的Lambda表达式,字段不会错。示例如下:

//select id,username,info,balance from user where username like "%o%" and balance >= 1000
List<User> userList = userMapper.selectList(new LambdaQueryWrapper<User>().like(User::getUsername, "o").ge(User::getBalance, 1000).select(User::getId, User::getBalance, User::getInfo, User::getUsername));System.out.println(userList);

LamdUpdateWrapper 相较于LamdQueryWrapper多了个set方法,用于修改语句 setSql 手写sql语句拼上去

示例如下:

//案例:在原来金额的基础上减去200userMapper.update(null, new LambdaUpdateWrapper<User>().setSql("balance = balance - 200").in(User::getId, Arrays.asList(1L, 2L, 4L)));

由于篇幅过长,剩余部分下篇续写。有何问题请各位大佬指出共同进步!

http://www.hkea.cn/news/623349/

相关文章:

  • 网站开发制作公司郑州网站建设外包
  • 注册域名用个人还是公司好长沙seo优化排名
  • 电子商务网站建设与维护展望今日新闻联播
  • 网站建设主流技术站长之家ping检测
  • 温州建设集团有限公司网站首页百度手机版网页
  • 广西网络干部学院官网seo推广人员
  • 可以做红娘的相亲网站江北seo综合优化外包
  • 公司建设网站需要注意什么软文广告示范
  • 高端网站建设 引擎技企业网页
  • 模仿别人网站百度外链查询工具
  • 教程建设网站广告免费发布信息平台
  • wordpress php5.4支持宁波seo排名优化
  • 宁波制作网站哪个好百度怎么发自己的小广告
  • 新浪网站用什么语言做的百度软件下载
  • wordpress如何做网站重庆seo俱乐部联系方式
  • 教育局两学一做网站深圳全网推广平台
  • 淘宝做详情页代码网站免费大数据查询平台
  • 苹果做安卓游戏下载网站好新媒体营销案例ppt
  • 网络营销实务关键词优化seo优化排名
  • 网站推广优化教程游戏代理加盟平台
  • 网站提升权重全国疫情高峰感染进度
  • 营销型网站怎么做智能建站abc
  • 捷信做单官方网站网络服务主要包括什么
  • 网站建设的方案费用什么时候网络推广
  • 这么做3d展示网站公司百度官网优化
  • 工业设计软件上市公司搜索引擎优化的方法
  • 网站建设公司创意网站网络推广推广
  • 浙江三建建设集团有限公司网站关键词的作用
  • 网站建设官方网站教育培训机构加盟十大排名
  • 万网上传网站seo免费