MyBatis笔记(二) 最简单的insert命令
接上一篇随笔。这里没有用到MyBatis最关键的映射器接口,因此只做个简单的insert操作,update和delete同理,就不再赘述了。
直接上代码:
首先是dao包下的UserDAO.java文件:
package com.alleymeowy.dao; import com.alleymeowy.bean.User;
import com.alleymeowy.util.DBUtil;
import org.apache.ibatis.session.SqlSession; import java.io.IOException;
import java.util.List; public class UserDAO { /**
* 根据id查询一条记录
* @param id
* @throws IOException
*/
public static User selectOne(int id) throws IOException { SqlSession sqlSession = null;
User user;
try {
sqlSession = DBUtil.getSqlSession();
user = sqlSession.selectOne("com.alleymeowy.config.sql.Users.selectOne", id);
} finally {
sqlSession.close();
}
return user; } /**
* 查询多条记录
* @throws IOException
*/
public static List<User> selectAll() throws IOException { SqlSession sqlSession = null;
List<User> users;
try {
sqlSession = DBUtil.getSqlSession();
users = sqlSession.selectList("com.alleymeowy.config.sql.Users.selectAll");
} finally {
sqlSession.close();
}
return users; } public static void insert(User user) throws IOException { SqlSession sqlSession = null;
try { sqlSession = DBUtil.getSqlSession();
int affectrows = sqlSession.insert("com.alleymeowy.config.sql.Users.insertUser", user);
System.out.println("affectrows : " + affectrows);
sqlSession.commit(); } finally {
if (sqlSession != null) {
sqlSession.close();
}
}
} public static void main(String[] args) throws IOException { // System.out.println(selectOne(1));
// System.out.println("************");
// System.out.println(selectAll()); insert(new User(6, "insertPerson", 100)); }
}
这里添加了一个insert方法。
然后是Users.xml文件,这里存放sql语句。
<?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.alleymeowy.config.sql.Users"> <select id="selectOne" parameterType="int" resultType="com.alleymeowy.bean.User">
select id, name, age from user where id = #{id}
</select> <select id="selectAll" resultType="com.alleymeowy.bean.User">
select id, name, age from user
</select> <insert id="insertUser" parameterType="com.alleymeowy.bean.User">
insert into user(id, name, age) values(#{id}, #{name}, #{age})
</insert> </mapper>
同样也是增加了一条insert语句【很简单吧】。
其他代码如总配置文件,DBUtil工具类等都不需要改动了,这里贴出最后的输出结果:
affectrows为1,改变了数据库中的1行。
完毕。
MyBatis笔记(二) 最简单的insert命令的更多相关文章
- MyBatis笔记二:配置
MyBatis笔记二:配置 1.全局配置 1.properites 这个配置主要是引入我们的 properites 配置文件的: <properties resource="db.pr ...
- Mybatis笔记二:接口式编程
目录 旧方法的弊端 接口式编程 接口式编程的好处 接口式编程的增删改查 旧方法的弊端 在Mybatis笔记一中,我们使用命名空间+id的方式实现了Mybatis的执行,不过这里的命名空间是我们随便写的 ...
- how tomcat works 读书笔记(二)----------一个简单的servlet容器
app1 (建议读者在看本章之前,先看how tomcat works 读书笔记(一)----------一个简单的web服务器 http://blog.csdn.net/dlf123321/arti ...
- MyBatis之二:简单增删改查
这一篇在上一篇的基础上简单讲解如何进行增删改查操作. 一.在mybatis的配置文件conf.xml中注册xml与注解映射 <!-- 注册映射文件 --> <mappers> ...
- Mybatis笔记二
一对一查询 案例:查询所有订单信息,订单信息中显示下单人信息. 注意:因为一个订单信息只会是一个人下的订单,所以从查询订单信息出发关联查询用户信息为一对一查询.如果从用户信息出发查询用户下的订单信息则 ...
- Mybatis笔记二:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found)
错误异常:org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): com.test.dao.N ...
- mybatis笔记<二> 整合spring
mybatis与spring整合需要添加几个jar包,mybatis-spring, spring-context, spring-jdbc 1. spring ioc只要一个jar包就ok 2. 我 ...
- 吴裕雄--天生自然HADOOP操作实验学习笔记:hdfs简单的shell命令
实验目的 了解bin/hadoop脚本的原理 学会使用fs shell脚本进行基本操作 学习使用hadoop shell进行简单的统计计算 实验原理 1.hadoop的shell脚本 当hadoop集 ...
- MyBatis 学习二之简单练习巩固
1.新建一个maven项目并在pom.xml中添加依赖 2.项目架构 配置文件:SqlMapConfig.xml <?xml version="1.0" encoding ...
随机推荐
- eclipse spring-boot-mybatis 的记录
例子来源: https://gitee.com/lfalex/spring-boot-example.git spring-boot-mybatis 例子使用 mysql5.1.46 版本; 环境:e ...
- AVL树的Java实现
AVL树:平衡的二叉搜索树,其子树也是AVL树. 以下是我实现AVL树的源码(使用了泛型): import java.util.Comparator; public class AVLTree< ...
- App Store评论优化,让你的APP评论上涨
App Store评论优化怎么做 App Store评论优化,让你的APP评论上涨 关于「ASO评论优化」,主要分为三块.换评论,买评论,引导用户写评论. 可能有些刚接触ASO的朋友会问,为什么要给A ...
- Kali 开启 SSH 服务方法
尝试了开启kali的ssh,方法如下: 1.修改sshd_config文件.命令:vim /etc/ssh/sshd_config 2.将#PasswordAuthentication no的注释去掉 ...
- Source Insight相关设置
#Source Insight中按快捷键在其他编辑器中打开当前文件 "D:\Program Files\Zend\ZendStudio-5.5.0\bin\ZDE.exe" %f ...
- UnicodeDecodeError: 'ascii' codec can't decode byte 0xc7 in position 20: ordinal not in range(128)
dict = pickle.load(open(file, 'rb')) 修改为: dict = pickle.load(open(file, 'rb'), encoding='iso-8859-1' ...
- ASM: Active Shape Models--Their Training and Application
这篇论文的前半部分基本就是论文<Training Models of Shape from Sets of Examples>的全部内容,只不过多两个应用示例,后半部分在PDM模型的基础上 ...
- Redis的持久化之AOF方式
AOF方式:将以日志,记录每一个操作 优势:安全性相对RDB方式高很多: 劣势:效率相对RDB方式低很多: 配置: [root@localhost redis]# vi redis.conf 编辑re ...
- 20175313 张黎仙《Java程序设计》第九周学习总结
目录 学号 20175313 <Java程序设计>第九周学习总结 一.教材学习内容总结 二.教材学习中的问题和解决过程 三.代码托管 四.心得体会 五.学习进度条 六.参考资料 学号 20 ...
- Java博客目录
JavaWeb 1.Tomcat使用 2.Servlet入门 3.JSP&EL&JSTL 4.Listener&Filter Java框架 Hibernate 1.简介及初使用 ...