SpringDataJpa增删改查
资料来源网址: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增删改查的更多相关文章
- sssp-springmvc+spring+spring-data-jpa增删改查
环境:IDE:eclipse.jdk1.7.mysql5.7.maven 项目结构图 上面目录结构你可以自己创建 搭建框架 首先加入maven依赖包以及相关插件 <dependencies> ...
- spring-data-rest的魔力 10分钟实现增删改查
目录 创建项目 启动项目 添加person 查看person 及 person 列表 条件查询 分页查询 controller 去哪里了 自定义 spring-data-rest 魔力之外的contr ...
- 上手spring boot项目(三)之spring boot整合mybatis进行增删改查
使用mybatis框架进行增删改查大致有两种基础方式,一种扩展方式.两种基础方式分别是使用xml映射文件和使用方法注解.扩展方式是使用mybatis-plus的方式,其用法类似于spring-data ...
- Dapper逆天入门~强类型,动态类型,多映射,多返回值,增删改查+存储过程+事物案例演示
Dapper的牛逼就不扯蛋了,答应群友做个入门Demo的,现有园友需要,那么公开分享一下: 完整Demo:http://pan.baidu.com/s/1i3TcEzj 注 意 事 项:http:// ...
- ASP.NET从零开始学习EF的增删改查
ASP.NET从零开始学习EF的增删改查 最近辞职了,但是离真正的离职还有一段时间,趁着这段空档期,总想着写些东西,想来想去,也不是很明确到底想写个啥,但是闲着也是够 ...
- 构建ASP.NET MVC4+EF5+EasyUI+Unity2.x注入的后台管理系统(9)-MVC与EasyUI结合增删改查
系列目录 文章于2016-12-17日重写 在第八讲中,我们已经做到了怎么样分页.这一讲主要讲增删改查.第六讲的代码已经给出,里面包含了增删改,大家可以下载下来看下. 这讲主要是,制作漂亮的工具栏,虽 ...
- 通过Java代码实现对数据库的数据进行操作:增删改查
在写代码之前,依然是引用mysql数据库的jar包文件:右键项目-构建路径-设置构建路径-库-添加外部JAR 在数据库中我们已经建立好一个表xs :分别有xuehao xingming xue ...
- Hibernate全套增删改查+分页
1.创建一个web工程 2.导入jar包 3.创建Student表 4.创建实体类 package com.entity; public class Student { private Integer ...
- 使用 Json.Net 对Json文本进行 增删改查
JSON 已经成为当前主流交互格式, 如何在C#中使用 Json.Net 对Json文本进行 增删改查呢?见如下代码 #region Create (从零创建) public static strin ...
随机推荐
- html-w3c规范及常见标签
W3C提倡的web结构: 内容(HTML)与表现(css样式)分离 内容(HTML)与行为(JS)分离 HTML内容结构要求语义化 基本规范: 标签名和属性名称必须小写 HTML标签必须关闭 属性值必 ...
- 复习指南(Pascal版)
[第一层级 条件反射] 1.个十百千各数位的求法 q:=a div 1000 mod 10; b:=a div 100 mod 10; s:=a div 10 mod 10; g:=a mod 10; ...
- Gift for GS5
// // main.cpp // 生日快乐 // // Created by wasdns on 16/11/21. // Copyright © 2016年 wasdns. All rights ...
- IO模型详解
IO编程包括: 文件读写 操作 StringIO 和 BytesIO 内存中 操作文件和目录 OS 序列化 json pickling 操作系统内核空间(缓冲区)收发数据: 内核态(内核空间)---- ...
- Android -- 两个activity界面的切换, 显示Intent 和 隐式Intent,putExtra传递数据
1. 两个Activity之间可以通过Intent切换, 包括显示Intent 和 隐式Intent. 实例代码 MainActivity.java public class MainActivity ...
- 马哥教育python网络班19期 学习目标
马哥教育python网络班19期 学习目标: (1)按群里的学习进度表,来自行学习,学完时间6个月. (2)学完后,薪资能达到20K+每月.
- Android--------工具类StatusBarUtil实现完美状态栏
很早就想写这篇博客了,直到前几天有人问我这方面的问题才想起. 沉浸式状态栏是从android Kitkat(Android 4.4)开始出现的,顶部状态栏的颜色可以根据开发需求改变,使得APP风格更加 ...
- [洛谷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, ...
- Cannot locate the chosen ObjectFactory implementation: spring
错误信息: Caused by: Cannot locate the chosen ObjectFactory implementation: spring - [unknown location] ...
- crontab执行定时任务
在linux下面使用命令crontab -e 编辑任务: [adv@localhost]$ crontab -e 之后开始编辑任务 * * * * * cd /home/adv/work/cutte ...