引数のSQLとしてPOJOする方法をMyBatisの

今日は仕事で、あなたはその後、100財産がある場合には、その後、私は、このインターフェイスではありません、間違っていると思いますが、実際はモデルにパラメータDAOインタフェースとしてすべての属性を開始することで、データベースへのユーザーの登録情報を取得する必要があります渡された100個のパラメータがあるのですか?

だから私は、次のように具体的な実装である、SQLパラメータを渡すためにDTOモデルやDAOインタフェースとして引数全体を考慮してください。

    (1)定義DAOインタフェース:

@Repository 1。
2 {パブリックインターフェイスProjectDtoMapper 
3。
(@Param( "projectDto")ProjectDto projectDto)を追加する4ボイド; //これはコメントを追加しなければならない、または構成ファイルDTOオブジェクトに見つかりません
。5 
6}

    (2)定義されたサービス。

コードをコピー
1 @Service 
 2パブリッククラスProjectService { 
 3 @Resource 
 4プライベートProjectDtoMapper projectDtoMapper。
 5 
 6公共ボイドaddProject(ProjectDto projectDto){ 
 7 projectDtoMapper.addProject(projectDto)。
 8} 
 9 
10}
コードをコピー

    (3)Mapper.xml構成(重要):

コードをコピー
1の<?xml version = "1.0"エンコード= "UTF-8"?> 
 2 <DOCTYPEマッパーPUBLIC! " - // mybatis.org//DTDマッパー3.0 // EN"「http://mybatis.org/dtd /mybatis-3-mapper.dtd "> 
 3 <マッパー名前空間=" com.kingnetdc.kingnetio.innerapi.service.db.dao.ProjectDtoMapper "> 
 4 
 5 <インサートID =" addProject "のParameterType =" com.kingnetdc.kingnetio .innerapi.service.db.dto.background.ProjectDto "> 
 dana.auth_projects INTO 6 INSERT(ソートPROJECT_ID、PROJECT_NAME、last_edit_dateは)値
 7(#{projectDto.project_idを}、{#projectDto.project_name}、{#projectDto。ソート}、{#projectDto.last_edit_date})
 8 </挿入> 
 9 
10 </マッパー>
コードをコピー

注:ここで名前空間はパス名+クラス名DAOインタフェースである必要があり、ParameterTypeがDTO +クラス名に対応するパス名の名前であり、書かれたパラメータ#{}上記の注釈インターフェース追加の別名属性ことを特徴とします。

 

オリジナル住所:httpsの:? //W​​ww.cnblogs.com/jy107600/p/7112748.htmlは、utm_source = itdadao&utm_medium =紹介

 

おすすめ

転載: www.cnblogs.com/it-deepinmind/p/11779285.html