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

网站服务器费用明细网络宣传网站建设价格

网站服务器费用明细,网络宣传网站建设价格,沈阳市建设公司网站,淘客网站做单品类Mybatis的开发有两种方式: 注解 XML配置文件 通过XML配置文件的形式来配置SQL语句,这份儿XML配置文件在MyBatis当中也称为XML映射文件。 导学:在MyBatis当中如何来定义一份儿XML映射文件? 在MyBatis当中,定义XML…

Mybatis的开发有两种方式:

  1. 注解

  2. XML配置文件

通过XML配置文件的形式来配置SQL语句,这份儿XML配置文件在MyBatis当中也称为XML映射文件。 

导学:在MyBatis当中如何来定义一份儿XML映射文件?

在MyBatis当中,定义XML映射文件它是有一定的规范的。

2.1 XML配置文件规范

  • 使用Mybatis的注解方式,主要是来完成一些简单的增删改查功能
  • 如果需要实现复杂的SQL功能,建议使用XML来配置映射语句,也就是将SQL语句写在XML配置文件中。

在Mybatis中使用XML映射文件方式开发,需要符合一定的规范 - XML映射文件定义规范:

  1. XML映射文件的名称与Mapper接口名称保持一致并且将XML映射文件和Mapper接口放置在相同包下(同包同名)- 在项目开发当中,一般都是一个接口对应一份儿映射配置文件;

  2. XML映射文件的namespace{命名空间}属性与Mapper接口的全限定名{包名+接口名}一致;

  3. XML映射文件中SQL语句的id与Mapper接口中的方法名一致并保持返回类型一致。

  • 通过以上的规则,MyBatis会在运行时动态生成Mapper接口的实现类,并根据接口方法的调用来查找对应的XML配置文件中的SQL语句,并执行该SQL语句,这样,就实现了Mapper接口方法与XML配置文件中SQL语句的关联。 

  • 在标准的Maven项目结构当中,java目录下存放的都是Java的源代码,而resources这个目录下存放的才是配置文件。
  • 在映射配置文件当中来定义SQL语句

  • 每一个SQL语句都有一个唯一标识,就是它的id属性,这个id属性需要与Mapper接口的方法名保持一致。 

<select>标签:就是用于编写select查询语句的。

  • resultType属性,指的是查询返回的单条记录所封装的类型。

2.2 XML配置文件实现

第1步:创建XML映射文件

注意:我们想要的包结构是一级一级的目录,如果用点来分隔,就会当成一个文件,目录之前的               分隔我们要使用斜杠/来分隔。 

打开磁盘目录验证: 

目录结构: 

第2步:编写XML映射文件

  • XML映射文件中的dtd约束,直接从MyBatis官网复制即可

配置XML文件的约束:

<?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=""></mapper>

<mapper></mapper>标签是根标签!

配置:XML映射文件的namespace属性为Mapper接口全限定名  

  • 在<mapper>标签当中,它有一个唯一的属性,就叫namespace命名空间,namespace属性需要与Mapper接口的全类名保持一致。  

  •  XML配置文件的namespace属性与Mapper接口的全限定名一致!

<?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.gch.mapper.EmpMapper"></mapper>

配置:XML映射文件中sql语句的id与Mapper接口中的方法名一致,并保持返回类型一致  

<?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.gch.mapper.EmpMapper"><!--查询操作    resultType:指的是单条记录所封装的类型{实体类全类名}--><select id="select" resultType="com.gch.pojo.Emp">select id,username,password,name,gender,image,job,entrydate,dept_id,create_time,update_timefrom mybatis.empwhere name like concat('%', #{name}, '%')and gender = #{gender}and entrydate between #{begin} and #{end}order by update_time desc</select>
</mapper>

Mapper接口方法:

package com.gch.mapper;import com.gch.pojo.Emp;
import org.apache.ibatis.annotations.*;import java.time.LocalDate;
import java.util.List;/**加上@Mapper注解就代表程序在运行时会自动的创建该接口的代理对象,并且会将这个代理对象放入到IOC容器当中*/
@Mapper
public interface EmpMapper {/*** 条件查询员工信息* 基于XML映射文件的形式来配置SQL语句* @param name => 查询的姓名* @param gender => 查询的性别* @param begin => 查询的入职时间* @param end => 查询的离职时间* @return => 把查询返回的多条记录封装到List集合里面*/public List<Emp> select(String name, short gender, LocalDate begin, LocalDate end);
}

测试类:

package com.gch;import com.gch.mapper.EmpMapper;@SpringBootTest
class SpringbootMybatisCrudApplicationTests {/**从Spring的IOC容器当中,获取类型是EmpMapper的对象并注入*/@Autowiredprivate EmpMapper empMapper;/*** 条件查询*/@Testpublic void testSelectList() {// 调用查询方法查询员工信息,并将查询返回的结果使用List集合接收List<Emp> list =  empMapper.select("张", (short) 1,LocalDate.of(2010, 01, 01), LocalDate.of(2020, 01, 01));// 遍历集合输出list.stream().forEach(s ->{System.out.println(s);});}
}

运行测试类,执行结果:  

思考:在定义XML映射文件的时候,为什么要遵守这三点规范?

  • 通过MyBatis这个框架来操作数据库,最终我们只需要调用Mapper接口当中的接口方法就可以完成数据库的操作,但是我们要明白,最终我们操作数据库并不是直接通过Mapper接口中的方法来操作数据库,而是执行了与该接口方法对应的SQL语句来完成数据库的操作。

思考:通过Mapper接口中的接口方法怎么找到与之关联的SQL语句?

  • 如果使用注解的方式来进行配置,就不用思考这样的问题,因为使用注解的方式进行配置,我们执行这个接口方法,最终执行的不就是注解当中的SQL语句吗?SQL语句与Mapper接口中的接口方法是绑定在一起的。
  • 但是如果我们采用XML配置文件的形式来配置SQL语句,Mapper接口中的接口方法的定义与XML配置文件当中配置的SQL语句,它们两是分开的,我们现在要做的就是根据Mapper接口中的接口方法来找到在XML配置文件当中配置的SQL语句。 
  • 如果我们按照规范来定义了这样一份儿XML配置文件,此时当我们调用Mapper接口当中的接口方法的时候,此时MyBatis框架就会自动的去查找namespace属性值与这个接口全类名相同的这份XML映射文件,并且在这份儿XML映射文件当中找到id属性值与方法名相同的这条SQL语句,最终来运行这条SQL语句,从而就完成了数据库的操作。

2.3 MybatisX的使用

  • MybatisX是一款基于IDEA的快速开发Mybatis的插件,为效率而生。
  • 通过MyBatisX这款插件就可以提高MyBatis的开发效率。 

MybatisX的安装:  

如图:

  • 这只是IDEA的一个误报,IDEA识别错乱的一个问题;
  • 在真实的企业开发当中,一个项目就是一个单独的工程,所以是不会出现这个问题的。

可以通过MybatisX快速定位:  

MyBatisX的使用在后续学习中会继续分享...  

学习了Mybatis中XML配置文件的开发方式了,大家可能会存在一个疑问:到底是使用注解方式开发还是使用XML方式开发?  

官方说明:入门_MyBatis中文网

  • 使用注解来映射简单语句会使代码显得更加简洁,但对于稍微复杂一点的语句,Java 注解不仅力不从心,还会让你本就复杂的 SQL 语句更加混乱不堪。 因此,如果你需要做一些很复杂的操作,最好用 XML 来映射语句。
  • 选择何种方式来配置映射,以及认为是否应该要统一映射语句定义的形式,完全取决于你和你的团队。 换句话说,永远不要拘泥于一种方式,你可以很轻松的在基于注解和 XML 的语句映射方式间自由移植和切换。

结论:

  • 使用Mybatis的注解,主要是来完成一些简单的增删改查功能。
  • 如果需要实现复杂的SQL功能,建议使用XML来配置映射语句。  

总结:

 

 

http://www.yayakq.cn/news/993015/

相关文章:

  • 营销型网站知识企业网站可以个人备案
  • 做进料加工在哪个网站上做网页设计代码大全
  • 郑州东区网站建设网站建设的税率是多少
  • 如何快速提升网站流量空间怎么做网站
  • app软件下载大全关键词排名优化公司成都
  • 苏州网站开发建设制作网站建设后期维护方案
  • 网站做支付按流量付费如何给网站配置域名
  • 网站开发 cmswordpress 最大上传
  • 网站建设排版开发公司交房流程及注意事项
  • 类似站酷的设计类网站新乡专业做网站的公司哪家好
  • 学做网站有多难机械做网站
  • 客户买东西返利网站怎么做网站备案接口
  • 网站建设 不需要见面wordpress给管理员发送邮件
  • html论坛网站模板下载wpf可以应用于网站开发吗
  • 梅州市住房和城乡建设局官网网站新冠止咳药哪个效果好
  • 做网站 excelwordpress智能表单
  • 北京校园网站建设昆明高端seo怎么做
  • 我们不仅仅做网站更懂得网络营销大型商城购物平台开发
  • 河北网站开发多少钱网页设计师需要会什么软件
  • 东莞企业网站模板建站如何做彩票销售网站
  • 学院网站建设的意义公司网页制作教程
  • 那个网站做二手车好对于新公司如何让其做网站推广
  • 给微商做网站wordpress 如何使用php版本
  • 做qq头像的网站有哪些荣耀官方网站手机商城
  • 辽宁省建设厅网站升级装修设计软件哪个好用免费
  • 网站收录就是没排名外贸wordpress模板下载
  • 成都企业网站设计制作中小企业网络拓扑图
  • 北京购物网站建设公司ppt现成作品下载
  • 中山营销网站建设联系方式深圳最出名的50家公司
  • 新手怎么做自己网站广告建设网站需要哪个语言编译器