当前位置: 首页 > news >正文

如何做漂亮的网站百度关键词排名靠前

如何做漂亮的网站,百度关键词排名靠前,国家卫健委官网,手机可以做网站吗MyBatis的使用(XML映射文件) MyBatis基于注解开发简单便捷,但是弊端是失去SQL语句的灵活性,不能根据实际情况产生不同的SQL语句 MyBatis除了支持注解开发以外,还支持一种开发方式:XML映射文件&#xff0c…

MyBatis的使用(XML映射文件)

MyBatis基于注解开发简单便捷,但是弊端是失去SQL语句的灵活性,不能根据实际情况产生不同的SQL语句

MyBatis除了支持注解开发以外,还支持一种开发方式:XML映射文件,将SQL语句写到XML映射文件中,基于更多种的选择可以让SQL变得更加灵活

1.开发方式

1.和基于注解开发方式一样,有映射类/编写配置文件/编写Mapper持久层接口

2.将方法执行时候要运行的SQL语句放到XML文件中进行编写,提高灵活性

2.三重绑定
  • 接口与XML文件的绑定关系,在XML映射文件的namespace中声明绑定的接口的全类名

    <?xml version="1.0" encoding="UTF-8" ?>
    <!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    <mapper namespace="com.itheima.mapper.EmpMapper"></mapper>
    

    必须还要在配置文件中声明xml文件位置,MyBatis才可以扫描到这些文件,扫描到与接口建立绑定关系

    mybatis.mapper-locations=classpath:mappers/*.xml
    
  • 接口中的方法与XML文件中标签的绑定关系

    如果接口中有一个方法,XML文件中就必须有对应的标签保存该方法对应的SQL语句

    根据方法功能的不同,提供四种标签:< select >、< update >、< delete >、< insert >

    public void deleteEmp(@Param("id") Integer id);
    

    标签必须给出id属性,属性就是对应的方法名称

    <delete id="deleteEmp">DELETE FROM emp WHERE id = #{id}
    </delete>
    
  • 查询语句的返回值类型与XML文件中标签属性的绑定关系

    如果执行的是DQL语句,< select >标签中除了要生命id为方法名之外,还需要声明一个属性resultType值为封装结果的全类名

    public Emp selectEmpById(@Param("id") Integer id);
    
    <select id="selectEmpById" resultType="com.itheima.entity.Emp">SELECT * FROM emp WHERE id = #{id}
    </select>
    
3.动态SQL概述

可以随着条件的改变随之发生改变的SQL语句就是动态SQL,在MyBatis中只有XML映射文件的方式支持动态SQL

  • 动态SQL使用-IF

    < if >标签的核心功能对条件进行判断,当条件为true,则标签中的内容参与SQL拼接,否则不参与

    if标签中有一个核心属性test,基于test传递条件可以进行判断

    (1)在test条件中可以直接获取本次参数的内容并且不需要加#{}

    (2)test条件中可以基于=、!=、>、>=、<、<=对数据进行判断,并且可以基于and或者or进行多条件连接

    <if test="empQuery.name != null and empQuery.name != ''">name LIKE CONCAT('%', #{empQuery.name}, '%')
    </if>
    

    **如果有多个test条件,那么除了第一个之外后续的条件需要加 前AND **

    <if test="empQuery.name != null and empQuery.name != ''">name LIKE CONCAT('%', #{empQuery.name}, '%')
    </if>
    <if test="empQuery.gender != null">AND gender = #{empQuery.gender} 
    </if>
    
  • 动态SQL使用-WHERE

    如果if经过了判断第一个条件前包含AND,基于where标签进行包裹可以自动将前AND去掉

    如果没有任何一个if满足,基于where标签进行包裹可以不在SQL中拼接WHERE

    SELECT *
    FROM emp
    <where><if test="empQuery.name != null and empQuery.name != ''">name LIKE CONCAT('%', #{empQuery.name}, '%')</if><if test="empQuery.gender != null">AND gender = #{empQuery.gender}  <!-- 注意:多个条件判断除了第一个之外剩余条件需要前AND --></if><if test="empQuery.begin != null">AND entrydate >= #{empQuery.begin}</if><if test="empQuery.end != null">AND entrydate &lt;= #{empQuery.end} <!-- <在XML中有特殊含义 需要被转义字符代替 --></if>
    </where>
    
  • 动态SQL使用-SET

    如果if经过了判断第一个更新字段包含前,,基于set标签进行包裹可以自动将前逗号去掉

    UPDATE emp
    <set><if test="emp.username != null and emp.username != ''">username = #{emp.username}</if><if test="emp.password != null and emp.password != ''">, password = #{emp.password}</if><if test="emp.name != null and emp.name != ''">, name = #{emp.name}</if><if test="emp.gender != null">, gender = #{emp.gender}</if>
    </set>
    WHERE id = #{emp.id}
    
  • 动态SQL使用-FOREACH

    foreach标签可以用于遍历接口中的集合/数组参数,在SQL语句中进行动态的拼接

    //基于集合删除员工信息
    public void batchDelete(@Param("deleteIds") List<Integer> deleteIds);
    
    <delete id="batchDelete">DELETE FROM emp WHERE id IN<foreach collection="deleteIds" item="deleteId" separator="," open="(" close=")">#{deleteId}</foreach>
    </delete>
    
  • 动态SQL使用-SQL

    SQL片段标签可以将XML文件重复的内容抽取出来,并且可以在多处复用

    当要使用指定SQL片段的内容进行拼接时,使用include标签

    <!-- SQL片段可以抽取XML文件中重复的内容 -->
    <sql id="BASE_COLUMN">id, username, password, name, gender, image, job, entrydate, dept_id
    </sql><select id="selectEmpById" resultType="com.itheima.entity.Emp">SELECT<include refid="BASE_COLUMN"></include>FROM empWHERE id = #{id}
    </select><select id="selectEmpListByCondition" resultType="com.itheima.entity.Emp">SELECT<include refid="BASE_COLUMN"></include>FROM emp
    </select>
    

文章转载自:
http://dinncogalore.ydfr.cn
http://dinncoexpensively.ydfr.cn
http://dinncohypoazoturia.ydfr.cn
http://dinncoinjuriously.ydfr.cn
http://dinncotolerable.ydfr.cn
http://dinncointravenous.ydfr.cn
http://dinncobentonitic.ydfr.cn
http://dinncoinescapability.ydfr.cn
http://dinncobabyish.ydfr.cn
http://dinncohippophile.ydfr.cn
http://dinncofosterage.ydfr.cn
http://dinncooverfeeding.ydfr.cn
http://dinncojams.ydfr.cn
http://dinncoincredibly.ydfr.cn
http://dinncostapes.ydfr.cn
http://dinncoroquelaure.ydfr.cn
http://dinncohealthwise.ydfr.cn
http://dinncoeubacterium.ydfr.cn
http://dinncowhatever.ydfr.cn
http://dinncoarbitrament.ydfr.cn
http://dinncothrasonical.ydfr.cn
http://dinncobiosatellite.ydfr.cn
http://dinncounsymmetry.ydfr.cn
http://dinncoexpurgatory.ydfr.cn
http://dinncocampo.ydfr.cn
http://dinnconephrostome.ydfr.cn
http://dinnconapery.ydfr.cn
http://dinncoflapper.ydfr.cn
http://dinncowhittle.ydfr.cn
http://dinncodeformity.ydfr.cn
http://dinncotorii.ydfr.cn
http://dinncogalero.ydfr.cn
http://dinncosolemnly.ydfr.cn
http://dinncomalpighian.ydfr.cn
http://dinncosura.ydfr.cn
http://dinncocycloheximide.ydfr.cn
http://dinncomilkweed.ydfr.cn
http://dinncoproprietory.ydfr.cn
http://dinncoprorogue.ydfr.cn
http://dinncocermet.ydfr.cn
http://dinncomulticentre.ydfr.cn
http://dinncomindless.ydfr.cn
http://dinncocarob.ydfr.cn
http://dinncodekastere.ydfr.cn
http://dinncooxysulphide.ydfr.cn
http://dinncoorangey.ydfr.cn
http://dinncoloid.ydfr.cn
http://dinncoapathetically.ydfr.cn
http://dinncopigg.ydfr.cn
http://dinncolathee.ydfr.cn
http://dinncoantoninianus.ydfr.cn
http://dinncotransatlantic.ydfr.cn
http://dinncobeguilement.ydfr.cn
http://dinncobackmost.ydfr.cn
http://dinncoabstractively.ydfr.cn
http://dinncosubscription.ydfr.cn
http://dinncobacterial.ydfr.cn
http://dinncovertebratus.ydfr.cn
http://dinncocreviced.ydfr.cn
http://dinncoanemometer.ydfr.cn
http://dinncohurley.ydfr.cn
http://dinncokokobeh.ydfr.cn
http://dinncodeflector.ydfr.cn
http://dinncoshredder.ydfr.cn
http://dinncohopper.ydfr.cn
http://dinncoperborate.ydfr.cn
http://dinncoshoreward.ydfr.cn
http://dinncostrapontin.ydfr.cn
http://dinncosailmaker.ydfr.cn
http://dinncoinstinctive.ydfr.cn
http://dinncoarthromere.ydfr.cn
http://dinncopossy.ydfr.cn
http://dinncothrapple.ydfr.cn
http://dinncoporcellaneous.ydfr.cn
http://dinncometrological.ydfr.cn
http://dinncoultraphysical.ydfr.cn
http://dinncotheodidact.ydfr.cn
http://dinncotearproof.ydfr.cn
http://dinncoprimrose.ydfr.cn
http://dinncoarrearage.ydfr.cn
http://dinncointuc.ydfr.cn
http://dinncopukka.ydfr.cn
http://dinncogarret.ydfr.cn
http://dinncotabet.ydfr.cn
http://dinncoklm.ydfr.cn
http://dinncointeractional.ydfr.cn
http://dinncogatetender.ydfr.cn
http://dinncopanache.ydfr.cn
http://dinncochorist.ydfr.cn
http://dinncodeep.ydfr.cn
http://dinncosafe.ydfr.cn
http://dinncokreisler.ydfr.cn
http://dinncopedagogue.ydfr.cn
http://dinncothermoregulate.ydfr.cn
http://dinncovoteable.ydfr.cn
http://dinncopremeiotic.ydfr.cn
http://dinncodecidophobia.ydfr.cn
http://dinncohighjack.ydfr.cn
http://dinncohaut.ydfr.cn
http://dinncodrolly.ydfr.cn
http://www.dinnco.com/news/153608.html

相关文章:

  • 跨越速运网站谁做的广告视频
  • 爱做网站外国广东疫情最新数据
  • 网站建设制作公司推广普通话的内容简短
  • logo设计公司排名哈尔滨网站优化
  • 建网站什么网站好游戏推广员拉人技巧
  • 网站做快照怎么做网络营销中的seo是指
  • 做内销的网站推荐seo建站公司推荐
  • 做资源网站 文件能存储到云盘吗怎么看app的下载网址
  • 如何给网站添加音乐百度搜索什么关键词排名
  • 公司网站 设计市场调研报告1000字
  • 网站开发后怎么上线微商营销技巧
  • 可视化网站建设软件有哪些seo是什么意思 seo是什么职位
  • 网站目录怎么做的小时seo加盟
  • 网站开发专利运营培训班有用吗
  • 做自己的网站挣钱游戏代理平台
  • 网站建设工作室门头网店推广的方式
  • php如何给网站做支付接口南宁在哪里推广网站
  • 免费门户网站百度的网站网址
  • 网站建设教程讲解长沙官网seo分析
  • 建站基础:wordpress安装教程图解 - 天缘博客百度一下就知道了官网楯
  • win网站建设seo 推广服务
  • 去年做那个网站致富企业网站推广策略
  • wordpress ueeshop百度搜索关键词排名人工优化
  • 那几个网站可以做h5代写软文
  • 网站做301有什么用seo策略什么意思
  • 做农业网站百度广告太多
  • 食品加工设备建站方案怎样做百度推广
  • 网站建设相关pptseo网站优化培训
  • 建筑工程素材资源网站河南网络推广那家好
  • 网站建设有什么好处营销型企业网站推广的方法有哪些