Provider增删改查
package com.fei.provider;
import org.apache.ibatis.jdbc.SQL;
import com.fei.domain.User;
public class UserProvider {
/**
* 新增用户
*
* @return
*/
public String addUser() {
return new SQL() {
{
INSERT_INTO("USER");
VALUES("account_id, name, token, gmt_create, gmt_modified, avatar_url",
"#{accountId}, #{name}, #{token}, #{gmtCreate}, #{gmtModified}, #{avatarUrl}");
}
}.toString();
}
/**
* 根据id删除用户
*
* @return
*/
public String delUserById() {
return new SQL() {
{
DELETE_FROM("USER");
WHERE("ID = #{id}");
}
}.toString();
}
/**
* 更新用户信息
*
* @param user
* @return
*/
public String updateUser(final User user) {
return new SQL() {
{
UPDATE("USER");
// 条件写法
if (user.getAccountId() != null) {
SET("account_id = #{accountId}");
}
if (user.getName() != null) {
SET("name = #{name}");
}
if (user.getToken() != null) {
SET("token = #{token}");
}
if (user.getGmtCreate() != null) {
SET("gmt_create = #{gmtCreate}");
}
if (user.getGmtModified() != null) {
SET("gmt_modified = #{gmtModified}");
}
if (user.getAvatarUrl() != null) {
SET("avatar_url = #{avatarUrl}");
}
WHERE("ID = #{id}");
}
}.toString();
}
/**
* 根据id或姓名查询用户
*
* @param id
* @param name
* @return
*/
public String selectUserLike(final String id, final String name) {
return new SQL() {
{
SELECT("u.id, u.account_id, u.name, u.token, u.gmt_create, u.gmt_modified");
FROM("USER u");
if (id != null) {
WHERE("u.id like #{id}");
}
if (name != null) {
WHERE("u.name like #{name}");
}
ORDER_BY("u.id");
}
}.toString();
}
// Builder / Fluent style
/**
* 保存用户的第二种写法
*
* @return
*/
public String insertUserSql() {
return new SQL().INSERT_INTO("USER").VALUES("account_id, name, token, gmt_create, gmt_modified",
"#{accountId}, #{name}, #{token}, #{gmtCreate}, #{gmtModified}").toString();
}
}
Provider增删改查的更多相关文章
- 【转载】ASP.NET MVC Web API 学习笔记---联系人增删改查
本章节简单介绍一下使用ASP.NET MVC Web API 做增删改查.目前很多Http服务还是通过REST或者类似RESP的模型来进行数据操作的.下面我们通过创建一个简单的Web API来管理联系 ...
- MVC3.0 EF增删改查的封装类
本人亲身使用EF CodeFirst,因为增删改查都是使用EF内置的一些方法,我想把它封装到一个类调用就行了.结合网上的资料和自己的整理,若有不对的地方望斧正,感激不尽.直接上代码吧.我就用新闻的增删 ...
- C#操作Excel数据增删改查(转)
C#操作Excel数据增删改查. 首先创建ExcelDB.xlsx文件,并添加两张工作表. 工作表1: UserInfo表,字段:UserId.UserName.Age.Address.CreateT ...
- C#操作Excel数据增删改查示例
Excel数据增删改查我们可以使用c#进行操作,首先创建ExcelDB.xlsx文件,并添加两张工作表,接下按照下面的操作步骤即可 C#操作Excel数据增删改查. 首先创建ExcelDB.xlsx文 ...
- Access增删改查 (持续更新中)
关于Access数据库(2003)的增删改查,其实和Sql大体差不多,但是还有很多不一样的地方.下面列几个容易犯的错误: 1.Access数据库的位置: conn = new OleDbConnec ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码
原文:构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(5)-EF增删改查by糟糕的代码 上一讲我们创建了一系列的解决方案,我们通过一个例子来看看层与层之间的关系 ...
- Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- 【ASP.NET MVC】jqGrid 增删改查详解
1 概述 本篇文章主要是关于JqGrid的,主要功能包括使用JqGrid增删查改,导入导出,废话不多说,直接进入正题. 2 Demo相关 2.1 Demo展示 第一部分 第二部分 2.2 ...
- 一、Android四大框架之ContentProvider的学习与运用,实现SQLite的增删改查。
本文系原创博客,文中不妥烦请指出,如需转载摘要请注明出处! ContentProvider的学习与运用 Alpha Dog 2016-04-13 10:27:06 首先,项目的地址:https:// ...
随机推荐
- spring + springMVC +hibernate 配置2
这种方式比较精简 配置项不多 spring采用自动扫描配置 ,分spring_springMVC.xml . hibernate_config.xml 两个文件 web.xml配置如下 <?x ...
- 【工具使用】kali 安装后要做的事情
日期:2019-07-17 10:43:40 介绍:修改分辨率.修改时区.修改源 0x01. 修改分辨率 kali 在安装完成之后,分辨率过低,需要修改分辨率.  然后依次选择 [settings] ...
- 【MyBatis】-----【MyBatis】---表级联系【一对多】
一.核心配置文件 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration ...
- Hibernate一级缓冲
Hibernate的一级缓冲 什么是缓冲 缓冲概念: 数据存在数据库中,数据库本身就是一个文件系统,使用流的方式操作文件,但是文件中有很多的内容,用流的操作得效率就低. 解决办法: 把数据存在内存中, ...
- Django-DRF组件学习-其他学习
1.认证Authentication 可以在配置文件中配置全局默认的认证方案 REST_FRAMEWORK = { 'DEFAULT_AUTHENTICATION_CLASSES': ( 'rest_ ...
- 【Qt开发】QT中显示图像数据
一般图像数据都是以RGBRGBRGB--字节流的方式(解码完成后的原始图像流),我说成字节流,那就表明R,G,B的值各占一个字节,在编程时表示的就是unsigned char * data. 我们先来 ...
- 第二次课程总结&学习总结
Java实验报告 班级 计算机科学与技术一班 学号 20188390 姓名 宋志豪 实验 写一个名为Rectangle的类表示矩形.其属性包括宽width.高height和颜色color,width和 ...
- [转帖]socat使用笔记
socat使用笔记 https://blog.csdn.net/yangbingzhou/article/details/49783235 进行简单学习 centos 下面安装 yum install ...
- 2019JS必看面试题
2019JS必看面试题:https://www.jianshu.com/p/f1f39d5b2a2e 1. javascript的typeof返回哪些数据类型. 答案:string,boolean,n ...
- CCF1078奇怪的电梯
这是一道dfs搜索题.(noi的题库测试数据有些水) 已知每一层的步数,有两个方向(上下),求解到达终点的最少操作数.拿到这个题就发现是一个Dfs,于是便套了模板写代码.Wa了三次才AC.核心是:1. ...