MyBatis怎么同时新增两张表呢?(原来如此简单)

       我要做的业务是上传文件(假上传),同时新增文件信息表和文件审核表,他们有共同的ID为文件ID(为了后面的关联查询)。

       定义接口:

public interface UpFileMapper {
  
	  //上传文档
	  //1.插入文件信息表
	  Integer insertByFileInfo(@Param("fileInfo") FileInfo fileInfo);
	  //2.插入文件审核表
	  Integer insertByFileCheck(@Param("fileCheck") FileCheck fileCheck);
	  
}

        定义映射类:

MyBatis怎么同时新增两张表呢?(原来如此简单)_第1张图片




  
  
  
  
  
   select seq_file_info.nextval from dual
  
  insert into file_info(file_id,file_name,up_ctime,file_state,type_id,user_id,admin_id,md5_code,file_size,save_path,file_score) values
                     (#{fileInfo.fileId},#{fileInfo.fileName},sysdate,0,#{fileInfo.typeId},#{fileInfo.userId},
                     101,'system',8,'home',#{fileInfo.fileScore})
  
  
  
  insert into file_check_info(fc_id,file_id,check_state,check_ctime,admin_id) values
                            (seq_file_check_info.nextval,#{fileCheck.fileId},0,sysdate,101)
  
  

 当然,这不是最关键的,这selectKey标签官网上也有啊,关键是我要怎么去拿到上张表(文档信息表)的ID呢?这是官网上没有说的。

Servlet中处理业务的时候,把上张表的ID得到,插入到下张表中
MyBatis怎么同时新增两张表呢?(原来如此简单)_第2张图片

就是这样,这一步不能少哦。

你可能感兴趣的:(Mybatis,JAVA)