mybatis的单独使用简单示例:

步骤1:

新建xml文件。

示例:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.dao.UserMapper"> <select id="getUserOne" parameterType="String" resultType="Integer">
select code2 from a where code1=#{code1,javaType=String,jdbcType=INTEGER,typeHandler=com.typeHandler.TestTypeHandler}
limit 1
</select> </mapper>

此处注意两点:

一:<mapper namespace="com.dao.UserMapper"> 的namespace须与相对应的dao类名一致,比如dao类的全路径为:
com.dao.UserMapper,则此处namespace="com.dao.UserMapper".
二:方法的id,parameterType,result等参数须与dao类中的某一个方法相一致。 步骤2:
dao类。
示例:
public interface UserMapper{

    Integer getUserOne(@Param("code1") String string);
}
此处的@Param("code1")为注解方法,定义传入此处的参数的名称为code1,以便后续操作。 步骤3:
配置文件mybatis-config.xml。
示例:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
PUBLIC "-//ibatis.apache.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration> <settings>
<setting name="cacheEnabled" value="false"/>
<!--lazyLoadingEnabled: lazy loading开关,默认为true。
全局性设置懒加载。如果设为‘false’,则所有相关联的都会被初始化加载-->
<setting name="lazyLoadingEnabled" value="true"/>
<!--aggressiveLazyLoading 默认true:当访问任何一个属性都会加载所有的其他lazy load属性,
即使你根本没有调用哪个lazy load属性,说白了就是aggressiveLazyLoading=true,则lazy load等于没用,
所以要使用lazy load还是将其设为false -->
<setting name="aggressiveLazyLoading" value="false"/>
</settings> <environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="username" value="root"/>
<property name="password" value="123456"/>
<property name="url" value="jdbc:mysql://localhost:33333/local_law_hz"/>
<property name="driver" value="com.mysql.jdbc.Driver"/>
</dataSource>
</environment>
</environments> <mappers>
<mapper resource="mybatis/mapper/UserMapper.xml"/>
</mappers> </configuration>
此处注意<mappers>的配置。 步骤4:
测试类:
public class MybatisTest {

    public static void main(String [] args) throws IOException {
// 使用类加载器,加载mybatis的配置文件
// InputStream inputStream=MybatisTest.class.getClassLoader().getResourceAsStream("mybatis-config.xml");
InputStream inputStream= Resources.getResourceAsStream("mybatis-config.xml"); // 构件sqlSession工厂
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession=sqlSessionFactory.openSession();
// System.out.println(sqlSession);
UserMapper userMapper=sqlSession.getMapper(UserMapper.class);
Integer result=userMapper.getUserOne("1");
System.out.println(result); }
}
此处注意两点:
1:加载mybatis的配置文件,构件sqlSession:
InputStream inputStream= Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory sqlSessionFactory=new SqlSessionFactoryBuilder().build(inputStream);
SqlSession sqlSession=sqlSessionFactory.openSession();
2.利用xml文件,dao类,mybatis-config.xml配置文件(mappers中加载xml文件)产生mapper类:
UserMapper userMapper=sqlSession.getMapper(UserMapper.class);
Integer result=userMapper.getUserOne("1");
输出结果:
4
以上,未mybatis的简单应用。
 
补充:xml中如下:
select code2 from a where code1=#{code1,javaType=String,jdbcType=INTEGER,typeHandler=com.typeHandler.TestTypeHandler}
是学习typeHandler时使用的,可简单看做
select code2 from a where code1=#{code1}。

mybatis 简单使用示例(单独使用):的更多相关文章

  1. 【java开发系列】—— spring简单入门示例

    1 JDK安装 2 Struts2简单入门示例 前言 作为入门级的记录帖,没有过多的技术含量,简单的搭建配置框架而已.这次讲到spring,这个应该是SSH中的重量级框架,它主要包含两个内容:控制反转 ...

  2. Springmvc整合tiles框架简单入门示例(maven)

    Springmvc整合tiles框架简单入门示例(maven) 本教程基于Springmvc,spring mvc和maven怎么弄就不具体说了,这边就只简单说tiles框架的整合. 先贴上源码(免积 ...

  3. hadoop环境安装及简单Map-Reduce示例

    说明:这篇博客来自我的csdn博客,http://blog.csdn.net/lxxgreat/article/details/7753511 一.参考书:<hadoop权威指南--第二版(中文 ...

  4. EasyHook远注简单监控示例 z

    http://www.csdn 123.com/html/itweb/20130827/83559_83558_83544.htm 免费开源库EasyHook(inline hook),下面是下载地址 ...

  5. MyBatis简单的增删改查以及简单的分页查询实现

    MyBatis简单的增删改查以及简单的分页查询实现 <? xml version="1.0" encoding="UTF-8"? > <!DO ...

  6. Web Service简单入门示例

    Web Service简单入门示例     我们一般实现Web Service的方法有非常多种.当中我主要使用了CXF Apache插件和Axis 2两种. Web Service是应用服务商为了解决 ...

  7. Ext简单demo示例

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/stri ...

  8. GDAL中MEM格式的简单使用示例

    GDAL库中提供了一种内存文件格式--MEM.如何使用MEM文件格式,主要有两种,一种是通过别的文件使用CreateCopy方法来创建一个MEM:另外一种是图像数据都已经存储在内存中了,然后使用内存数 ...

  9. spring+springMVC+mybatis简单整合

    spring+springMVC+mybatis简单整合, springMVC框架是spring的子项目,所以框架的整合方式为,spring+Mybatis或springMVC+mybatis. 三大 ...

随机推荐

  1. Android程序设计-简单手机通讯录

    在微信中,手机QQ中你会发现软件读取手机通讯录这个功能,这个功能使得软件更好的与手机联系人绑定,从而达到分享,拨打电话,读取用户信息等操作.下面我们将通过一个demo实现这个功能 首先我们看一下效果图 ...

  2. C#关闭窗口代码

    if (MessageBox.Show("请您确认是否退出(Y/N)", "系统提示", MessageBoxButtons.YesNo, MessageBox ...

  3. 关于当一个C#工程移植到另一台机子上(win7)上时,程序报错。dll没有被指定在Windows上运行,或者它包含错误。请尝试使用原始安装媒体重新安装程序。。。。。。

    , 解决方法:通过从网上重新下载dll文件 拷贝到报错的目录下,替换掉原有的dll,可以正确运行.

  4. Mac 配置 vim

    Mac 配置 vim 安装 vim 7.4 cd ~ hg clone https://code.google.com/p/vim/ cd vim ./configure --with-feature ...

  5. AngularJs angular.element

    angular.element 将DOM元素或者HTML字符串一包装成一个jQuery元素. 格式:angular.element(element); element:包装成jquery对象的html ...

  6. UVALive 3989Ladies' Choice(稳定婚姻问题)

    题目链接 题意:n个男生和女生,先是n行n个数,表示每一个女生对男生的好感值排序,然后是n行n列式每一个男生的好感值排序,输出N行,即每个女生在最好情况下的男生的编号 分析:如果是求女生的最好情况下, ...

  7. mysql 根据查询结果集更新

    声明:  MySQL4.0之后的版本可以支持下面sql语句进行更新操作 应用场景: 一个表中的字段需要根据查询结果集进行更新,或者从另一表查询获得  其本质还是更新的数据需要查询获得. 例如: use ...

  8. 《Struts2.x权威指南》学习笔记1

    第2章 Struts的hello world 在介绍hello world项目前,文中要求下载和安装Struts2,主要是下载lib库和文档,可用于通过命令行进行代码编译.由于公司采用IntelliJ ...

  9. 使用ASP.NET Web Api构建基于REST风格的服务实战系列教程【三】——Web Api入门

    系列导航地址http://www.cnblogs.com/fzrain/p/3490137.html 前言 经过前2节的介绍,我们已经把数据访问层搭建好了,从本章开始就是Web Api部分了.在正式开 ...

  10. c++模板类

    c++模板类 理解编译器的编译模板过程 如何组织编写模板程序 前言常遇到询问使用模板到底是否容易的问题,我的回答是:“模板的使用是容易的,但组织编写却不容易”.看看我们几乎每天都能遇到的模板类吧,如S ...