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 ...
随机推荐
- Linux权限控制
文件属性 权限说明 文件用户组调 权限设置建议 文件属性 在shell环境里输入:ls -l 可以查看当前目录文件.如: drwxr-xr-x. 14 root root 4096 Apr 5 18: ...
- 缓存技术内部交流_03_Cache Aside
参考资料: http://www.ehcache.org/documentation/3.2/caching-patterns.html http://www.ehcache.org/document ...
- RotateCard(自定义旋转view)
使用方法Demo package com.example.displaydemo; import java.util.ArrayList; import com.example.displaydemo ...
- SSM的Maven项目搭建过程
POM文件 父项目管理jar包,pom <modelVersion>4.0.0</modelVersion> <groupId>cn.e3mall</grou ...
- 第五天 Linux基本命令
tty控制台终端 tty1~tty6? ctrl + alt + F2~F6 切换控制台 alt + F1 返回 但是使用 在图形化界面,使用init 3后,不能使用alt + F1返回,因为两者 ...
- Java中操作Redis
一.server端安装 1.下载 https://github.com/MSOpenTech/redis 可看到当前可下载版本:redis2.6 下载后的文件为: 解压后,选择当前64位win7系统对 ...
- day32 Python与金融量化分析(二)
第一部分:金融与量化投资 股票: 股票是股份公司发给出资人的一种凭证,股票的持有者就是股份公司的股东. 股票的面值与市值 面值表示票面金额 市值表示市场价值 上市/IPO: 企业通过证券交易所公开向社 ...
- Factorialize a Number
计算一个整数的阶乘 如果用字母n来代表一个整数,阶乘代表着所有小于或等于n的整数的乘积. 阶乘通常简写成 n! 例如: 5! = 1 * 2 * 3 * 4 * 5 = 120 当你完成不了挑战的时候 ...
- Quartz教程二:API,Job和Trigger
原文链接 | 译文链接 | 翻译:nkcoder | 校对:方腾飞 本系列教程由quartz-2.2.x官方文档翻译.整理而来,希望给同样对quartz感兴趣的朋友一些参考和帮助,有任何不当或错误之处 ...
- ZOJ 2971 Give Me the Number (模拟,字符数组的清空+map)
Give Me the Number Time Limit: 2 Seconds Memory Limit: 65536 KB Numbers in English are written ...