1 . 定义 java实体类 User,建立user表 读者请自行完成准备工作。
User 类 有 id, name,age 属性
user 表 中 id,name,age字段 id自增长
2. 定义sql映射XML userMapper.xml
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE *** >
<!--
namespace 默认取 userMapper.xml的 全路径 + "." + 文件名去除后缀 即userMapper
-->
<mapper namespace ="com.atguigu.mybatis.userMapper">
<insert id="insertUser" parameterType="com.atguigu.ibatis.bean.User">
insert into users(name,age) values (#{name},#{age});
</insert>
<delete id="delUser" parameterType="int">
delete from users where id =#{id}
</delete>
<update id="updateUser" parameterType="com.atguigu.ibatis.bean.User">
update users set name=#{name}, age=#{age} where id=#{id}
</update>
<select id="selUser" parameterType ="int" resultType="com.atguigu.ibatis.bean.User">
select * from users where id=#{id}
</select>
<select id="getAllUsers" resultType="com.atguigu.ibatis.bean.User">
select * from users
</select>
</mapper>
3.定义数据源连接池 相关配置
注册相关xml文件
<?xm l version = "1.0" encoding ="UTF-8" ?>
<configuration>
<environments default ="development">
<environment id="development">
<transactionManager type="JDBC" />
<datasource type="POOLED" >
<property name="driverClass" value="" />
<property name="jdbcUrl" value="" />
<property name="user" value="" />
<property name="password" value="" />
</datasource>
</environment>
</environments>
</configuration>
//注册相关 mapper xml
<mappers>
<mapper resource = "com/atguigu/mybatis/userMapper.xml" /> //路径名
</mappers>
</xml>
4. 编写测试代码
@Test
public void testAdd(){
SqlSessionFactory factory = MybatisUtils.getFactory();
SqlSession session = factory.openSession(); //默认手动提交事务
String statement = "com.atguigu.mybatis.userMapper.addUser"; //namespace+ "." + id
session.insert(statement,new User(-1,"kk",22));
session.commit(); //提交事务
session.close();
}
@Test
public void testDel(){
SqlSessionFactory factory = MybatisUtils.getFactory();
SqlSession session = factory.openSession(); //默认手动提交事务
String statement = "com.atguigu.mybatis.userMapper.delUser";
session.insert(statement,2);
session.commit(); //提交事务
session.close();
}
@Test
public void testUpdate(){
SqlSessionFactory factory = MybatisUtils.getFactory();
SqlSession session = factory.openSession(true); //设置自动提交
String statement = "com.atguigu.mybatis.userMapper.updateUser;
session.update(statement, new User(4,"kk4",333));
session.close();
}
public void testGetUser(){
SqlSessionFactory factory = MybatisUtils.getFactory();
SqlSession session = factory.openSession();
String statement = "com.atguigu.mybatis.userMapper.selUser";
User user = session.selectOne(statement, 1);
session.close();
System.out.println(user);
}
@Test
public void getAllUsers(){
SqlSessionFactory factory = MybatisUtils.getFactory();
SqlSession session = factory.openSession(true); //设置自动提交
String statement = "com.atguigu.mybatis.userMapper.getAllUsers";
List<User> users = session.selectList(statement);
session.close();
}
- MyBatis学习总结(一)——MyBatis快速入门
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- MyBatis快速入门
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- MyBatis学习总结(一)——MyBatis快速入门(转载)
本文转载自http://www.cnblogs.com/jpf-java/p/6013537.html MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了 ...
- MyBatis入门学习教程-MyBatis快速入门
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- MyBatis学习总结(一)——MyBatis快速入门
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
- 【转】MyBatis学习总结(一)——MyBatis快速入门
[转]MyBatis学习总结(一)——MyBatis快速入门 一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC ...
- MyBatis学习总结-MyBatis快速入门的系列教程
MyBatis学习总结-MyBatis快速入门的系列教程 [MyBatis]MyBatis 使用教程 [MyBatis]MyBatis XML配置 [MyBatis]MyBatis XML映射文件 [ ...
- MyBatis学习笔记(一)——MyBatis快速入门
转自孤傲苍狼的博客:http://www.cnblogs.com/xdp-gacl/p/4261895.html 一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优 ...
- Java基础-SSM之mybatis快速入门篇
Java基础-SSM之mybatis快速入门篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 其实你可能会问什么是SSM,简单的说就是spring mvc + Spring + m ...
- MyBatis学习总结(1)——MyBatis快速入门
一.Mybatis介绍 MyBatis是一个支持普通SQL查询,存储过程和高级映射的优秀持久层框架.MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及对结果集的检索封装.MyBatis可以 ...
随机推荐
- Asp.net 面向接口可扩展框架之应用程序上下文作用域组件
在团队中推广面向接口开发两年左右,成果总体来说我还是挺满意的,使用面向接口开发的模块使用Unity容器配置的功能非常稳定,便于共享迁移(另一个项目使用只需要复制配置和调用接口即可),如果再配合上DI那 ...
- Class.forName("com.mysql.jdbc.Driver") ;
try { Class.forName("com.mysql.jdbc.Driver") ; } catch(ClassNotFoundException e) { System. ...
- 【Python大系】Python快速教程
感谢原作者:Vamei 出处:http://www.cnblogs.com/vamei 怎么能快速地掌握Python?这是和朋友闲聊时谈起的问题. Python包含的内容很多,加上各种标准库.拓展库, ...
- Yii2:避免文件路径暴漏,代理访问文件
制作背景:公司要做第三方文件管理系统,客户有时候需要直接访问文件,但是我们又不想暴露文件路径,才有这代理访问 基本功能介绍:读取txt文档.读取图片,如果有需要,可以通过插件读取doc.pdf文档, ...
- python之协程与IO操作
协程 协程,又称微线程,纤程.英文名Coroutine. 协程的概念很早就提出来了,但直到最近几年才在某些语言(如Lua)中得到广泛应用. 子程序,或者称为函数,在所有语言中都是层级调用,比如A调用B ...
- C程序范例(2)——学生管理系统”链表“实现
1.对于学生管理系统,能够实现的方法有许多,但是今天我们用链表的方法来实现.虽然初学者很可能看不懂,但是不要紧,这是要在整体的系统的学习完C语言之后,我才编写出的程序.所以大家不必要担心.在这里与大家 ...
- php实现设计模式之 桥接模式
<?php /** 桥接模式:将抽象部分与实现部分分离,使它们都可以独立的变化. * * 在软件系统中,某些类型由于自身的逻辑,它具有两个或多个维度的变化,桥接模式就是应对这种多维度的变化 */ ...
- Netty(六)UDP在netty中的使用
关于UDP的介绍,这里不在阐述.相比于TCP而言,UDP不存在客户端和服务端的实际链接,因此不需要为连接(ChannelPipeline)设置handler. 服务端: public void run ...
- IIS10中使用OpenSSL来创建CA并且签发SSL证书
参考: http://www.cnblogs.com/lierle/p/5140187.html http://alvinhu.com/blog/2013/06/12/creating-a-certi ...
- Android M Permission 运行时权限 学习笔记
Android M Permission 运行时权限 学习笔记 从Android 6.0开始, 用户需要在运行时请求权限, 本文对运行时权限的申请和处理进行介绍, 并讨论了使用运行时权限时新老版本的一 ...