SpringDataJpa增删改查

  • 1.mava依赖
  • 
    org.springframework.data
    spring-data-jpa
    1.2.0.RELEASE
    
    
    org.springframework.data
    spring-data-commons-core
    
    
    

     

  • 2.实体类
  • @Entity
    @Table(name="bdsp_storm_manage")
    public class StormManage {
    @Id
    @GeneratedValue(strategy= GenerationType.IDENTITY)
    @Column(name="id",nullable=false)
    private int id;
    @Column(name="kafka_topic",nullable=true)
    private String kafkaTopic;//kafka主题
    @Column(name="output_type",nullable=true)
    private String outputType;//输出类型
    @Column(name="output_dir",nullable=true)
    private String outputDir;//目录
    @Column(name="file_head_name",nullable=true)
    private String fileHeadName;//拓扑名称
    @Column(name="hdfs_url",nullable=true)
    private String hdfsUrl;//hdfsUrl
    @Column(name="enter_topic",nullable=true)
    private String enterTopic;//输入主题
    @Column(name="storm_name",nullable=true)
    private String stormName;//输入主题
    @Column(name="state",nullable=true)
    private Integer state;//启动状态 0未启动 1启动
    @Column(name="main_class",nullable=true)
    private String mainClass;
    @Column(name="file_path",nullable=true)
    private String filePath;//文件路径
    @Column(name="user_name",nullable=true)
    private String userName;//操作人的姓名
    @Column(name="operate_time",nullable=true)
    private String operateTime;//操作时间
    @Column(name="warn_type",nullable=true)
    private String warnType;//告警方式
    @Column(name="zt",nullable=true)
    private int zt;//是否暂停 0 未暂停 1 暂停
    @Column(name="storm_cluster_id",nullable=true)
    private int stormClusterId;//storm集群id
    @Column(name="myfile_name",nullable=true)
    private String myfileName;//storm上传文件的名称
    @Column(name="del_status",nullable=true)
    private int delStatus;//删除标识0 未删除 1 已删除
    @Column(name="del_user",nullable=true)
    private String delUser;//删除人
    @Column(name="del_time",nullable=true)
    private String delTime;//删除时间
    
    public int getDelStatus() {
    return delStatus;
    }
    
    public void setDelStatus(int delStatus) {
    this.delStatus = delStatus;
    }
    
    public String getDelUser() {
    return delUser;
    }
    
    public void setDelUser(String delUser) {
    this.delUser = delUser;
    }
    
    public String getDelTime() {
    return delTime;
    }
    
    public void setDelTime(String delTime) {
    this.delTime = delTime;
    }
    
    public String getMyfileName() {
    return myfileName;
    }
    
    public void setMyfileName(String myfileName) {
    this.myfileName = myfileName;
    }
    
    public int getStormClusterId() {
    return stormClusterId;
    }
    
    public void setStormClusterId(int stormClusterId) {
    this.stormClusterId = stormClusterId;
    }
    
    public int getZt() {
    return zt;
    }
    
    public void setZt(int zt) {
    this.zt = zt;
    }
    
    public String getWarnType() {
    return warnType;
    }
    
    public void setWarnType(String warnType) {
    this.warnType = warnType;
    }
    
    public String getFilePath() {
    return filePath;
    }
    
    public void setFilePath(String filePath) {
    this.filePath = filePath;
    }
    
    public String getMainClass() {
    return mainClass;
    }
    
    public void setMainClass(String mainClass) {
    this.mainClass = mainClass;
    }
    
    public Integer getState() {
    return state;
    }
    
    public void setState(Integer state) {
    this.state = state;
    }
    
    public String getStormName() {
    return stormName;
    }
    
    public void setStormName(String stormName) {
    this.stormName = stormName;
    }
    
    public int getId() {
    return id;
    }
    
    public void setId(int id) {
    this.id = id;
    }
    
     
    
    public String getOutputType() {
    return outputType;
    }
    
    public void setOutputType(String outputType) {
    this.outputType = outputType;
    }
    
     
    
    public String getOutputDir() {
    return outputDir;
    }
    
    public void setOutputDir(String outputDir) {
    this.outputDir = outputDir;
    }
    
    public String getFileHeadName() {
    return fileHeadName;
    }
    
    public void setFileHeadName(String fileHeadName) {
    this.fileHeadName = fileHeadName;
    }
    
    public String getHdfsUrl() {
    return hdfsUrl;
    }
    
    public void setHdfsUrl(String hdfsUrl) {
    this.hdfsUrl = hdfsUrl;
    }
    
    public String getKafkaTopic() {
    return kafkaTopic;
    }
    
    public void setKafkaTopic(String kafkaTopic) {
    this.kafkaTopic = kafkaTopic;
    }
    
     
    
    public String getEnterTopic() {
    return enterTopic;
    }
    
    public void setEnterTopic(String enterTopic) {
    this.enterTopic = enterTopic;
    }
    
    public StormManage() {
    }
    
     
    
    public String getUserName() {
    return userName;
    }
    
    public void setUserName(String userName) {
    this.userName = userName;
    }
    
    public String getOperateTime() {
    return operateTime;
    }
    
    public void setOperateTime(String operateTime) {
    this.operateTime = operateTime;
    }
    
    public StormManage(String kafkaTopic, String outputType, String outputDir, String fileHeadName, String hdfsUrl, String enterTopic, String stormName, Integer state, String mainClass, String filePath, String userName, String operateTime, String warnType, int zt, int stormClusterId, String myfileName, int delStatus, String delUser, String delTime) {
    this.kafkaTopic = kafkaTopic;
    this.outputType = outputType;
    this.outputDir = outputDir;
    this.fileHeadName = fileHeadName;
    this.hdfsUrl = hdfsUrl;
    this.enterTopic = enterTopic;
    this.stormName = stormName;
    this.state = state;
    this.mainClass = mainClass;
    this.filePath = filePath;
    this.userName = userName;
    this.operateTime = operateTime;
    this.warnType = warnType;
    this.zt = zt;
    this.stormClusterId = stormClusterId;
    this.myfileName = myfileName;
    this.delStatus = delStatus;
    this.delUser = delUser;
    this.delTime = delTime;
    }
    }

     

  • 3.Repository(几个常用的例子)
  • @Repository
    public interface StormManageRepository extends JpaRepository {
    
    //根据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 findStormManageByEnterTopic(int enterTopic);
    
    }

     

  • 4.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 queryStormBy(Map searchParams, Pageable pageable) {
    Page queryStormBy = null;
    try {
    Map filters = SearchFilter.parse(searchParams);
    Specification 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);
    }  
    
    }

     

  • 5.Controller层(主要是分页查询)
  • @RequestMapping("/toStormJsp")
    public String toStormJsp(HttpServletRequest request, Model model,@ModelAttribute("id") String id,HttpSession session) {
    try{
    
    Map searchParams = new HashMap();
    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 stormManages = stormManageService.queryStormBy(searchParams, null);
    List findStormManage = new ArrayList();
    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 page2 = stormManageService.queryStormBy(searchParams, pager);
    List pageList = new ArrayList();
    
    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的增删改及分页查询

转载于:https://www.cnblogs.com/hawell/p/SpringDataJpa.html

你可能感兴趣的:(SpringDataJpa增删改查)