首页 > 其他分享 >MyBatis过时了吗?

MyBatis过时了吗?

时间:2023-10-05 21:33:07浏览次数:21  
标签:过时 APIJSON jpa mybatis 开发 腾讯 MyBatis

是的,已经过时了,虽然中文社区仍有惯性,但新项目不建议使用。

所有2022年以前的文章,说mybatis的优点,在 hibernate 4.x +jpa 2.0 已经被抹平。到spring-data-jpa 的出现,就已经完全被超越了:

  • 多年前引以为傲的性能,已经有很多基准测试Q证明只比JPAImplementation 快一丢丢
  • 自JPA 标准也能直接写 SQL,mybatis 的灵活性已经完全被碾压了
  • self-contained 方面,mybatis 的表现简直惨不忍睹,配套生态对开发效率的附加值“基本上是负数
  • 用JPA 来开发,然后同样功能用 mybatis 来做,你会发现代码量会少上1-2个量级,开发效率基本处于被秒杀状态

至今,mybatis唯一优势是:培训班只教这个。就像目前国情jdk1.8 也仍然是主流,但这个主流明显已经过时了。

腾讯 IEG 数据产品开发组负责人 xinlin: ”腾讯的 APIJSON 开源方案,它可以做到零代码生成接口和文档,并且整个生成过程是自动化。当企业有元数据的时候,马上就可以获得接口“

腾讯科技 后台开发高级工程师 雷大锤: “可以抽出时间来看apijson了,这个可以为T10做准备,也是业界很火的东西,可以提升个人影响力!”

百度智慧城市研发 lpeng: “很兴奋的发现APIJSON很适合我们的一个开发场景,作为我们协议定义的一部分”

中兴工程师 duyijiang:“感谢腾讯大大提供的框架,很好用”

字节跳动 qiujunlin: “初次见到这个项目,觉得太惊艳了,眼前一亮。根据教程完成了 demo 。给我的感受是,项目大大简化了开发流程,开发效率提升了很多倍。”

标签:过时,APIJSON,jpa,mybatis,开发,腾讯,MyBatis
From: https://blog.51cto.com/JavaEdge/7717576

相关文章

  • MyBatis参数传递和接受(@Param)
    一、@Param注解传递多个普通类型参数在接收端便可使用#{别名}的方式接收参数。 简单地说,在接口文件中使用org.apache.ibatis.annotations.Param类型的注解@Param为参数定义别名;在映射文件中使用#{别名}获取参数。 在此,我们以查询为例讲解利用@Param注解传递和接收多个普通......
  • MyBatis运行原理
    MyBatis运行原理为了更加深入和清晰地掌握MyBatis,我们来深入了解MyBatis的运行原理,如图所示。 从上图可以看出,MyBatis框架在操作数据库时大致经过了10个步骤;具体如下:读取MyBatis全局配置文件mybatis-config.xml。该文件中存有MyBatis的运行信息以及数据库连接信息。加......
  • Mybatis知识
    1.#{}和${}{}解析为SQL时,会将形参变量的值取出,并自动给其添加引号。username="Amy"{}可以防止SQL注入而${}却不行${}解析为SQL时,将形参变量的值直接取出,直接拼接显示在SQL中username=${value}->username=Amyusername='${value}'->username='Amy'模糊查询场景......
  • MyBatis配置文件
    1、pom.xml文件<?xmlversion="1.0"encoding="UTF-8"?><projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http:/......
  • MyBatis概念
    一、MyBatis特征1、它是一个半自动的ORM框架。2、轻便、灵活;功能强大、使用简单、扩展性极强。3、支持定制化SQL、存储过程以及高级映射。4、避免了几乎所有的JDBC代码和手工操作。5、可使用XML或注解将接口和POJO映射成数据库中的记录。 2、ORM模型概要简单地说,ORM......
  • SpringSecurity解决WebSecurityConfigurerAdapter过时问题
    旧版通过继承WebSecurityConfiurerAdapter,但是新版本中该类已经被标注为@Deprecated旧版代码packagecom.lzx.config;importcom.lzx.filter.JwtAuthenticationTokenFilter;importorg.springframework.beans.factory.annotation.Autowired;importorg.springframework.con......
  • MyBatis知识
    MyBatisMyBatis是一款优秀的半自动的ORM持久层框架,它支持自定义SQL、存储过程以及高级映射。MyBatis免除了几乎所有的JDBC代码以及设置参数和获取结果集的工作。MyBatis可以通过简单的XML或注解来配置和映射原始类型、接口和JavaPOJO(PlainOldJavaObjects,普通老式......
  • mybatis项目启动报错:reader entry: ���� = v
    问题再现在SSM项目中,启动程序时控制台会报乱码,如下图所示:解决方案一去掉mybatis配置文件中关于别名的配置,然后在mapper.xml文件中使用完整的类名。待删除的示例代码如下:<typeAliases><packagename="com.tiku.domain.entity"/></typeAliases>解决方案二添加新的依赖......
  • Mybatis - 通过中间表查询表A和表B
    中间表中间表存储了表A的id和表B的id,除此之外还存储了自身需要的字段,如创建时间、id。xml很简单,通过多个子查询获取数据就可以了,将中间表的字段传递给子查询的column,子查询获取这个参数进行where条件查询。<?xmlversion="1.0"encoding="UTF-8"?><!DOCTYPEmappe......
  • Mybatis查询报错 foreach 子查询 (invalid comparison)
    Mybatis查询报错invalidcomparison:java.lang.Stringand[Ljava.lang.String;原因去掉黄色部分<iftest="null!=businessTypeand''!=businessType">  andt.businessTypein     <foreachcollection="businessType"......