资料来源网址:http://www.cnblogs.com/hawell/p/SpringDataJpa.html

Repository(几个常用的例子)

 @Repository
public interface StormManageRepository extends JpaRepository<StormManage, Long> { //根据id删除StormManage
@Query(value = "delete from bdsp_storm_manage where id=?1 ", nativeQuery = true)
@Modifying
public void deleteStormManageById(int id); //根据id获取数据源
@Query(value = "select * from bdsp_storm_manage where id=?1 ", nativeQuery = true)
public StormManage findStormManageById(int id); //修改Storm的state的状态
@Query(value = "update bdsp_storm_manage sm set sm.state=?1 where sm.id=?2 ", nativeQuery = true)
@Modifying
public void updateStormManageState(int state,int id); //根据id获取数据源
@Query(value = "select * from bdsp_storm_manage where enter_topic=?1 ", nativeQuery = true)
public List<StormManage> findStormManageByEnterTopic(int enterTopic); }

service层几个例子

 @Service
@Transactional
public class StormManageService {
@Resource
private StormManageRepository stormManageRepository; /**
* 存储StormManage管理(直接调用save方法,如果想修改的话,需要传一个id)
* */
public StormManage saveStormManage(StormManage stormManage){
StormManage sm=stormManageRepository.save(stormManage);
return sm;
} /**
* 分页查询
* */
public Page<StormManage> queryStormBy(Map<String, Object> searchParams, Pageable pageable) {
Page<StormManage> queryStormBy = null;
try {
Map<String, SearchFilter> filters = SearchFilter.parse(searchParams);
Specification<StormManage> spec = DynamicSpecifications.bySearchFilter(filters.values());
queryStormBy = stormManageRepository.findAll(spec, pageable);
} catch (Exception e) {
e.printStackTrace();
}
return queryStormBy;
} /**
* 根据id删除StormManage
* */
public void deleteStormManageById(int id){
stormManageRepository.deleteStormManageById(id);
}   }

Controller层(主要是分页查询)

 @RequestMapping("/toStormJsp")
public String toStormJsp(HttpServletRequest request, Model model,@ModelAttribute("id") String id,HttpSession session) {
try{ Map<String, Object> searchParams = new HashMap<String, Object>();
StreamUser user=(StreamUser)session.getAttribute("user");
String superuser=user.getSuperuser();//superuser 0:normal 1:super
if(superuser.equals("1")){
searchParams.put("EQ_userName", "");
}else{
searchParams.put("EQ_userName",user.getUserName());
} Page<StormManage> stormManages = stormManageService.queryStormBy(searchParams, null);
List<StormManage> findStormManage = new ArrayList<StormManage>();
for (StormManage dm : stormManages) {
findStormManage.add(dm);
} int page = 0;
Sort sort = new Sort(Sort.Direction.DESC, "operateTime");//按时间排序
Pageable pager =new PageRequest(page, pageSize,sort);
Page<StormManage> page2 = stormManageService.queryStormBy(searchParams, pager);
List<StormManageDto> pageList = new ArrayList<StormManageDto>(); for (StormManage dm : page2 ) {
pageList .add(dm);
}
int totalRecord=pageList.size();
int maxResult=10;
int totalPage = totalRecord % maxResult == 0 ? totalRecord / maxResult : totalRecord / maxResult + 1 ;
model.addAttribute("totalPage", totalPage);
model.addAttribute("totalList",totalRecord);
model.addAttribute("ipage",page+1); }catch (Exception e){
e.printStackTrace();
logger.info(e.getMessage());
}
return "storm/storm";
}

SpringDataJpa增删改查的更多相关文章

  1. sssp-springmvc+spring+spring-data-jpa增删改查

    环境:IDE:eclipse.jdk1.7.mysql5.7.maven 项目结构图 上面目录结构你可以自己创建 搭建框架 首先加入maven依赖包以及相关插件 <dependencies> ...

  2. spring-data-rest的魔力 10分钟实现增删改查

    目录 创建项目 启动项目 添加person 查看person 及 person 列表 条件查询 分页查询 controller 去哪里了 自定义 spring-data-rest 魔力之外的contr ...

  3. 上手spring boot项目(三)之spring boot整合mybatis进行增删改查

    使用mybatis框架进行增删改查大致有两种基础方式,一种扩展方式.两种基础方式分别是使用xml映射文件和使用方法注解.扩展方式是使用mybatis-plus的方式,其用法类似于spring-data ...

  4. Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示

    Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...

  5. ASP.NET从零开始学习EF的增删改查

           ASP.NET从零开始学习EF的增删改查           最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...

  6. 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查

    系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...

  7. 通过Java代码实现对数据库的数据进行操作:增删改查

    在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao  xingming    xue ...

  8. Hibernate全套增删改查+分页

    1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...

  9. 使用 Json.Net 对Json文本进行 增删改查

    JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...

随机推荐

  1. html-w3c规范及常见标签

    W3C提倡的web结构: 内容(HTML)与表现(css样式)分离 内容(HTML)与行为(JS)分离 HTML内容结构要求语义化 基本规范: 标签名和属性名称必须小写 HTML标签必须关闭 属性值必 ...

  2. 复习指南(Pascal版)

    [第一层级 条件反射] 1.个十百千各数位的求法 q:=a div 1000 mod 10; b:=a div 100 mod 10; s:=a div 10 mod 10; g:=a mod 10; ...

  3. Gift for GS5

    // // main.cpp // 生日快乐 // // Created by wasdns on 16/11/21. // Copyright © 2016年 wasdns. All rights ...

  4. IO模型详解

    IO编程包括: 文件读写 操作 StringIO 和 BytesIO 内存中 操作文件和目录 OS 序列化 json pickling 操作系统内核空间(缓冲区)收发数据: 内核态(内核空间)---- ...

  5. Android -- 两个activity界面的切换, 显示Intent 和 隐式Intent,putExtra传递数据

    1. 两个Activity之间可以通过Intent切换, 包括显示Intent 和 隐式Intent. 实例代码 MainActivity.java public class MainActivity ...

  6. 马哥教育python网络班19期 学习目标

    马哥教育python网络班19期 学习目标: (1)按群里的学习进度表,来自行学习,学完时间6个月. (2)学完后,薪资能达到20K+每月.

  7. Android--------工具类StatusBarUtil实现完美状态栏

    很早就想写这篇博客了,直到前几天有人问我这方面的问题才想起. 沉浸式状态栏是从android Kitkat(Android 4.4)开始出现的,顶部状态栏的颜色可以根据开发需求改变,使得APP风格更加 ...

  8. [洛谷U63006]导函数最小系数

    U63006 导函数最小系数 题面 给出一个n次函数\(f(x)=a_{n}x^{n}+a_{n-1}x^{n-1}+...+a_{1}x+a_0\)的各项系数\(a_n,a_{n-1}...a_1, ...

  9. Cannot locate the chosen ObjectFactory implementation: spring

    错误信息: Caused by: Cannot locate the chosen ObjectFactory implementation: spring - [unknown location]  ...

  10. crontab执行定时任务

    在linux下面使用命令crontab -e  编辑任务: [adv@localhost]$ crontab -e 之后开始编辑任务 * * * * * cd /home/adv/work/cutte ...