mybatis简单搭建
背景
闲来没事把mybatis再熟悉一下,可能之前自己搭过没有记录。mybatis其实就是一个orm框架,在我们之前做.net工作的时候,我们的ef,dapper等都是这样的框架,java现在web流行的就是ssm框架,Spring+SpringMVC+Mybatis。今天我要搭的只是mybatis的一个小demo。
正文
选择mybatis的版本,我下载了一个 3.4.4的版本。然后打开官网 www.mybatis.org/mybatis-3。
官网说的很清楚,如果你是用的Maven那么直接把
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>x.x.x</version>
</dependency>
复制到你的pom.xml中,我是直接加载的jar包,mybatis的jar包和lib中的jar包。ok,看着官网走吧。
1、配置你的环境数据源配置文件,也就是一个环境加载数据的地方。直接拿来官网的,environment中的配置信息就是当初我们的jdbc的配置信息。mappers节点,一看是加了s的那么说明会有多个mapper没错就是这样的。我们这里只是做一个demo,用一个表。

2、接下来就是要配置sql了的配置文件了,也就是我们的mapper。这次我直接截图我的demo中的配置。首相是namespace,这个就是一个命名空间,必须要唯一的。其中里面的节点select作为查询,insert当然就是插入了,大家一看就明白了。至于里面的节点怎么写的,可以直接看官网,说的很明白。

3、两个文件都有了,那么怎么合并,其实就在在第一个配置文件的mappers中添加一个mapper然后将sql的配置地址复制给它就ok了。其实里面还有很多的属性,http://www.mybatis.org/mybatis-3/configuration.html#mappers 官网这里会详细介绍。这里我们用的是resource属性。
4、接下来就是开始代码的工作了。我将单元测试jar导入进来,创建一个class用来写测试方法。这里我只写了一个查询一个插入。
->String resource = "org/mybatis/example/mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory =
new SqlSessionFactoryBuilder().build(inputStream);
官网的代码,这是我们的第一步。也就是获取我们需要的会话工厂,接下来就是创建会话。
-> openSession = ssf.openSession(); List<Student> list = openSession.selectList("studentsManager.selectStudents", "李四");
list.forEach(System.out::println);
open会话开始,selectList是查询集合的方法,第一个参数是我们mapper具体的执行块,第二参数是我传递的查询参数。这样直接就可以查出来了。
这个查询,那么看一下插入。插入也是这个过程只不过在插入之后要有点变动。也就是插入是一个事务维护的,如果插入失败是需要回滚的,只有插入成功才会去提交。
int update = openSession.insert("studentsManager.insertStudent", new Student("lili", "数学", 77.3f));
if(update>0)
{
openSession.commit();
}
else
{
openSession.rollback();
}
总结
这阵子再面试中,我觉得面试是一个技巧,可能自己缺乏面试技巧。短短的几十分钟内,或者一两小时内,如果让面试官认识到自己的价值。是需要一定的能力的,我会努力。目前正在寻找java开发,大数据开发,如有需要请与我联系。
没有停滞不前,只有退步与进步。
mybatis简单搭建的更多相关文章
- 零配置简单搭建SpringMVC 项目
SpringMVC是比较常用的JavaWeb框架,非常轻便强悍,能简化Web开发,大大提高开发效率,在各种Web程序中广泛应用.本文采用Java Config的方式搭建SpringMVC项目,并对Sp ...
- MYBATIS 简单整理与回顾
这两天简单整理了一下MyBatis 相关api和jar包这里提供一个下载地址,免得找了 链接:http://pan.baidu.com/s/1jIl1KaE 密码:d2yl A.简单搭建跑项目 2.进 ...
- mybatis的搭建和注入spring的方式
mybatis实际上是一个更多关注sql语句的框架,他的出现是想让开发者更简单的去操作数据库. 与hibernate相比较,hibernate更多的是去sql化,虽然hibernate也可以本地sql ...
- Spring+Mybatis+Mysql搭建分布式数据库访问框架
一.前言 用Java开发企业应用软件, 经常会采用Spring+MyBatis+Mysql搭建数据库框架.如果数据量很大,一个MYSQL库存储数据访问效率很低,往往会采用分库存储管理的方式.本文讲述如 ...
- MyBatis -01- 初识 MyBatis + MyBatis 环境搭建
MyBatis -01- 初识 MyBatis + MyBatis 环境搭建 MyBatis 本是 apache 的一个开源项目 iBatis(iBATIS = "internet" ...
- mybatis 环境搭建和基本说明
mybatis介绍就不多提了,直接步入正题. 先准备好eclipse和MySQL,然后先看一下目录结构 文件和类很少,所以mybatis的搭建是非常简单的,如搭建中遇到问题可以先参考文档最后一部分的综 ...
- 浅析MyBatis(二):手写一个自己的MyBatis简单框架
在上一篇文章中,我们由一个快速案例剖析了 MyBatis 的整体架构与整体运行流程,在本篇文章中笔者会根据 MyBatis 的运行流程手写一个自定义 MyBatis 简单框架,在实践中加深对 MyBa ...
- Mybatis环境搭建及测试
1.新建java project,导入相应jar包 本次使用到的mybatis-3.2.7版本 mybatis需要jar包:mybatis-3.2.7.jar.lib文件下的依赖jar mysql驱动 ...
- python简单搭建HTTP Web服务器
对于Python 2,简单搭建Web服务器,只需在i需要搭建Web服务器的目录(如C:/ 或 /home/klchang/)下,输入如下命令: python -m SimpleHTTPServer 8 ...
随机推荐
- The Twelve-Factor App 实践
The Twelve-Factor App <The Twelve-Factor App>定义了一个优雅的互联网应用在设计过程中,尤其是在设计SAAS服务时,需要遵循的一些基本原则.本文为 ...
- 使用Olami SDK 语音控制一个支持HomeKit的智能家居的iOS程序
前言 HomeKit是苹果发布的智能家居平台.通过HomeKit组件,用户可以通过iphone.iPad和ipod Touch来控制智能灯泡,风扇.空调等支持HomeKit的智能家居,尤其是可以通过S ...
- MS-DOS命令dir命令详细解析
DOS命令窗口打开方式为Win+R键,打开运行命令,输入 cmd 即可:特殊情况我们要用管理员身份运行DOS,此时就可以在开始菜单-附件-DOS命令,鼠标右键单击命令提示符以管理员身份运行.如果是wi ...
- win10 uwp 应用转后台清理内存
我在写小说阅读器,把每个打开的文件的内容读到内存,因为小说都很小,所以放在内存不怕太大,但是我如果打开了一本小说,再打开一本,我不会把先打开的小说的内容清除掉,在内存.所以一旦我打开多小说的时候,内存 ...
- win10 uwp 访问解决方案文件
本文讲如何访问解决方案的资源. 我们经常会把一些图片资源放在我们的解决方案,那么从这里拿出来很简单. 我在 Assets 放了图片 1.jpg 那么我要把他拿出来可以 <Image Source ...
- 使用getCurrentPosition方法实时获取当前Geolocation信息(赋源码文件)--html5、JavaScript
使用getCurrentPosition方法实时获取当前Geolocation信息: 1.typeof 运算符返回一个用来表示表达式的数据类型的字符串 <script> alert(typ ...
- substance在java swing中使用注意事项
package org.dgw.uidemo; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.UI ...
- Java反射机制(Reflect)解析
一.导读 反射的概念是由Smith在1982年首次提出的,主要是指程序可以访问.检测和修改它本身状态或行为的一种能力.这一概念的提出很快引发了计算机科学领域关于应用反射性的研究.它首先被程序语言的设计 ...
- Memcached存储命令
Memcached各个存储命令的语法格式都类似,且有相同的参数和参数含义,先将可能出现的各个参数的意义说明如下: key: 键值 key-value 结构中的 key,用于查找缓存值. flag ...
- LeetCode 31. Next Permutation (下一个排列)
Implement next permutation, which rearranges numbers into the lexicographically next greater permuta ...