在 MyBatis 中,可以通过以下两种方式来区分重载方法:
<select id="findUserById" parameterType="int" resultType="User">
SELECT * FROM user WHERE id = #{id}
</select>
<select id="findUserByName" parameterType="string" resultType="User">
SELECT * FROM user WHERE name = #{name}
</select>
在上面的例子中,findUserById
和 findUserByName
是两个重载方法,它们分别接受一个整数参数和一个字符串参数。在映射文件中,通过 parameterType
属性来指定参数的类型,从而区分这两个重载方法。
2. 通过不同的方法名来区分重载方法:如果有两个重载方法,它们的方法名相同,但参数类型不同,那么可以通过在方法名后面添加不同的参数类型后缀来区分这两个重载方法。例如,如果有两个重载方法,一个接受一个整数参数,另一个接受一个字符串参数,那么可以这样编写:
<select id="findUserById" parameterType="int" resultType="User">
SELECT * FROM user WHERE id = #{id}
</select>
<select id="findUserByName" parameterType="string" resultType="User">
SELECT * FROM user WHERE name = #{name}
</select>
在上面的例子中,findUserById
和 findUserByName
是两个重载方法,它们的方法名相同,但参数类型不同。在映射文件中,通过在方法名后面添加不同的参数类型后缀来区分这两个重载方法,例如 findUserById
和 findUserByName
。