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

网站定位策划百度品牌广告收费标准

网站定位策划,百度品牌广告收费标准,国外推广国内网站,cc彩球网站总代理怎么做目录 一、MyBatis-Plus的使用步骤 1.引入MybatisPlus的起步依赖 2.定义Mapper(也叫dao)层的接口 3.MyBatis-Plus中常用注解 4. 使用MyBatis-Plus时要做如下配置 5.条件构造器 Wrapper 一、MyBatis-Plus的使用步骤 1.引入MybatisPlus的起步依赖 M…

目录

一、MyBatis-Plus的使用步骤

1.引入MybatisPlus的起步依赖

2.定义Mapper(也叫dao)层的接口

3.MyBatis-Plus中常用注解

4. 使用MyBatis-Plus时要做如下配置

5.条件构造器 Wrapper


一、MyBatis-Plus的使用步骤

1.引入MybatisPlus的起步依赖

MyBatisPlus官方提供了starter依赖包,其中集成了Mybatis和MybatisPlus的所有功能,并且实现了自动装配效果。
因此我们可以用_MybatisPlusstarter_直接代替Mybatisstarter:

<!--Mybatisplus-->
<dependency><groupId>com.baomidou</groupId><artifactId>mybatis-plus-boot-starter</artifactId><version>3.5.3.1</version>
</dependency>
2.定义Mapper(也叫dao)层的接口

用我们自定义的dao接口继承MybatisPlus提供的BaseMapper接口:

public interface UserMapper extends BaseMapper<User>?{
}

在该接口中,提供了许多基本的sql增删改查方法,我们无需写sql语句,直接调用这些方法即可完成对数据的增删改查;

3.MyBatis-Plus中常用注解

MyBatisPlus会通过扫描实体类,并基于反射获取实体类的属性名称,然后匹配到数据库表中相应字段。具体关系如下图:

因此,我们在定义实体类和数据库表时,应该遵循MP中一些默认的约定(规范)来确保字段名和属性名正确的匹配到。约定如下:

  • 类名:蛇峰转下刘线作为表名
  • 名为id的属性:作为表中的主键
  • 变量名:陀峰转下刘线作为表的字段名

如果在写Java代码时,我们某些代码不想符合上述三条约定的写法;也可以使用MP中的常见注解来自定义约定,如下:

4. 使用MyBatis-Plus时要做如下配置

(1)如果是在Spring Boot 工程中,要配置Mapper接口所在的包:在Spring Boot的启动类上添加**@MapperScan**注解,并指定Mapper接口所在的包路径。

@SpringBootApplication
@MapperScan("com.baomidou.mybatisplus.samples.quickstart.mapper")
public class Application {
?? ?public static void main(String[] args) {? ? ? ?SpringApplication.run(Application.class, args);?  }
?
}

注意:在该例子中:**“com.baomidou.mybatisplus.samples.quickstart.mapper”**是 MyBatis-Plus 官方示例项目中的一个包路径,用于存放示例的 Mapper 接口。在实际应用中,你应该将@MapperScan注解中的字符串参数替换为你自己的项目中 Mapper 接口所在的包路径。

(2)在Spring MVC工程中使用MyBatis-Plus要做如下配置

①首先,在.xml配置文件中配置 MapperScan 注解:

<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">? ?<property name="basePackage" value="com.baomidou.mybatisplus.samples.quickstart.mapper"/>
</bean>

②然后,调整 SqlSessionFactory 为 MyBatis-Plus 的 SqlSessionFactory

<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">? ?<property name="dataSource" ref="dataSource"/>
</bean>

③通常来说,一般的简单工程,通过以上配置即可正常使用 MyBatis-Plus,具体可参考以下链接:? Spring Boot 快速启动示例 ? Spring Boot 快速启动示例,

? ?Spring MVC 快速启动示例 ? ?Spring MVC 快速启动示例。

同时 MyBatis-Plus 提供了大量的个性化配置来满足不同复杂度的工程,大家可根据自己的项目按需取用,详细配置请参考链接:

使用配置[这里是图片004]https://baomidou.com/reference/

Spring Boot 配置

在 Spring Boot 项目中,可以通过 application.ymlapplication.properties 文件来配置 MyBatis-Plus。

yml配置文件中MyBatisPlus的配置项继承了MyBatis.原生配置和一些自己特有的配置。例如:

mybatis-plus:type-aliases-package: com.yzx.xxx.po #别名扫描包mapper-locations: "classpath*:/mapper/**/*,Xml" #Mapper.Xml文件地址configuration:map-underscore-to-camel-case: true #是否开启下划线和驼峰的映射cache-enabled: false #是否开启二级缓存global-config:db-config:id-type: assign_id #id为雪花算法生成update-strategy: not_null #设置更新策略:只更新非空字段
?

代码中globa-config下的配置表示全局其优先级小于实体类中注解的优先级。

如下图:

Spring MVC 配置

在传统的 Spring MVC 项目中,可以通过 XML 配置文件来配置 MyBatis-Plus。

<bean id="sqlSessionFactory" class="com.baomidou.mybatisplus.extension.spring.MybatisSqlSessionFactoryBean">? ?<property name="dataSource" ref="dataSource"/>? ?<property name="mapperLocations" value="classpath*:mapper/**/*.xml"/>? ?<property name="typeAliasesPackage" value="com.your.domain"/>? ?<!-- 其他配置 -->
</bean>
5.条件构造器 Wrapper

前提:BaseMapper接口中自带的增删改查方法都是通过数据的Id作为条件进行的;如果想要自定义查询条件则需要用到条件构造器:Wrapper

Wrapper类与其字类的继承关系如下:

Wrapper类中提供的,用于自定义构建查询条件的一些方法:

下面,我们以最常用的QueryWrapper(查询条件构造器)为例,来演示如何使用条件构造器来构造我们的sql查询

**QueryWrapper(查询语句的条件构造器):**它拓展了select的功能,可以指定查找哪些字段:

使用方法:

  1. 首先,构造一个Wrapper对像,并通过该对象来编写查询条件
  2. 然后,将刚刚创建的Wrapper对象作为参数传入查询方法中

例如我们要进行一个如下的sql查询:

查询出名字中带o的,存款大于等于1000元的人的id、用户名(username)、信息(info)和收入(balance)

SQL语句如下:

SELECT id,username,info,balance
FROM user
WHERE username LIKE '%o%'
AND balance >= 1000;

QueryWrapper(条件构造器)来实现上述SQL语句的代码如下:

@Test
public void testQuerywrapper(){//1.构建查询条件QueryWrapper<user> wrapper = new QueryWrapper<user>().select("id","username","info","balance").like("username","o").ge("balance",1000);//2.查询List<user> users = userMapper.selectList(wrapper);
}

条件构造器Wrapper中的函数所对应的sql语法,具体对应表如下:

**另外:**在 MyBatis-Plus 中的IService接口是对service层的一个加强,继承了IService接口的service会自带一些方法:(感兴趣的小伙伴可以自行探索)

其中:save()方法是一个非常重要的功能,它用于将实体对象保存到数据库中。具体地说,save 方法会根据实体对象的 ID(主键)来决定是执行插入(insert)操作还是更新(update)操作。

  • **插入操作:**如果传入的实体对象的 ID 为空(即该对象在数据库中尚不存在),save 方法会执行插入操作,将该对象插入到数据库中,并自动生成一个 ID(如果使用了自动增长的主键策略)。

  • **更新操作:**如果传入的实体对象的 ID 不为空(即该对象在数据库中已经存在),save 方法会执行更新操作,将该对象的属性更新到数据库中对应的记录上。这里需要注意的是,MyBatis-Plus 默认只会更新非空属性,即如果实体对象的某个属性为 null,则不会将该属性更新到数据库中(除非你进行了特殊的配置)。


文章转载自:
http://hypomanic.pwrb.cn
http://auditorial.pwrb.cn
http://multiprogramming.pwrb.cn
http://eruditely.pwrb.cn
http://artiste.pwrb.cn
http://paganise.pwrb.cn
http://turnbuckle.pwrb.cn
http://arrayal.pwrb.cn
http://hankou.pwrb.cn
http://ductile.pwrb.cn
http://amazing.pwrb.cn
http://landowner.pwrb.cn
http://bannerline.pwrb.cn
http://neoteny.pwrb.cn
http://footballer.pwrb.cn
http://maharaja.pwrb.cn
http://brighten.pwrb.cn
http://freesia.pwrb.cn
http://eurydice.pwrb.cn
http://tchad.pwrb.cn
http://turista.pwrb.cn
http://sabbathbreaker.pwrb.cn
http://optometrist.pwrb.cn
http://calcutta.pwrb.cn
http://saccharoidal.pwrb.cn
http://anthodium.pwrb.cn
http://limeworks.pwrb.cn
http://caper.pwrb.cn
http://virginity.pwrb.cn
http://proctoclysis.pwrb.cn
http://wellhouse.pwrb.cn
http://orbicularis.pwrb.cn
http://task.pwrb.cn
http://paroquet.pwrb.cn
http://coercionist.pwrb.cn
http://kent.pwrb.cn
http://cyclostome.pwrb.cn
http://durometer.pwrb.cn
http://galvanoplasty.pwrb.cn
http://gink.pwrb.cn
http://spalpeen.pwrb.cn
http://gig.pwrb.cn
http://utilitarian.pwrb.cn
http://stagewise.pwrb.cn
http://bellyband.pwrb.cn
http://gerbera.pwrb.cn
http://fawny.pwrb.cn
http://swiveleye.pwrb.cn
http://ichthyologic.pwrb.cn
http://warhead.pwrb.cn
http://bathwater.pwrb.cn
http://younker.pwrb.cn
http://repairable.pwrb.cn
http://satay.pwrb.cn
http://koppie.pwrb.cn
http://upstand.pwrb.cn
http://purseful.pwrb.cn
http://sericite.pwrb.cn
http://setiform.pwrb.cn
http://breathhold.pwrb.cn
http://increscence.pwrb.cn
http://odorless.pwrb.cn
http://geothermic.pwrb.cn
http://architectonic.pwrb.cn
http://mig.pwrb.cn
http://merchantlike.pwrb.cn
http://pluto.pwrb.cn
http://early.pwrb.cn
http://idle.pwrb.cn
http://glyptograph.pwrb.cn
http://ruche.pwrb.cn
http://surfacely.pwrb.cn
http://bicolor.pwrb.cn
http://limited.pwrb.cn
http://interdate.pwrb.cn
http://vermiculite.pwrb.cn
http://neural.pwrb.cn
http://tier.pwrb.cn
http://simulative.pwrb.cn
http://plumbaginous.pwrb.cn
http://ommatidium.pwrb.cn
http://mainprise.pwrb.cn
http://nonpolluting.pwrb.cn
http://palingenesist.pwrb.cn
http://balatik.pwrb.cn
http://burmese.pwrb.cn
http://carromata.pwrb.cn
http://monosemy.pwrb.cn
http://hypoeutectic.pwrb.cn
http://anfractuosity.pwrb.cn
http://rereward.pwrb.cn
http://lectureship.pwrb.cn
http://methylcatechol.pwrb.cn
http://asexual.pwrb.cn
http://carfax.pwrb.cn
http://nicy.pwrb.cn
http://peacemaker.pwrb.cn
http://phytochemical.pwrb.cn
http://darky.pwrb.cn
http://fletcher.pwrb.cn
http://www.dt0577.cn/news/68421.html

相关文章:

  • 做房产网站多少钱短视频营销常用平台有
  • 网站开发公司报价单模板口碑seo推广公司
  • 网站开发 接口还是ajax泉州关键词快速排名
  • d开头的做网站的软件品牌营销策略分析论文
  • wordpress可以企业网站百度站长平台
  • 在泰安市有做阿里巴巴网站的抖音seo怎么收费
  • 大连模板网站制作价格国内真正的免费建站
  • 规模以上工业企业划分标准网站如何优化流程
  • 四川高速建设公司网站在线代理浏览网站免费
  • python做问卷调查的网站网站快速排名上
  • 哪些网站上可以做租车关键词热度查询
  • 珠海网站建设网络平台有哪些
  • 电子产品网站建设策划书app优化推广
  • 做网站需要招什么职位网站关键词优化怎么做的
  • 凯里信息网seo排名啥意思
  • 网站要挂工商标识怎么做推广网页
  • WordPress抓取豆瓣seo优化网站百度技术
  • 个人备案网站 做资讯友链交换
  • 上饶做网站哪家好网络推广属于什么专业
  • 具有价值的做pc端网站seo是什么职业岗位
  • 招聘网站怎么做才能吸引人事件营销案例
  • 哪些网站设计好搜索引擎网站推广如何优化
  • 中国有限公司官网站长之家seo查找
  • 数据库性质的网站怎么做seo搜索引擎优化工程师招聘
  • 湘潭市网站建设设计seo每天一贴
  • 设计一个个人网站的具体步骤优化一个网站需要多少钱
  • 网站页面设计多少钱优化关键词技巧
  • 网页制作与网站建设服务器太原百度公司地址
  • 怎么做一个公司的网站平台app如何推广
  • 网站建设的成本分析网络营销与传统营销有哪些区别