背景

  闲来没事把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简单搭建的更多相关文章

  1. 零配置简单搭建SpringMVC 项目

    SpringMVC是比较常用的JavaWeb框架,非常轻便强悍,能简化Web开发,大大提高开发效率,在各种Web程序中广泛应用.本文采用Java Config的方式搭建SpringMVC项目,并对Sp ...

  2. MYBATIS 简单整理与回顾

    这两天简单整理了一下MyBatis 相关api和jar包这里提供一个下载地址,免得找了 链接:http://pan.baidu.com/s/1jIl1KaE 密码:d2yl A.简单搭建跑项目 2.进 ...

  3. mybatis的搭建和注入spring的方式

    mybatis实际上是一个更多关注sql语句的框架,他的出现是想让开发者更简单的去操作数据库. 与hibernate相比较,hibernate更多的是去sql化,虽然hibernate也可以本地sql ...

  4. Spring+Mybatis+Mysql搭建分布式数据库访问框架

    一.前言 用Java开发企业应用软件, 经常会采用Spring+MyBatis+Mysql搭建数据库框架.如果数据量很大,一个MYSQL库存储数据访问效率很低,往往会采用分库存储管理的方式.本文讲述如 ...

  5. MyBatis -01- 初识 MyBatis + MyBatis 环境搭建

    MyBatis -01- 初识 MyBatis + MyBatis 环境搭建 MyBatis 本是 apache 的一个开源项目 iBatis(iBATIS = "internet" ...

  6. mybatis 环境搭建和基本说明

    mybatis介绍就不多提了,直接步入正题. 先准备好eclipse和MySQL,然后先看一下目录结构 文件和类很少,所以mybatis的搭建是非常简单的,如搭建中遇到问题可以先参考文档最后一部分的综 ...

  7. 浅析MyBatis(二):手写一个自己的MyBatis简单框架

    在上一篇文章中,我们由一个快速案例剖析了 MyBatis 的整体架构与整体运行流程,在本篇文章中笔者会根据 MyBatis 的运行流程手写一个自定义 MyBatis 简单框架,在实践中加深对 MyBa ...

  8. Mybatis环境搭建及测试

    1.新建java project,导入相应jar包 本次使用到的mybatis-3.2.7版本 mybatis需要jar包:mybatis-3.2.7.jar.lib文件下的依赖jar mysql驱动 ...

  9. python简单搭建HTTP Web服务器

    对于Python 2,简单搭建Web服务器,只需在i需要搭建Web服务器的目录(如C:/ 或 /home/klchang/)下,输入如下命令: python -m SimpleHTTPServer 8 ...

随机推荐

  1. 更新——Canvas画布动画效果之实现倒计时

    Hello,大家好! 小W复活啦!继续欢乐的给大家更博,输送新知识~~ 不开玩笑啦!秒进正题~~~ 上次更博,小W给大家介绍了Canvas画布的基础部分,以及实现了一个由7*10点阵图显示的倒计时的基 ...

  2. commons-pool与commons-pool2连接池(Hadoop连接池)

    commons-pool和commons-pool2是用来建立对象池的框架,提供了一些将对象池化必须要实现的接口和一些默认动作.对象池化之后可以通过pool的概念去管理其生命周期,例如对象的创建,使用 ...

  3. Anroid四大组件service之本地服务

    服务是Android四大组件之一,与Activity一样,代表可执行程序.但Service不像Activity有可操作的用户界面,它是一直在后台运行.用通俗易懂点的话来说: 如果某个应用要在运行时向用 ...

  4. 长话短说 之 js的原型和闭包

    原型链:undefined, number, string, boolean 属于简单的值类型,函数.数组.对象.null.new obj()都是引用类型.检测值类型用typeof x 即可,检测引用 ...

  5. 2017年11月Dyn365/CRM用户社区活动报名

    UG是全球最大Dynamics的用户组织,由最终用户自发组织,由行业有经验的专家自愿贡献知识和经验的非营利机构,与会人员本着务实中立的态度,不进行推介产品,服务以及其他营销行为.在美国,微软Dynam ...

  6. RabbitMQ 默认端口号

    4369 (epmd), 25672 (Erlang distribution) 5672, 5671 (AMQP 0-9-1 without and with TLS) 15672 (if mana ...

  7. Python迭代

    本篇将介绍Python的迭代,更多内容请参考:Python学习指南 简介 在Python中,如果给定一个list或者tuple,我们可以通过for循环来遍历这个list或者tuple,这种遍历我们称为 ...

  8. 负载均衡集群企业级应用实战—LVS

    一.负载均衡集群介绍 1.集群 ① 集群(cluster)技术是一种较新的技术,通过集群技术,可以在付出较低成本的情况下获得在性能.可靠性.灵活性方面的相对较高的收益,其任务调度则是集群系统中的核心技 ...

  9. Lua函数以及闭合函数的理解

    Lua函数以及闭合函数的理解 来源 http://blog.csdn.net/mydad353193052/article/details/48731467 词法域和第一类型 在C/C++,C#或者J ...

  10. VS2012 C#生成DLL并调用

    1.创建一个C#工程生成DLL 新建->项目->Visual C#->类库->MyMethods 项目建好后,为了理解,将项目中的Class1.cs 文件 重命名为 MySwa ...