在我们研究了JDBC和连接池之后,围攻狮子仍然不满足于编程的效率。所以!有了今天更优秀的内容,就是Mybatis框架。它的出现解决了jdbc中的一些问题,提高了代码的健壮性。一起看看吧~
让我们学习大数据|Java和数据库JDBC之间的联系
让我们学习大数据| |JDBC数据库连接高级版,工具类和连接池。
Mybatis介绍
Mybatis在2010年sldy下的开源项目ibatis迁移到Google codde后,改为Mybatis。这是一个非常好用的持久层框架,通过它我们可以封装jdbc操作数据库。我们只需要关心我们的数据库SQL本身,不用费心去注册驱动、连接数据库等复杂的过程。
这里主要是用xml来执行我们的配置,通过java对象和语句中的sql映射来生成我们最终想要的sql语句,最后我们可以通过mybatis框架来执行SQL语句,并将结果映射到java对象并返回。
Mybatis架构(牢记)
1.mybatis配置文件
在上图中,我们可以看到最上面的SqlMapConfig.xml这个配置文件就是我们的全局配置文件,在这个文件中我们可以配置mybatis等的运行环境,mapper.xml文件就是我们所说的sql映射文件,在这个文件中我们配置sql语句,这个文件在执行的时候需要加载到全局配置文件中。
2.通过配置和其他信息,我们可以构建SqlSessionFactory(会话工厂)
3.通过会话工厂创建一个sqlSession,我们操作的sql通过sqlSession执行。
4.mybatis底层定制了Executor接口操作数据库。
5.Mapped语句,封装了mybatis等的一些配置信息和sql映射信息。在mapper.xml文件中,我们的每个sql文件都对应于一个Mapped Statement对象。
00-1010我先给大家看看所有代码文件的布局。下面的步骤,我们按照这些来完成。
1.下载jar包
下载地址https://github.com/mybatis/mybatis-3/releases
在这个包中,我们可以看到第一个是它的依赖包,第三个是它的核心包。
2.环境建设
首先,让我们构建一个新的项目,构建一个新的lib,并将我们所有的核心包和依赖包添加到项目中。此外,不要忘记还应该添加我们数据库的驱动程序包(参考开篇文章)。具体效果如下。
3.添加配置文件
我们创建一个新的资源文件包,并向其中添加3个配置文件。
3.1配置文件log4j .属性(日志信息)
我们可以直接复制日本文件。
#全局日志配置log4j.rootLogger=DEBUG,stdout#控制台输出.log4j . appender . stdout=org . Apache . log4j . consoleapenderlog4j . appender . stdout . layout=org . Apache . log4j . patternlayoutlog4j . appender . stdout . layout . conversation pattern=% 5p[% t]-% m % n
3.2配置文件db.properties
我们以键、值的形式匹配它。
置加载数据库的连接。3.3配置文件SqlMapConfig.xml
上面图片就是一个.xml的配置文件,我们通过<properties>将数据库连接的文件加载进来,通过typeAlias修一下我们过长的类型,再往下就是加载我们的数据库信息了。
其中主要的配置信息大概是这个样子的,
3.封装pojo
我们的数据库是这么定义的。
像以前一样我们将我们使用的字段进行封装,获取get,set方法,tostring方法。
4.Mapper.xml(映射文件)
接下来,我们需要定义一个mapper映射文件UserMapper.xml,具体的效果图如下所示。这个文件其实就是存我们各种sql语句的。
具体内容是,这里我们定义了3个SQL语句,分别是查询用户和保存用户信息的sql语句。
5.UserMapper(接口文件)
内容如下,我们定义了3个接口,分别表示我们之后实现的方法。
6.加载UserMapper.xml文件
7.测试
测试的时候,就是我们要按照最上面的流程图一次进行,这里需要大家写的地方只有红框中的内容,我们只演示通过id查询。代码图如下。
完成之后,我们的代码也就写完了。我们将类名选中后,点击右键run as通过测试来运行代码。
打印完成之后,大家会看到好多行运行结果,这不是错误,是我们之前设置的日志文件,我们仔细查看,便能找到我们的结果。
上面就是我们介绍的开源的优秀的持久层框架Mybatis,我们在加入jar包后,我们添加3个配置文件用来加载数据库,封装完数据。
我们只需要在UserMapper.xml文件中添加sql语句,便可以通过mybatis框架执行sql语句和将结果映射成java对象返回即可。需要我们修改的地方,其实就是这两处,是不是更加的快人一步。
个人原创,有什么补充请多多指教,我们都是爱学习的孩子。 明天我们继续细化内容,私信“Mybatis”获取代码。
有帮助到大家的话,记得点关注哟~
感谢坚持关注的朋友~
世界很大,幸好有你~
欢迎在评论区留下你的问题或困惑,我将每天与你分享我的观点和心得。
聚焦最新科技咨讯,探寻未来智能领域,我是jmdyz女陶。