API—从数据库到JDBC再到Mybatis

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

0.0:老规矩先放图

API—从数据库到JDBC再到Mybatis_第1张图片

1.0:为啥要有这玩意

   最直接的问题, 笔者很实在,要这玩意对我有啥用,

    在关系数据库的"对象/关系"映射中,表中的每行对应于类的一个实例,而每列的值对应于该实例的一个属性。(百度告诉我的,然而RBN),我自己的话就是怎样把对象放到数据库中,又怎样原样取出来。

1.1:Mybatis

    MyBatis 是的持久层框架,它支持定制化 SQL、存储过程以及高级映射。

    优点:

        MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。

    方式:

        1:XML 或注解来配置和映射原生信息(真的是万能的XML啊!)

        2:将接口和 Java 的Objects映射成数据库中的记录。

    关键字:

        我喜欢找关键字(来来来,我们来找找看看有什么关键字)

        JDBC,XML,注解(语法糖),Object,SQL记录

那么什么是JDBC呢?后面再说。。。

    特点:动态SQL

    API—从数据库到JDBC再到Mybatis_第2张图片

上面所讲的大概就是这张图,那么我们大概了解了怎样工作,

首先:扫描配置文件和注解,通过SQL解析成相应的可执行SQL语句,

010942_IxyU_3483440.pngAPI—从数据库到JDBC再到Mybatis_第3张图片

这样就有了具体的操作(XML),在哪执行这个操作(注解),接受什么参数(XML中),返回什么参数(XML)

其次:将XML中的配置对应拼接成JDBC,在由JDBC拼装成SQL语句

最后:根据配置文件将结果对应成JavaBean对象,返回给你,完事

过程很完美,理解也很简单,但是,啥是JDBC

1.2:JDBC (这玩意就复杂了,但好在我们不用去管他)

        JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java AP。JIDBC 是个"低级"接口,也就是说,它用于直接调用 SQL 命令。

        完事,就是把JavaObject和数据库连接的工具。

        简单地说,JDBC 可做三件事:

            1,与数据库建立连接

            2、发送 操作数据库的语句

            3,处理结果

API—从数据库到JDBC再到Mybatis_第4张图片

然而他的实现当然没有笔者动动嘴皮子这么简单,其中涉及到的协议,SQL,驱动等等我们不去细究,但是有个东西我们来看看JavaBean

   1.3:JavaBean(Java豆?还真是)

        “write once,run anywhere,reuse anywhere”

        编写javabean就是编写一个java的类,所以你只要会写类就能编写一个bean,这个类创建的一个对象称做一个bean。为了能让使用这个bean的应用程序构建工具(比如JSP引擎)知道这个bean的属性和方法,只需在类的方法命名上遵守以下规则:

        1. 如果类的成员变量的名字是xxx,那么为了更改或获取成员变量的值,即更改或获取属性,在类中可以使用两个方法:

getXxx(),用来获取属性xxx。

setXxx(),用来修改属性xxx.。

        2. 对于boolean类型的成员变量,即布尔逻辑类型的属性,允许使用"is"代替上面的"get"。(当然在开发手册里是不允许这么干的)

        3. 类中访问属性的方法都必须是public的,一般属性是private的。

        4. 类中如果有构造方法,那么这个构造方法也是public的并且是无参数的。

       遵循简单的方法命名规则,这样应用程序构造器工具找到JavaBean提供的属性,然后查询或修改属性值,对bean进行操作。JavaBean还可以对属性值的改变作出及时的反应。

    1.4:API

    回到话题,mybatis是JDBC的一套框架,JDBC是API,那么API是啥

    API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

    好嘛,类似与库函数是吧!

API—从数据库到JDBC再到Mybatis_第5张图片

      

 

 

 

转载于:https://my.oschina.net/u/3483440/blog/1527798

你可能感兴趣的:(API—从数据库到JDBC再到Mybatis)