今天,我们就一起来完成mybatis的第一个小demo,使用mybatis对我们的数据库进行一个小小的操作。

  需求

    根据用户id查询用户的信息。

  环境搭建

    java环境:jdk1.7版本

    开发工具:eclipse

    mysql:5.1

    mybatais的jar包,可以从https://github.com/mybatis/mybatis-3/releases下载,3.2.7版本的。解压完成后是这样的:

    

    log4j的日志包

    mysql的驱动包

    创建一个工程,导入相应的包,然后在config目录下创建两个文件,一个是log4j.properties文件,另外一个是SqlMapConfig.xml文件目录结构如下:

    

    在 log4j.properties文件中,书写内容如下(网上有的是源码,基本上随便粘一个都可以用)。

    

    在SqlMapConfig.xml文件下,配置mybatis的运行环境,数据源、事务等。

    

    这里的数据源本来应该单独提出来作为一个文件,但是,考虑到部分读者理解起来有难度,就先这样吧。

  代码实现

    接下来就是代码实现了,首先是创建我们的pojo类,也就是我们的实体类。也有称之为doman的。反正就是一个类名和数据库表名对应,字段名和类名对应的一个类。然后加上get和set方法。

    

    接下来就是我们的映射文件了,在mapper包(mapper包其实就是dao包,现在可以不在这里创建,但是以后自动映射的时候会用到)下创建一个名称为userMapper.xml(目前来说,文件名称随便写)的文件,内容如下。

<mapper namespace="test">

    <!-- id:sql语句的唯一标识, 要求在同一个映射文件中id不能重复
parameterType:传入参数类型
resultType:返回结果集类型 #{}占位符: 占位符起到占位的作用, 如果传入参数是简单类型(String, long, integer, double, boolean等)那么#{}中的变量名称可以随意起名
-->
<select id="findUserById" parameterType="java.lang.Integer" resultType="cn.itcast.pojo.User">
SELECT * FROM user where id=#{id}
</select>
</mapper >

    映射文件虽然写好了,但是,mybatis框架不知道映射文件的存在,没有办法将映射文件读入系统。这个时候,就需要在我们的SqlMapConfig.xml 文件中加载映射文件了。在sqlmapConfig.xml文件中写入代码如下:其中的sqlmap/user.xml该为我们自己写的映射文件的xml文件路径就可以了。

    

    最后就是便携测试程序了,代码如下:

    

    这就是我们的第一个入门程序了,其他的方法跟查询类似,不过在写插入语句的时候,如果主键是自增的话,那么需要先查询主键id,然后将对象写入数据库中,这时,我们的系统中的对象的主键属性就和数据库中的主键属性一致了。其配置文件代码如下:

    

mybatis入门-第一个程序的更多相关文章

  1. MyBatis运行流程及入门第一个程序

    1. mybatis是什么? MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并 ...

  2. 解析Mybatis入门第一天

    MyBatis是一个基于Java的持久层框架,内部对JDBC做了封装,使开发者只需要关注SQL语句,而不用关注JDBC的代码,使开发变得更加的简单. MyBatis通过XML或者注解的方式将要执行的各 ...

  3. mybatis的第一个程序

    程序结构图: 表结构: 创表sql: CREATE TABLE `users` (   `id` int(11) NOT NULL AUTO_INCREMENT,   `username` varch ...

  4. 【mybatis源码学习】调试mybatis的第一个程序

    [一].基础知识准备 mybatis-config.xml配置文件的结构 MyBatis配置文件中大标签configuration下子标签包括: configuration |--- properti ...

  5. OPENGL的入门第一个程序——Hello World

    #include "stdafx.h" #include<GL\glut.h> void Init() { glClearColor(0.0f,0.0f,0.0f,0. ...

  6. mybatis入门-mapper代理原理

    原始dao层开发 在我们用mybatis开发了第一个小程序后,相信大家对于dao层的开发其实已经有了一个大概的思路了.其他的配置不用变,将原来的test方法,该为dao的方法,将原来的返回值,直接在d ...

  7. mybatis入门_mybatis基本原理以及入门程序

    一.传统jdbc存在的问题 1.创建数据库的连接存在大量的硬编码, 2.执行statement时存在硬编码. 3.频繁的开启和关闭数据库连接,会严重影响数据库的性能,浪费数据库的资源. 4.存在大量的 ...

  8. Mybatis入门程序

    作为一个java的学习者,我相信JDBC是大家最早接触也是入门级别的数据库连接方式,所以我们先来回忆一下JDBC作为一种用于执行SQL语句的Java API是如何工作的.下面的一段代码就是最基本的JD ...

  9. Java Persistence with MyBatis 3(中文版) 第一章 MyBatis入门

    本章将涵盖以下话题: ž  MyBatis是什么? ž  为什么选择MyBatis? ž  MyBatis安装配置 ž  域模型样例 1.1 MyBatis是什么 MyBatis是一个简化和实现了Ja ...

随机推荐

  1. HUST 1354 Rubiks

    背包.注释写详细了. 本想这样写:每个组内各自做背包,然后组间做背包,但是由于这题M=10000,时间复杂度太大. #include<cstdio> #include<cstring ...

  2. 单应性(homography)变换的推导

    矩阵的一个重要作用是将空间中的点变换到另一个空间中.这个作用在国内的<线性代数>教学中基本没有介绍.要能形像地理解这一作用,比较直观的方法就是图像变换,图像变换的方法很多,单应性变换是其中 ...

  3. 《算法导论》插入排序----InsertSort

    算法导论,插入排序 public class InsertSort { public static double [] sort(double [] num) { for(int i =1; i< ...

  4. 测试部署nginx

    1.已经安装了nginx 2.修改tomcat端口号为10081(可随意) 3 修改nginx的nginx.config  如下: upstream apiserver {           ip_ ...

  5. 74HC166与TPIC6A595分析(转)

    源:Atmega162串行外设接口SPI 一.Atmega162的SPI接口基本概念与工作原理 SPI接口的全称是"Serial Peripheral Interface",意为串 ...

  6. linux内核——1.概述

    1.结构 linux中,我们把操作系统分为内核空间和用户空间.用户通过用户空间与操作系统打交道.用户要通过系统调用访问内核空间.下图为Linux体系结构,shell应该为在最顶层. 系统调用,下面链接 ...

  7. zMPLS的安装与配置

    1.zmpls的安装 1.1安装环境 ubuntu 12.04 kernel 2.6.35 (对原来的内核进行了替换) 1.2 下载链接 文件zMPLS-0.95-alpha.tar.gz的下载地址为 ...

  8. 微信网页授权redirect_uri错误的可能错误之一

    授权回调页面域名 后面不要加/ 加了/ 就会出错.

  9. Grunt实现自动化单元测试

    http://www.tuicool.com/articles/rAnaYvn   直奔主题: 一.安装grunt-contrib-qunit npm install grunt-contrib-qu ...

  10. JDBC oracle 错误总结

    ORA-28040: No matching authentication protocol jdk:1.8 oracle:12c 使用ojdbc14.jar 报错:ORA-28040: No mat ...