爆款云主机2核4G限时秒杀,88元/年起!
查看详情

活动

天翼云最新优惠活动,涵盖免费试用,产品折扣等,助您降本增效!
热门活动
  • 618智算钜惠季 爆款云主机2核4G限时秒杀,88元/年起!
  • 免费体验DeepSeek,上天翼云息壤 NEW 新老用户均可免费体验2500万Tokens,限时两周
  • 云上钜惠 HOT 爆款云主机全场特惠,更有万元锦鲤券等你来领!
  • 算力套餐 HOT 让算力触手可及
  • 天翼云脑AOne NEW 连接、保护、办公,All-in-One!
  • 中小企业应用上云专场 产品组合下单即享折上9折起,助力企业快速上云
  • 息壤高校钜惠活动 NEW 天翼云息壤杯高校AI大赛,数款产品享受线上订购超值特惠
  • 天翼云电脑专场 HOT 移动办公新选择,爆款4核8G畅享1年3.5折起,快来抢购!
  • 天翼云奖励推广计划 加入成为云推官,推荐新用户注册下单得现金奖励
免费活动
  • 免费试用中心 HOT 多款云产品免费试用,快来开启云上之旅
  • 天翼云用户体验官 NEW 您的洞察,重塑科技边界

智算服务

打造统一的产品能力,实现算网调度、训练推理、技术架构、资源管理一体化智算服务
智算云(DeepSeek专区)
科研助手
  • 算力商城
  • 应用商城
  • 开发机
  • 并行计算
算力互联调度平台
  • 应用市场
  • 算力市场
  • 算力调度推荐
一站式智算服务平台
  • 模型广场
  • 体验中心
  • 服务接入
智算一体机
  • 智算一体机
大模型
  • DeepSeek-R1-昇腾版(671B)
  • DeepSeek-R1-英伟达版(671B)
  • DeepSeek-V3-昇腾版(671B)
  • DeepSeek-R1-Distill-Llama-70B
  • DeepSeek-R1-Distill-Qwen-32B
  • Qwen2-72B-Instruct
  • StableDiffusion-V2.1
  • TeleChat-12B

应用商城

天翼云精选行业优秀合作伙伴及千余款商品,提供一站式云上应用服务
进入甄选商城进入云市场创新解决方案
办公协同
  • WPS云文档
  • 安全邮箱
  • EMM手机管家
  • 智能商业平台
财务管理
  • 工资条
  • 税务风控云
企业应用
  • 翼信息化运维服务
  • 翼视频云归档解决方案
工业能源
  • 智慧工厂_生产流程管理解决方案
  • 智慧工地
建站工具
  • SSL证书
  • 新域名服务
网络工具
  • 翼云加速
灾备迁移
  • 云管家2.0
  • 翼备份
资源管理
  • 全栈混合云敏捷版(软件)
  • 全栈混合云敏捷版(一体机)
行业应用
  • 翼电子教室
  • 翼智慧显示一体化解决方案

合作伙伴

天翼云携手合作伙伴,共创云上生态,合作共赢
天翼云生态合作中心
  • 天翼云生态合作中心
天翼云渠道合作伙伴
  • 天翼云代理渠道合作伙伴
天翼云服务合作伙伴
  • 天翼云集成商交付能力认证
天翼云应用合作伙伴
  • 天翼云云市场合作伙伴
  • 天翼云甄选商城合作伙伴
天翼云技术合作伙伴
  • 天翼云OpenAPI中心
  • 天翼云EasyCoding平台
天翼云培训认证
  • 天翼云学堂
  • 天翼云市场商学院
天翼云合作计划
  • 云汇计划
天翼云东升计划
  • 适配中心
  • 东升计划
  • 适配互认证

开发者

开发者相关功能入口汇聚
技术社区
  • 专栏文章
  • 互动问答
  • 技术视频
资源与工具
  • OpenAPI中心
开放能力
  • EasyCoding敏捷开发平台
培训与认证
  • 天翼云学堂
  • 天翼云认证
魔乐社区
  • 魔乐社区

支持与服务

为您提供全方位支持与服务,全流程技术保障,助您轻松上云,安全无忧
文档与工具
  • 文档中心
  • 新手上云
  • 自助服务
  • OpenAPI中心
定价
  • 价格计算器
  • 定价策略
基础服务
  • 售前咨询
  • 在线支持
  • 在线支持
  • 工单服务
  • 建议与反馈
  • 用户体验官
  • 服务保障
  • 客户公告
  • 会员中心
增值服务
  • 红心服务
  • 首保服务
  • 客户支持计划
  • 专家技术服务
  • 备案管家

了解天翼云

天翼云秉承央企使命,致力于成为数字经济主力军,投身科技强国伟大事业,为用户提供安全、普惠云服务
品牌介绍
  • 关于天翼云
  • 智算云
  • 天翼云4.0
  • 新闻资讯
  • 天翼云APP
基础设施
  • 全球基础设施
  • 信任中心
最佳实践
  • 精选案例
  • 超级探访
  • 云杂志
  • 分析师和白皮书
  • 天翼云·创新直播间
市场活动
  • 2025智能云生态大会
  • 2024智算云生态大会
  • 2023云生态大会
  • 2022云生态大会
  • 天翼云中国行
天翼云
  • 活动
  • 智算服务
  • 产品
  • 解决方案
  • 应用商城
  • 合作伙伴
  • 开发者
  • 支持与服务
  • 了解天翼云
      • 文档
      • 控制中心
      • 备案
      • 管理中心

      MyBatis的命名空间方式的增删改查操作(二)

      首页 知识中心 其他 文章详情页

      MyBatis的命名空间方式的增删改查操作(二)

      2023-06-08 06:16:24 阅读次数:444

      CRUD,MyBatis

      沉迷于黑与白世界中的人,无论怎么挣扎,都逃不过被同化的命运。前世看见了什么,那么今世便是什么。

      上一章简单介绍了MyBatis的简单了解(一),如果没有看过,​​请观看上一章​​。

      一. Mybatis 的官方介绍

      MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架。MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及对结果集的检索。MyBatis 可以使用简单的 XML 或注解用于配置和原始映射,将接口和 Java 的 POJO(Plain Old Java Objects,普通的 Java 对象)映射成数据库中的记录。

      现在都是用Mapper 的形式来进行数据库的持久化操作,但是以前的ibatis 形式的 命名空间方式的CRUD ,也需要进行了解。 下面,就进行详细的分析。

      二. 查询语句 select

      二.一 根据id 查询单个对象

      接口:

      User getById(int userId);

      实现类:

      @Override
      public User getById(int userId) {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      User user=null;
      try{
      user=sqlSession.selectOne("com.yjl.pojo.User.getById",userId);
      }finally{
      sqlSession.close();
      }
      return user;
      }

      对应的xml 查询语句:

      <select id="getById" parameterType="int" resultType="com.yjl.pojo.User">
      select * from user where id=#{id}
      </select>

      测试方法:

      @Test
      public void getByIdTest(){
      UserDao userDao=new UserDaoImpl();
      User user=userDao.getById(1);
      System.out.println(user);
      }

      查询对象的时候,如果可以确定 查询的是唯一的对象(包括没有,没有查询出来为null),那么就可以使用selectOne() 来精确的表示出唯一的对象。 后面跟的值, 是名称空间+id的形式, 命名空间来确定是哪一个实体, com.yjl.pojo.User 表示 是User 实体类, getById 表示确定的是getById() 的方法。 其中, id不能重复。

      对User.xml 的解释。

      namespace 为命名空间,一般是用包名+类名 即全限定名称。 sql 语句的id 一般是方法名,是唯一的,不能重复。 (接口中的方法名可以重载,可以重复,但是id是不能重复的,但一般还是用方法名来写id)。

      是查询语句,用的是select parameterType 为参数类型, 是int 型, int 是MyBatis 内置的对象类型, 与Java 中的java.lang.Integer 一致。 Java 类型,MyBatis 类型,数据库类型 ,这三种类型有一种转换的关系。 以后会讲。
      resultType 为结果类型, 自定义的类型,要写 全限定名称,如com.yjl.pojo.User, 以后也可以写别名。

      其中,#{id} 表示传入的参数 放置到id 里面。 会采用 占位符的方式,转换成
      select * from user where id=?, ?传入的参数值为id参数值。

      如果传入的值是单个的基本类型值的话,可以用value 来代替。

      只能是单个的值,并且是基本类型值。

      <select id="getById" parameterType="int" resultType="com.yjl.pojo.User">
      select * from user where id=#{value}
      </select>

      如果传入两个值,如 :

      <select id="getById" parameterType="int" resultType="com.yjl.pojo.User">
      select * from user where id=#{value} and name=#{name}
      </select>

      这样是错误的。

      二.二 查询全部的记录

      接口:

      List<User> findAll();

      实现类:

      @Override
      public List<User> findAll() {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      List<User> allList=new ArrayList<User>();
      try{
      allList=sqlSession.selectList("com.yjl.pojo.User.findAll");
      }finally{
      sqlSession.close();
      }
      return allList;
      }

      对应的xml sql语句

      <select id="findAll" resultType="com.yjl.pojo.User">
      select * from user
      </select>

      测试方法:

      @Test
      public void findAllTest(){
      UserDao userDao=new UserDaoImpl();
      List<User> allList=userDao.findAll();
      allList.forEach(n ->System.out.println(n));
      }

      没有传入参数值,那么就不写 参数值, 虽然查询的是一个集合list, 但是返回类型resultType 仍然写 类的全限定名称, MyBatis 会根据调用方法的名称 selectList() 来自动内部构建集合。

      注意点:

      1. 在查询的时候,如果查询的是单个对象的话,也是可以用selectList() 的,只是此时查询出来是一个长度的集合。 但是,如果查询的是多个对象的话,是不能用selectOne() 的,会报错。
      @Override
      public List<User> findAll() {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      List<User> allList=new ArrayList<User>();
      User user=sqlSession.selectOne("com.yjl.pojo.User.findAll");
      allList.add(user);
      return allList;
      }

      MyBatis的命名空间方式的增删改查操作(二)

       

      TooManyResultsException, 太多结果记录异常。

      1. 在查询的时候,除了selectOne(), selectList() 之外,还有其他的查询结果 ,如Map 形式。

        以后,会讲其余的用法。

      三. 插入语句 insert

      三.一 普通插入

      接口:

      int insert(User user);

      实现类 (错误的形式):

      @Override
      public int insert(User user) {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      int result= sqlSession.insert("com.yjl.pojo.User.insertUser", user);
      sqlSession.close();
      return result;
      }

      测试方法:

      @Test
      public void insertTest(){
      UserDao userDao=new UserDaoImpl();
      User user=new User();
      user.setName("老蝴蝶");
      user.setAge(25);
      user.setSex("男");
      user.setDescription("这是一个老蝴蝶");
      userDao.insert(user);
      System.out.println("输出信息:"+user);
      }

      xml实现类:

      <insert id="insertUser" parameterType="com.yjl.pojo.User">
      insert into user(name,age,sex,description) values(#{name},#{age},#{sex}
      ,#{description})
      </insert>

      传入的参数是 com.yjl.pojo.User 对象, #{name} 表示从对象参数中取出name 的值, #{sex} 表示从对象参数中取出sex的值。

      MyBatis的命名空间方式的增删改查操作(二)

       

      在日志中,执行了插入的语句,但是并没有在数据库中找到这一条记录。

      MyBatis的命名空间方式的增删改查操作(二)

       

      原因是什么, 就是自动提交的问题。 上面把自动提交 改成了false, 那么就需要我们手动提交。

      所以,正确的实现方法是:

      @Override
      public int insert(User user) {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      int result= sqlSession.insert("com.yjl.pojo.User.insertUser", user);
      sqlSession.commit(); //手动提交
      sqlSession.close();
      return result;
      }

      下面的更新和删除,都要进行手动提交。

      这个时候,运行程序:

      MyBatis的命名空间方式的增删改查操作(二)

       

      而数据库中也存在了这一条数据

      MyBatis的命名空间方式的增删改查操作(二)

       

      插入的编号是4, 3的那一条已经被使用了,刚才错误插入的时候。

      三.二 插入时获取id

      从输出结果中,发现,数据可以插入到数据库中,但是并没有 查询出相应的id 编号。
      应该要将id 编号进行取出。 实际开发中,表关联时,常常获取刚才插入表的 id 主键,来进行 关联表的外键关联值。

      <!-- 插入记录 ,获取id编号-->
      <insert id="insertUser" parameterType="com.yjl.pojo.User" keyProperty="id" useGeneratedKeys="true">
      insert into user(name,age,sex,description) values(#{name},#{age},#{sex}
      ,#{description})
      </insert>

      其中,useGeneratedKeys= true, 表示用主键信息, keyProperty 指定主键 为类属性 为id, 注意,用keyProperty ,不能用keyColumn

      此时,运行:

      MyBatis的命名空间方式的增删改查操作(二)

       

      数据库中也存在这条记录, id为5

      MyBatis的命名空间方式的增删改查操作(二)

      三.三 数据库查询 id

      <!-- 数据库查询,获取id编号-->
      <insert id="insertUser" parameterType="com.yjl.pojo.User">
      <selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
      select last_insert_id()
      </selectKey>
      insert into user(name,age,sex,description) values(#{name},#{age},#{sex}
      ,#{description})
      </insert>

      顺序 order, 为AFTER, 在插入之后查询。 必须为全大写 AFTER, after 是错误的。

      返回类型 resultType, 表示是 主键的类型,为全限定名称, java.lang.Integer,

      last_insert_id () 是MySQL 数据库提供的内置查询 方法,自动返回最后一个INSERT或 UPDATE 问询为 AUTO_INCREMENT列设置的第一个 发生的值。

      MyBatis的命名空间方式的增删改查操作(二)

      三.四 uuid 形式的主键插入

      将id 的类型 改成String 类型,

      MyBatis的命名空间方式的增删改查操作(二)

       

      数据库中id 列的类型也改成varchar 类型。

      MyBatis的命名空间方式的增删改查操作(二)

       

      长度要设置长一点。

      将User.xml 中的其他方法 注释掉。

      写测试方法:

      @Test
      public void insertUUIDTest(){
      UserDao userDao=new UserDaoImpl();
      User user=new User();
      user.setName("老蝴蝶uuid");
      user.setAge(25);
      user.setSex("男");
      user.setDescription("这是一个老蝴蝶uuid 测试");
      userDao.insert(user);
      System.out.println("输出信息:"+user);
      }

      xml sql 语句。

      <!-- uuid插入,获取id编号-->
      <insert id="insertUser" parameterType="com.yjl.pojo.User">
      <selectKey keyProperty="id" order="BEFORE" resultType="java.lang.String">
      select uuid()
      </selectKey>
      <!-- 这个时候,sql 语句就要写id 了。 -->
      insert into user(id,name,age,sex,description) values(#{id},#{name},#{age},#{sex}
      ,#{description})
      </insert>

      其中, 查询时顺序 order 就为BEFORE, 在插入之前进行查询, 不能写before ,必须为大写
      uuid 的类型是String
      select uuid() ,其中 uuid() 为mysl 提供的内置函数 。
      插入的sql 语句,就需要写 id 的值了。

      MyBatis的命名空间方式的增删改查操作(二)

       

      数据库中展示:

      MyBatis的命名空间方式的增删改查操作(二)

      三.六 序列形式的插入

      id 编号 还改成int 类型, 是自动增长, 数据库列id 还改成int 类型 ,自增。注释的sql 解除注释。
      跟uuid 之前的操作一样。
      没有oracle 客户端,不进行验证了。

      <!-- oracle 序列插入,获取id编号-->
      <insert id="insertUser" parameterType="com.yjl.pojo.User">
      <selectKey keyProperty="id" order="BEFORE" resultType="java.lang.Integer">
      select 序列名.nextval()
      </selectKey>
      <!-- 这个时候,sql 语句就要写id 了。 -->
      insert into user(id,name,age,sex,description) values(#{id},#{name},#{age},#{sex}
      ,#{description})
      </insert>

      四.修改 update

      四.一 全部修改时

      接口:

      int update(User user);

      实现方法:

      @Override
      public int update(User user) {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      int result= sqlSession.update("com.yjl.pojo.User.updateUser",user);
      sqlSession.commit(); //手动提交
      sqlSession.close();
      return result;
      }

      测试方法:

      @Test
      public void updateTest(){
      UserDao userDao=new UserDaoImpl();
      User user=new User();
      user.setId(1); //编号为1
      user.setName("修改老蝴蝶");
      user.setAge(25);
      user.setSex("男");
      user.setDescription("这是一个修改的老蝴蝶");
      userDao.update(user);
      }

      xml 修改语句

      <update id="updateUser" parameterType="com.yjl.pojo.User">
      update user set name=#{name},sex=#{sex},age=#{age},description=#{description}
      where id=#{id}
      </update>

      运行时:

      MyBatis的命名空间方式的增删改查操作(二)

       

      数据库:

      MyBatis的命名空间方式的增删改查操作(二)

       

      确实发生了修改的操作。是正确的。

      四.二 部分修改字段时

      xml 不变。
      测试方法:

      @Test
      public void update1Test(){
      UserDao userDao=new UserDaoImpl();
      User user=new User();
      user.setId(1);
      user.setDescription("这是一个老蝴蝶,只修改描述");
      userDao.update(user);
      }

      MyBatis的命名空间方式的增删改查操作(二)

       

      传入的值为空,

      MyBatis的命名空间方式的增删改查操作(二)

       

      这样修改的话,#{name} 时取出的值 是默认的String 为null, #{age} 也是默认的Integer, 为null. 表示修改的传入值是null .

      四.三 查询时修改

      将id =1 的值设置成原先的值

      MyBatis的命名空间方式的增删改查操作(二)

       

      xml 不变,测试方法为:

      @Test
      public void update2Test(){
      UserDao userDao=new UserDaoImpl();
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      User user=sqlSession.selectOne("com.yjl.pojo.User.getById",1);
      user.setDescription("这是一个老蝴蝶,只修改描述");
      userDao.update(user);
      }

      MyBatis的命名空间方式的增删改查操作(二)

       

      MyBatis的命名空间方式的增删改查操作(二)

       

      可以正确的进行修改。

      如果一个表中 有几十个字段,而现在只修改 一个描述字段,会将以前所有的字段都进行修改, 很浪费资源的。 希望 可以修改哪一个,就只修改哪一个, 后面的动态sql 语句会学习的。

      五. 删除 delete

      接口:

      int delete(int id);

      实现类:

      @Override
      public int delete(int id) {
      SqlSession sqlSession=SqlSessionFactoryUtils.getSession();
      int result= sqlSession.delete("com.yjl.pojo.User.deleteById",id);
      sqlSession.commit(); //手动提交
      sqlSession.close();
      return result;
      }

      测试方法:

      @Test
      public void deleteTest(){
      UserDao userDao=new UserDaoImpl();
      userDao.delete(1);
      }

      xml 语句:

      <!-- 删除记录 -->
      <delete id="deleteById" parameterType="int">
      delete from user where id=#{id}
      </delete>

      写正常的删除语句。

      运行:

      MyBatis的命名空间方式的增删改查操作(二)

       

      MyBatis的命名空间方式的增删改查操作(二)

      六. 注意点

      这就是原来 ibatis 时的命名空间的 单表基本操作, 当然 ,也有其他的操作形式,这里暂不讲解,会在Mapper 时进行详细的讲解。
      另外注意, sql 语句时, 如:

      delete from user where id=#{id}

      加上; 和不加; 都可以运行, 但不建议加; 号。

      谢谢!!!

      版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/yueshushu/5841127,作者:两个蝴蝶飞,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。

      上一篇:MyBatis 执行动态 SQL

      下一篇:MyBatisSystemException There is no getter for property named \'id\' in \'class java.lang.String\'

      相关文章

      2025-04-18 07:10:30

      基于MyBatis的关联查询优化与应用实践

      关联查询是指通过表与表之间的关系,检索相关联的数据。例如,一个区域(区域表)可能包含多个合作商(合作商表),要统计某区域内的合作商数量,就需要进行多表关联查询。传统关联查询通常通过复杂的SQL语句实现,但这可能导致语句难以维护、性能下降等问题。

      2025-04-18 07:10:30
      MyBatis , SQL , 关联 , 嵌套 , 映射 , 查询
      2025-03-27 09:34:39

      开发者必读!MyBatis缓存你了解多少?

      在使用MyBatis的过程中,缓存一直是一个备受关注的话题。MyBatis提供了一级、二级和三级缓存,它们各自有着不同的特点和适用场景。

      2025-03-27 09:34:39
      MyBatis , 共享 , 缓存
      2025-03-26 10:18:58

      28. SpringBoot启动时的Banner设置【从零开始学Spring Boot

      28. SpringBoot启动时的Banner设置【从零开始学Spring Boot

      2025-03-26 10:18:58
      Boot , MyBatis , Spring , 升级 , 注解
      2025-03-25 08:08:59

      Spring Boot中集成MyBatis操作数据库详细教程

      Spring Boot中集成MyBatis操作数据库详细教程

      2025-03-25 08:08:59
      MyBatis , Service , 创建 , 接口 , 数据库
      2024-12-20 07:54:41

      使用Spring Boot集成MyBatis

      Spring Boot与MyBatis的结合是开发Java应用程序中常见的组合,MyBatis作为一个优秀的持久层框架,能够简化数据库操作,而Spring Boot则提供了快速配置和开箱即用的特性。

      2024-12-20 07:54:41
      Boot , Mapper , MyBatis , Spring , XML , 数据库 , 配置
      2024-12-17 08:23:52

      【springboot技术】springboot提升-多数据源配置

      在 Spring Boot 中配置 MyBatis 以支持多数据源涉及几个关键步骤,包括配置数据源、集成 MyBatis 以及动态数据源切换机制。

      2024-12-17 08:23:52
      Boot , MyBatis , Spring , 创建 , 数据源 , 线程 , 配置
      2024-12-13 06:53:30

      【Mybatis相关】mybatis框架基础以及自定义插件开发

      MyBatis是一个优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射,为开发者提供了极大的灵活性和便利性。

      2024-12-13 06:53:30
      Boot , MyBatis , Spring , SQL , 插件 , 框架 , 自定义
      2024-12-05 08:49:34

      Springboot图书管理系统

      Spring Boot图书管理系统是一个基于Spring Boot框架开发的应用程序,旨在实现对图书的增删改查(CRUD)操作

      2024-12-05 08:49:34
      Boot , CRUD , Spring , 代码 , 图书 , 管理员
      2024-11-06 07:20:58

      使用MyBatis优化Java持久层操作

      使用MyBatis优化Java持久层操作

      2024-11-06 07:20:58
      Java , MyBatis
      2024-10-25 07:15:55

      Java服务端数据库分页查询:MyBatis与Hibernate的实现

      在处理大量数据时,分页查询是一种常见的需求,它能够提高应用的响应速度和用户体验。MyBatis和Hibernate是Java中两个流行的持久层框架,它们都提供了分页查询的实现方式。本文将探讨如何在MyBatis和Hibernate中实现分页查询。

      2024-10-25 07:15:55
      Hibernate , MyBatis , 分页
      查看更多
      推荐标签

      作者介绍

      天翼云小翼
      天翼云用户

      文章

      33561

      阅读量

      5256311

      查看更多

      最新文章

      解决MyBatis判断整型失败的问题

      2024-05-15 09:01:07

      Mybatis-Wrapper导致的生产事故

      2024-04-19 06:40:32

      深入了解MyBatis返回值

      2023-08-07 07:24:54

      MyBatis Map结果的Key转为驼峰式2

      2023-08-07 07:24:03

      包路径扫描引起的 MyBatis 异常 BindingException

      2023-08-04 07:26:46

      JDBC的CRUD操作之PreparedStatement的修改操作

      2023-07-28 08:28:45

      查看更多

      热门文章

      单表的CRUD操作改造

      2023-06-12 09:35:08

      ES-CRUD提高

      2023-05-17 06:58:13

      MyBatis的动态Sql查询(七)

      2023-06-08 06:18:16

      MyBatis的一对多映射(九)

      2023-06-08 06:15:05

      MyBatisSystemException There is no getter for property named \'id\' in \'class java.lang.String\'

      2023-06-08 06:16:24

      后端Bean管理基本操作模板(MyBatisPlus)

      2023-06-15 06:06:04

      查看更多

      热门标签

      linux java python javascript 数组 前端 docker Linux vue 函数 shell git 节点 容器 示例
      查看更多

      相关产品

      弹性云主机

      随时自助获取、弹性伸缩的云服务器资源

      天翼云电脑(公众版)

      便捷、安全、高效的云电脑服务

      对象存储

      高品质、低成本的云上存储服务

      云硬盘

      为云上计算资源提供持久性块存储

      查看更多

      随机文章

      Mybatis-Wrapper导致的生产事故

      MyBatisSystemException There is no getter for property named \'id\' in \'class java.lang.String\'

      单表的CRUD操作改造

      MyBatis - 基础学习7 - 多表查询

      JDBC的CRUD操作之PreparedStatement的修改操作

      MyBatis-保存更新删除

      • 7*24小时售后
      • 无忧退款
      • 免费备案
      • 专家服务
      售前咨询热线
      400-810-9889转1
      关注天翼云
      • 旗舰店
      • 天翼云APP
      • 天翼云微信公众号
      服务与支持
      • 备案中心
      • 售前咨询
      • 智能客服
      • 自助服务
      • 工单管理
      • 客户公告
      • 涉诈举报
      账户管理
      • 管理中心
      • 订单管理
      • 余额管理
      • 发票管理
      • 充值汇款
      • 续费管理
      快速入口
      • 天翼云旗舰店
      • 文档中心
      • 最新活动
      • 免费试用
      • 信任中心
      • 天翼云学堂
      云网生态
      • 甄选商城
      • 渠道合作
      • 云市场合作
      了解天翼云
      • 关于天翼云
      • 天翼云APP
      • 服务案例
      • 新闻资讯
      • 联系我们
      热门产品
      • 云电脑
      • 弹性云主机
      • 云电脑政企版
      • 天翼云手机
      • 云数据库
      • 对象存储
      • 云硬盘
      • Web应用防火墙
      • 服务器安全卫士
      • CDN加速
      热门推荐
      • 云服务备份
      • 边缘安全加速平台
      • 全站加速
      • 安全加速
      • 云服务器
      • 云主机
      • 智能边缘云
      • 应用编排服务
      • 微服务引擎
      • 共享流量包
      更多推荐
      • web应用防火墙
      • 密钥管理
      • 等保咨询
      • 安全专区
      • 应用运维管理
      • 云日志服务
      • 文档数据库服务
      • 云搜索服务
      • 数据湖探索
      • 数据仓库服务
      友情链接
      • 中国电信集团
      • 189邮箱
      • 天翼企业云盘
      • 天翼云盘
      ©2025 天翼云科技有限公司版权所有 增值电信业务经营许可证A2.B1.B2-20090001
      公司地址:北京市东城区青龙胡同甲1号、3号2幢2层205-32室
      • 用户协议
      • 隐私政策
      • 个人信息保护
      • 法律声明
      备案 京公网安备11010802043424号 京ICP备 2021034386号