mybatis-config.xml

 <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-config.dtd">
<!-- 全局配置文件 -->
<configuration>
<environments default="development">
<environment id="development">
<transactionManager type="JDBC"/>
<dataSource type="POOLED">
<property name="driver" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</dataSource>
</environment>
</environments> <!-- 加载映射文件 -->
<mappers>
<mapper resource="EmployeeMapper1.xml"/>
<mapper resource="EmployeeMapper2.xml"/>
</mappers>
</configuration>
 <?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"> <!-- demo1 -->
<mapper namespace="org.mybatis.example.EmployMapper">
<select id="selectEmp" resultType="org.entity.Employee">
<!-- 1、命名空间
2、唯一id
3、返回值类型
4、sql中的参数
#{id} 指从传递过来的参数中取出id值 相当于jdbc中的 "?"
select * from employee where id = #{id}
-->
select * from employee where id = #{id}
</select>
</mapper>
 package demo1;

 import java.io.IOException;
import java.io.InputStream; import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder; import entity.Employee; /**
* 1、创建javaBean 属性名需要跟数据表属性名相对应 如果不同可以再编写sql语句时使用别名 进行匹配
* 2、创建全局配置文件 mybatis-config.xml
* 3、创建SQL映射文件
* 4、将SQL映射文件加载进全局配置文件
* 5、编写代码
* 1)根据xml配置文件(全局配置文件)创建sessionFactory
* 2)sqlSessionFactory.openSession()获取 session
* 3)根据唯一标识执行映射的sql语句,并将结果封装进javaBean
* 4)关闭session
* @author Administrator
*
*/ public class Demo1 {
public static void main(String[] args) throws IOException {
/**
* 1、根据xml配置文件(全局配置文件)创建sessionFactory
*/
String resource = "mybatis-config.xml";
InputStream inputStream = Resources.getResourceAsStream(resource);
SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
/**
* 2、获取 session
*/
SqlSession session = sqlSessionFactory.openSession();
/**
* 3、执行映射的sql语句,并将结果封装进javaBean
        session.selectList(arg0);
session.select(arg0, arg1);
     session.selectMap(arg0, arg1);
     session.selectOne(arg0);
      
session中本身有一些及基础的操作可以结合 mapper.xml 使用
*/   
//第一个参数为SQL语句映射,为避免命名冲突可以使用命名空间加id标识
// 第二个参数为sql语句中传入的参数
Employee employee = session.selectOne("org.mybatis.example.EmployMapper.selectEmp",1);
System.out.println(employee.toString());
session.close();
}
}

mybatis_1的更多相关文章

  1. Mybatis_1(认识)一个简单的HelloWorld

    1. 介绍: MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架. MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索. MyBatis可以使用简单的XM ...

  2. mybatis研究:select性能对比

    package sss.mybatis_1; import java.io.InputStream; import java.security.Principal; import java.util. ...

  3. MyBatis crud操作

    Test2.java package com.mycom.mybatis_1.crud; import java.util.List; import org.apache.ibatis.session ...

  4. MyBatis 查询

    User.java package com.mycom.mybatis_1.bean; import java.io.Serializable; public class User implement ...

  5. MyEclipse xml 手动添加 dtd

    <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "- ...

随机推荐

  1. h5+ 管理设备信息

    Device模块管理设备信息,用于获取手机设备的相关信息,如IMEI.IMSI.型号.厂商等.通过plus.device获取设备信息管理对象. 1.属性 1.1.imei: 设备的国际移动设备身份码, ...

  2. 【BIEE】11_BIEE图形报表在谷歌浏览器64.0.3282.140中访问图例乱码解决

    如上图,使用谷歌浏览器访问BIEE图形报表的时候,标题.图例等涉及到中文的地方全部乱码了!但是用IE打开是不会乱码的,这是由于:谷歌需要设置编码格式 但是55版本以后,谷歌公司为了加快浏览器的速度,提 ...

  3. 基于React的PC网站前端架构分析

    代码地址如下:http://www.demodashi.com/demo/12252.html 本文适合对象 有过一定开发经验的初级前端工程师: 有过完整项目的开发经验,不论大小: 对node有所了解 ...

  4. 使Gallery时设置居左显示

    Gallery中的图片默认是居中显示的.可是在非常多情况下我们须要它居左显示,这样做有一个简单方法.就是把Gallery的left设置为负多少,如以下的方法: Drawable drawable=ca ...

  5. firewalld那些事

    FirewallD 提供了支持网络/防火墙区域(zone)定义网络链接以及接口安全等级的动态防火墙管理工具.它支持 IPv4, IPv6 防火墙设置以及以太网桥接,并且拥有运行时配置和永久配置选项.它 ...

  6. thread.join() 方法存在的必要性是什么?

    好久远的问题,为什么关注这个问题的人这么少? 或许是用到这个功能的情形比较少吧. 1.等待处理结果 为什么要用join()方法在很多情况下,主线程生成并起动了子线程,如果子线程里要进行大量的耗时的运算 ...

  7. Nginx服务启动脚本

    #!/bin/sh # chkconfig: 2345 40 98 # description: Start/Stop Nginx server path=/application/nginx/sbi ...

  8. hbase和mapreduce开发 WordCount

    代码: /** * hello world by world 测试数据 * @author a * */ public class DefinedMapper extends Mapper<Lo ...

  9. IP地址加时间戳加3位随机数

    工作中经常用到时间戳加上3位随机数获得唯一流水号,下面是代码~ package com.pb.viewer.filename; import java.text.SimpleDateFormat; i ...

  10. [译]GLUT教程 - 笔划字体

    Lighthouse3d.com >> GLUT Tutorial >> Fonts >> Stroke Fonts 笔划字体是用线条生成的.跟位图字体相反,笔划字 ...