Mybatis数据基本操作
<insert id="doCreate" parameterType="News"><!--添加数据-->
INSERT INTO news(title,content) VALUES (#{title},#{content}) ;
<selectKey keyColumn="nid" keyProperty="nid" order="AFTER" resultType="java.lang.Long">
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
<update id="doEdit" parameterType="News"> <!--更新数据-->
UPDATE news SET title=#{title},content=#{content} WHERE nid=#{nid}
</update>
<delete id="doRemove" parameterType="java.lang.Long"><!--删除数据-->
DELETE FROM news WHERE nid=#{xiaoyu}
</delete>
查询数据(添加到News.xml)
<select id="findById" parameterType="java.lang.Long" resultType="News"><查询数据>
SELECT nid,title,content FROM news WHERE nid=#{wodenid} ;
</select>
<select id="findAll" resultType="News">
SELECT nid,title,content FROM news ;
</select>
<select id="findAllTitle" resultType="News">
SELECT nid,title FROM news ;
</select>
<select id="findSplit" resultType="News" parameterType="java.util.Map"> <分页查询>
SELECT nid,title,content FROM news WHERE ${column} LIKE #{keyword} LIMIT #{start},#{lineSize} ;
</select>
<select id="getAllCount" resultType="java.lang.Long">
SELECT COUNT(*) FROM news ;
</select>
数据更新测试
@Test
public void testDelete() throws Exception { //删除
System.out.println("数据删除:" + MyBatisSessionFactory.getSession()
.update("com.lion.mapper.NewsNS.doRemove", 9L));
MyBatisSessionFactory.getSession().commit();
MyBatisSessionFactory.close();
}
@Test
public void testEdit() throws Exception { //修改
News vo = new News();
vo.setTitle("人生最舒服的日子?");
vo.setContent("你是个屌丝,梦里成为富翁");
vo.setNid(9L); // 修改数据时需要设置准确的编号
System.out.println("数据修改:" + MyBatisSessionFactory.getSession().update("com.lion.mapper.NewsNS.doEdit", vo));
MyBatisSessionFactory.getSession().commit();
MyBatisSessionFactory.close();
MyBatisSessionFactory.getSession().commit();
MyBatisSessionFactory.close();
}
@Test
public void testSplit() throws Exception { //分页查询
Map<String,Object> splitParams = new HashMap<String,Object>() ; // 保存分页相关参数
splitParams.put("column", "title");
splitParams.put("keyword", "%%");
splitParams.put("start", 5); // (currentPage - 1) * lineSize
splitParams.put("lineSize", 5);
List<News> all = MyBatisSessionFactory.getSession().selectList("com.lion.mapper.NewsNS.findSplit",splitParams);
Long count = MyBatisSessionFactory.getSession().selectOne("com.lion.mapper.NewsNS.getAllCount",splitParams);
System.out.println("【分页数据】" + all);
System.out.println("【数据行统计】" + count);
MyBatisSessionFactory.close();
}
Mybatis数据基本操作的更多相关文章
- MyBatis基础:MyBatis数据基本操作(2)
1. MyBatis映射器 2. MyBatis数据基本操作 示例项目结构: <project xmlns="http://maven.apache.org/POM/4.0.0&quo ...
- Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作
详细的Spring MVC框架搭配在这个连接中: Maven 工程下 Spring MVC 站点配置 (一) Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 这篇主 ...
- Mybatis数据操作
Maven 工程下 Spring MVC 站点配置 (二) Mybatis数据操作 详细的Spring MVC框架搭配在这个连接中: Maven 工程下 Spring MVC 站点配置 (一) M ...
- Spring Boot 2.X(二):集成 MyBatis 数据层开发
MyBatis 简介 概述 MyBatis 是一款优秀的持久层框架,支持定制化 SQL.存储过程以及高级映射.它采用面向对象编程的方式对数据库进行 CRUD 的操作,使程序中对关系数据库的操作更方便简 ...
- Mybatis数据的增删改查
数据: Student{id int,name String ,age int} 配置mybatis-config.xml <?xml version="1.0" encod ...
- MyBatis数据持久化(十一)Mybatis3、Spring4、Struts2整合开发
上一节我们將Mybatis和Spring4进行整合,本节向大家介绍Mybatis在Web开发中的应用,并与主流的MVC框架Struts2进行整合. 我们首先需要获取Struts2框架,Struts2官 ...
- MyBatis数据持久化(十)与Spring4整合
前面几节介绍了mybatis的基本使用方法,本节主要介绍如何使用mybatis与主流的IoC容器Spring进行整合. 我们首先需要获取Spring框架的jar文件,在写本文时spring的最新Rel ...
- MyBatis数据持久化(七)多表连接查询
本节继续以多表连接查询的案例介绍使用resultMap的好处,对于两张以上的表进行关联查询,当我们有选择的从不同表查询所需字段时,使用resultMap是相当方便的.例如我们有两张表,分别为用户表Us ...
- MyBatis数据持久化(六)resultMap使用
resultMap是MyBatis最强大也是最重要的特性,使用它我们可以將查询结果或者sql输入条件和一个HashMap的key进行映射,大大简化了sql查询条件的输入,而且使得数据的查询变得非常灵活 ...
随机推荐
- head命令:显示文件开头内容
head 命令可以显示指定文件前若干行的文件内容,其基本格式如下:head [选项] 文件名 选项: 选项 含义 -n K 这里的 K 表示行数,该选项用来显示文件前 K 行的内容:如果使用 &quo ...
- .NET(c#) 移动APP开发平台 - Smobiler(1)
转载地址:https://www.cnblogs.com/oudi/p/8288617.html 如果说基于.net的移动开发平台,目前比较流行的可能是xamarin了,不过除了这个,还有一个比xam ...
- Java web 公文流转系统 完成结果
河北金力集团公文流转系统 1.项目需求: 河北金力集团是我省机械加工的龙头企业,主要从事矿山机械制造及各种机械零部件加工.企业有3个厂区,主厂区位于省高新技术开发区,3个分厂分别在保定.邢台和唐山.为 ...
- JVM系列大纲
本系列主要分析JVM主要功能要点,初步大纲如下,会根据写作情况进行细化,目的在于梳理JVM的知识体系,具体分析文章会陆续发布. [JVM]类加载机制(1) [JVM]Java内存区域(2) [JVM] ...
- JavaWeb-SpringSecurity初认识
Spring Security 安全 百度百科 功能:Spring Security对Web安全性的支持大量地依赖于Servlet过滤器.这些过滤器拦截进入请求,并且在应用程序处理该请求之前进行某些安 ...
- 【知识库】-数据库_MySQL常用SQL语句语法大全示例
简书作者:seay 文章出处: 关系数据库常用SQL语句语法大全 Learn [已经过测试校验] 一.创建数据库 二.创建表 三.删除表 四.清空表 五.修改表 六.SQL查询语句 七.SQL插入语句 ...
- 设置Chart.js默认显示Point点的值不用鼠标经过才显示
Chart.js默认的显示方式是鼠标经过Point点的时候才会显示这个点的值,代码如下: var testdata: { periodNum: ["2018121","2 ...
- 模拟LinkedList
Linkedlist是一个集合容器,具有增删改查基本功能,本例中模拟增删查,对于修改,只需要将原节点处的val更新为新值即可,增加和删除在链表中速度是比较快的,查找,修改慢,因为要从头或者从尾开始遍历 ...
- koa 基础(二十二)封装 DB 库 --- 测试
1.根目录/module/config.js /** * 配置文件 */ var app = { dbUrl: 'mongodb://127.0.0.1:27017/?gssapiServiceNam ...
- 百度地图js判断点是否在圆形区域内
/** * Created by LEGION on 2018/10/11. *//** * @fileoverview GeoUtils类提供若干几何算法,用来帮助用户判断点与矩形. * 圆形.多边 ...