Предисловие
Существует атрибут параметратип в элементах SELECT, вставьте, обновляйте и удаляет в файле MyBatis Mapper, который используется для соответствующих типов параметров, принятых методом интерфейса Mapper. Эта статья в основном представляет соответствующий содержимый тип параметра параметра в Mybatis. Это обменивается вашей ссылкой и обучением. Я не скажу многое ниже. Давайте посмотрим на подробное введение вместе.
1. Тип типа параметрического типа разделен на два типа
1. 1. Основные типы данных: int, строка, длинная, дата;
1. 2. Сложные типы данных: классы и карты
2. Как получить значение в параметре:
2.1 Основной тип данных: #{параметр} Получить значение в параметре
2.2 Комплексный тип данных: #{name attribute}, #{key} в карте
3. Дело:
3.1 Основные случаи типа данных
<sql id = "base_column_list"> id, car_dept_name, car_maker_name, icon, car_maker_py, hot_type < /sql> <select id = "selectbyprimarykey resultmap =" basersultmap "parametertype =" java.lang.long "> select <clite incule =" list_colum common_car_make, где id = #{id, jdbctype = bigint} </select>3.2 Комплексный тип карты карты
<select id = "QueryCarmakerList" resultMap = "baseresultMap" parameterType = "java.util.map"> select <includ refid = "base_column_list" /> from omew_car_make cm, где 1 = 1 <if = "id! test = "cardeptname! = null"> и cm.car_dept_name = #{cardeptname, jdbctype = varchar} </if> <if test = "carmakername! = null"> и cm.car_maker_name = #{carmakername, jdbctype = varchar_maker_name = #{carmakername, jdbctype = varchar} </if> #{carmakername, jdbctype = varchar_maker_name = # cm.hot_type = #{hottype, jdbctype = bigint} </if> order by cm.id </select>3.3 комплексных типов типов класса
<Update id = "updateByPrimaryKeySelective" parameterType = "com.epeit.api.model.commoncarmake"> update overd_car_make <set> <if test = "cardeptname! = null"> car_dept_name = #{cardeptname, jdbctype = varchar}, </if> <ifem. car_maker_name = #{carmakername, jdbctype = varchar}, </if> <if test = "icon! = null"> icon = #{icon, jdbctype = varchar}, </if> <if test = "carmakerpy! </if> <if test = "hottype! = null"> hot_type = #{hottype, jdbctype = bigint}, </if> </set> где id = #{id, jdbctype = bigint} </update>3.4 Комплексный тип-случай, когда массивы включены в карту
<select id="selectProOrderByOrderId" resultType="com.epeit.api.model.ProOrder" parameterType="java.util.HashMap" > select sum(pro_order_num)proOrderNum,product_id productId,promotion_id promotionId from pro_order where 1=1 <if test="orderIds != null"> and <foreach collection="orderIds" item = "item" open = "order_id in (" sepreator = "," close = ")"> #{item, jdbctype = bigint} </foreach> </if> Group от product_id, romotion_id </select>4. Аннотация @Param: Это очень особенное, но это легко понять
Случай 1:
@Param(value="startdate") String startDate : аннотировать одно свойство; Это похоже на переименование параметра один раз
Например, настроить операторы SQL (слой DAO) в *mapper.xml вызывающем mybatis
Список <string> selectIdBySorttime (@Param (value = "startDate") String startDate);
Затем оператор в XML должен быть сопоставлен с контентом в кронштейнах @Param: параметр startDate
<select id = "selectIdbySorttime" resultType = "java.lang.string" parametertype = "java.lang.string"> select infact ajlcid из ebd_fh_ajlc, где сортировка> = to_date (#{startdate, jdbctype = varchch Keyvalue In (выберите различные компании по имени из ebd_fh_company_list, где isupdate = '0') </select> Случай 2:
Аннотация javabean,@param (value = "datevo") datevo datevo; вам нужно обратить внимание на письменные параметры
Список <string> selectIds (@param (value = "datevo") datevo datevo);
Соответствующий картирующий файл
<select id = "selectids" reculatype = "java.lang.string" parametertype = "com.api.entity.datevo"> select ajlcid из ebd_fh_ajlc, где sorttime> = to_date (# {datevo.startdate, jdbctype = varcharh}, 'yyy-mm-mm-mm-mm-mm-mm-mm-mm-mm-mm.startdate, jdbctype = varchar create_date = updated_date и keyvalue в (выберите различные компании по имени ebd_fh_company_list, где isupdate = '0') </select>Что касается преимуществ и недостатков, это зависит от личных предпочтений
Суммировать
Вышеуказанное - все содержание этой статьи. Я надеюсь, что содержание этой статьи имеет определенную справочную ценность для каждого обучения или работы. Если у вас есть какие -либо вопросы, вы можете оставить сообщение для общения. Спасибо за поддержку Wulin.com.