parameterType 属性は、MyBatis の select、insert、update、delete 要素で記述されています。 MyBatis が使用できるようになったparameterTypesには、基本データ型とJava複合データ型が含まれています
基本データ型: int、String、Dateなど。基本データ型はパラメータとして使用され、1 つのみを渡すことができます。受信値は、#{パラメータ名}
複雑なデータ型 (JAVA エンティティ クラスやマップを含む) を通じて取得できます。 #{属性名} または #{マップのキー名} を通じて受信値を取得できます
基本的なデータ型パラメーターの例:
クラス ID に基づいて教師リストをクエリ
xml ファイル
<select id="selectTeacher" parameterType="int" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} </select>
Java コード
List<Teacher> tList = teacherMapper.selectTeacher(2); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
JAVA エンティティ タイプ パラメータの例:
<select id="selectTeacher" parameterType="com.myapp.domain.Teacher" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} </select>
java代码 Teacher queryTeacher=new Teacher(); queryTeacher.setId(2); List<Teacher> tList = teacherMapper.selectTeacher(queryTeacher); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
マップ パラメータの例:
<select id="selectTeacher" parameterType="Map" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} and sex=#{sex} </select>
java代码 Map<String,String> map=new HasMap<String,String>(); map.put("id","2"); map.put("sex","男"); List<Teacher> tList = teacherMapper.selectTeacher(map); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString()); }
さらに、MyBatis は、アノテーションを使用して複数のパラメータに参加する方法も提供します。このメソッドでは、インターフェイスのパラメーターに @Param アノテーションを追加する必要があります
例:
インターフェイス メソッド
public List<Teacher> selectTeacher(@Param(value="id") String id,@Param(value="sex") String sex);
XML ファイル
<select id="selectTeacher" resultType="com.myapp.domain.Teacher"> select * from Teacher where c_id=#{id} and sex=#{sex} </select>
テスト コード
List<Teacher> tList = teacherMapper.selectTeacher("2","男"); for (Teacher entityTemp : tList) { System.out.println(entityTemp.toString());
上記は、MyBatis の受信パラメーターの詳細な紹介であり、より関連しています。コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。