Student.java
StudentMapperインターフェースはメソッドを定義します
StudentMapperプロファイルは、それに応じて構成します
方法(<セット>と<もし>結合)
< 更新ID = "updateStu" > 更新スチューデント <! - SETはスプライシング(カンマ)の後に、過剰の文字列が削除され、 例えば、唯一の変更意志ID =#{ID}後(カンマ)IDを除去した後- > < SET > < IF テスト= "ID = NULL!" > ID =#{ID} </ IF > < IF テスト= "NAME = NULL&アンプ;!&アンプ;! name.trim()= ''" > }#{名前=名 </ IF > </ SET > ID =#{ID} </ 更新>
第二の方法(<トリム>と<もし>バインディング)
< 更新ID = "updateStu" > アップデート学生 <! - トリム文字列が過剰スプライシング(カンマ)を除去した後に達成することができを通して- > < トリム接頭辞= "SET" suffixOverrides = "" > < IF テスト= "!ID = NULL" > ID =#{ID} </ IF > < IF テスト= "NAME = NULL&アンプ;!&アンプ;! name.trim()= ''" > 名=#{名前} </ IF > </ TRIM > ここで、ID =#{ID} </ 更新>
試験方法
// 動的SQLの試験{<セット>と<もし>バインディング}または{<トリム>及びバインディング更新が<場合>}いくつかのフィールドを達成する @Test 公共 ボイド testUpdateStu()は、スローにIOException { 文字列リソース =「MyBatisの-configと。 XML " ; InputStream InputStreamは = Resources.getResourceAsStream(リソース); SqlSessionFactory SqlSessionFactoryは = 新しい新しいSqlSessionFactoryBuilder()ビルド(InputStreamの);. SQLSESSION SQLSESSION = sqlSessionFactory.openSession(); studentMapper studentMapper = sqlSession.getMapper(studentMapper。クラス); 学生学生= studentMapper.updateStu(新しい学生(1、 "小王" )); System.out.println(学生)。 sqlSession.close(); }
オリジナルデータID 1
試験方法を行った後