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 ...
随机推荐
- c#实现任务栏添加控制按钮
Windows7Taskbar的使用 你需要引入3个文件VistaBridgeLibrary.dll.Windows7.DesktopIntegration.dll.Windows7.DesktopI ...
- SPA(单页面web应用程序)
单页web应用(single page web application,SPA),就是只有一张web页面的应用,是加载单个HTML页面并在用户与应用程序交互时动态更新该页面的web应用程序. 浏览器一 ...
- 完美解决 No toolchains found in the NDK toolchains folder for ABI with prefix: mips64el-linux-android
问题描述 好久之前的一个Android项目,最近需要重构一下 因为Android Studio的开发环境以及Gradle的版本等等都进行了一定的更新,于是导入Project以后,出现了报错: No t ...
- git tags 管理
新建标签: git tag -a V1.1 -m "some thing" (新建标签前请先commit代码) 推送标签: git push --tags (推送标签前请先推送代码 ...
- 【三小时学会Kubernetes!(四) 】Deployment实践
Deployment 部署 Kubernetes 部署可以帮助每一个应用程序的生命都保持相同的一点:那就是变化.此外,只有挂掉的应用程序才会一尘不变,否则,新的需求会源源不断地涌现,更多代码会被开发出 ...
- jdk动态代理使用及原理
jdk动态代理的使用 1.创建实现InvocationHandler接口的类,实现invoke(Object proxy, Method method, Object[] args)接口,其中invo ...
- Caesars Cipher
让上帝的归上帝,凯撒的归凯撒. 下面我们来介绍风靡全球的凯撒密码Caesar cipher,又叫移位密码. 移位密码也就是密码中的字母会按照指定的数量来做移位. 一个常见的案例就是ROT13密码,字母 ...
- 身份证真实性校验js、mini ui身份证长度正则验证
身份证号码真实性校验 <input type="text" value="请输入身份证号" id="cards" ><bu ...
- RxJava 详解
给 Android 开发者的 RxJava 详解: http://gank.io/post/560e15be2dca930e00da1083#toc_1
- L3-010. 是否完全二叉搜索树
L3-010. 是否完全二叉搜索树 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 将一系列给定数字顺序插入一个初始为空的二叉搜 ...