Jstorm+Spring+mybatis整合

  在现有的jstorm框架下,有一个需求:jstorm要对接mysql数据库的实时读取数据, 通过bolt处理,可能要调用service层的框架,最后保存到数据库。

在网上寻找了一下,发现storm集成spring的资料非常少,有的也只是简单描述,现把搭建过程的一些问题和注意事项详细列出。

1、pom文件、jstorm+spring+mybatis  网上大把的资料,不在这里详细累述。需要注意就是版本兼容问题,可以到www.mvnreposity.com去查看一下

2、jstorm容器集成spring容器,不能采用@autowire 注入的方式,只能在component(spout/bolt)中获取bean,可以写一个公共类,方便以后相同操作。

public class SpringContext implements ApplicationContextAware{private static ClassPathXmlApplicationContext applicationContext ;public static synchronized  void SpringContextInit(){if (applicationContext==null){applicationContext =new ClassPathXmlApplicationContext(new String[]{"application.xml"});
//                applicationContext.start();
                 }}public static <T> T getBean(String name,Class<T> clazz){if (applicationContext==null){SpringContext.SpringContextInit();}return applicationContext.getBean(name,clazz);}@Overridepublic void setApplicationContext(ApplicationContext arg0) throws BeansException {applicationContext=(ClassPathXmlApplicationContext) arg0;}
}
View Code

3、序列化问题:通过本地测试  加不加序列化都无所谓   都能跑通, 建议加上,因为现在还没有上线集群测试

4、将获取bean的操作 放在open和prepare里、在spout中获取数据源的方法放在open中,nextTuple只负责提交数据到stream中、在bolt中处理数据的方法放在excute中。

 

转载于:https://www.cnblogs.com/syd-fish-cat/p/9602823.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/451384.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

无限享受百度文库,财富值无视

相信大家在百度上找东西时&#xff0c;遇到有的文库需要财富值&#xff0c;可是自己又没有&#xff0c;是不是很头疼啊。请看&#xff1a; 找到自己要的文库&#xff0c;如我找的文库链接为&#xff1a;http://wenku.baidu.com/view/7db6 ... html?l5.1.5.1&&#xff08;…

JavaScript onerror 事件( window.onerror = )

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 使用 onerror 事件是一种老式的标准的在网页中捕获 Javascript 错误的方法。 实例 onerror 事件 如何使用 onerror 事件捕获网页中的错误…

上海云栖:金融政企行业的CDN最佳实践

2019独角兽企业重金招聘Python工程师标准>>> 摘要&#xff1a; 在刚刚结束的上海云栖大会飞天技术汇分论坛上&#xff0c;阿里云视频云产品架构师罗小飞进行了《阿里云CDN——面向金融政企的CDN最佳实践》主题分享&#xff0c;为上海的嘉宾介绍CDN的解决方案与技术服…

lunix基本命令

安装lunix 批量创建文件 whoami查看当前用户 sudo adduser lilei创建用户 groups lilei 查看用户所属用户组 sudo usermod -G root lilei 赋予root权限 sudo deluser lilei --remove-home ls -l 显示目录的文件 ls -a 显示隐藏文件 PWD 获取当前目录 cd .. 返回上层目录 cd 进入…

开启Swarm集群以及可视化管理

为什么80%的码农都做不了架构师&#xff1f;>>> 在搭建的两台coreos服务器上开启swarm集群 前置条件&#xff1a; docker均开启2375端口同一个局域网内主服务器上安装Portainer容器安装Portainer容器执行&#xff1a; docker run -d -p 9000:9000 --restartalways …

python基本语法:序列

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 序列的基本操作&#xff1a; 2.用例&#xff1a; 3.序列包含字符串、元组、列表。

移动互联网开始降温:“人才热”退烧

去年的疯狂抢人变成了今年的裁员甚至关门歇业&#xff0c;漫天要价变成了工作难找&#xff0c;移动互联网市场正回归理性 工作不好找了。 “去年这个时候&#xff0c;一个刚毕业的Android开发工程师&#xff0c;就能轻松拿到七八千一个月&#xff0c;而今年&#xff0c;很难找到…

MAP存储数据

map可以装多种类型的值&#xff0c;当然键不能重复&#xff0c;值可以重复。可以使用多种类型的父类&#xff0c;来指定值的类型。比如Object是其他类的父类。例如&#xff1a;HashMap<Object,Object>&#xff0c;它的键和值都可以存储多种类型&#xff0c;反正都是Objec…

IMDb、烂番茄、MTC、各种电影行业评分名字整理

这篇不是技术文章&#xff0c;就是对总是看到但是不知道具体是什么的一些电影名词、评分、来源&#xff0c;学习一下。 IMDb 互联网电影资料库&#xff08;Internet Movie Database&#xff0c;简称IMDb&#xff09;是一个关于电影演员、电影、电视节目、电视明星和电影制作的在…

iOS应用:成功就像中彩票,大半开发者亏本

移动是座大金矿&#xff0c;从来都不乏一飞冲天的成功故事&#xff08;Draw Something、愤怒的小鸟等&#xff09;。但是大家往往只看到光鲜的一面&#xff0c;对于移动开发者来说&#xff0c;现实是残酷的&#xff0c;根据市场营销机构App Promo的一项调查&#xff0c;绝大多数…

python基本语法:元组

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1. 元组说明&#xff1a; 元组和列表类似&#xff0c;只不过元组和字符串一样是不可变的&#xff0c;即你不能修改元组。 元组通过圆括…

docker安装nginx容器小记

前言: 使用docker安装了nginx容器&#xff0c;很久才成功跑起来&#xff0c;对安装过程做下记录 linux系统&#xff1a;centos7.4 docker安装不阐述&#xff0c;直接记录安装创建nginx容器的过程 1. 拉取nginx的镜像&#xff0c;此处拉取的最新版 docker pull nginx2. 创建ngin…

long==int

int 与 long 进行比较时&#xff0c;int 会自动进行隐式的类型转换&#xff0c;将int提升为 long 类型。

Mybatis 拦截器介绍

Mybatis 拦截器介绍1.1 目录1.2 前言1.3 Interceptor接口1.4 注册拦截器1.5 Mybatis可拦截的方法1.6 利用拦截器进行分页拦截器的一个作用就是我们可以拦截某些方法的调用&#xff0c;我们可以选择在这些被拦截的方法执行前后加上某些逻辑&#xff0c;也可以在执行这些被拦截的…

python基本语法:列表(列表和元组的区别)

前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到教程。 1.基本说明 2.用例&#xff1a; 3.列表类似于java中的list. 与元组不同&#xff0c;定义单个元素对象时不用加逗号&#xff0c;且元素值…

第一次作业:准备

这个作业的要求来自于&#xff1a;https://www.cnblogs.com/greyzeng/p/9581624.html 你为何来上课并且认真参与?(http://www.scalerstalk.com/816-attention) 认真听课本就是学生的本分&#xff0c;但一节课40分钟没有走神估计很少人能做到。可能有时候老师确实讲的不够精彩&…

用JSONObject解析和处理json数据

本文中主要介绍JSONObject处理json数据时候的一些常用场景和方法。 &#xff08;一&#xff09;jar包下载 所需jar包打包下载百度网盘地址&#xff1a;https://pan.baidu.com/s/1c27Uyre&#xff08;二&#xff09;常见场景及处理方法 1、解析简单的json字符串&#xff1a;1  …

手机、平板、PC与智能电视实现数据大统一

进来&#xff0c;由 Ubuntu 手机原型设计引发的风波&#xff08;数据大贯通&#xff09;&#xff0c;越演越烈&#xff0c;给人的感觉是“大雨欲来&#xff0c;风满楼”。这是什么事情呢&#xff1f; 根据4月12日透露出的一份Ubuntu手机的功能设计示意图&#xff0c;人们纷纷猜…

PL SQL导入导出sql/dmp文件

导出步骤&#xff1a;1、tools ->export user object (导出的是建表语句&#xff08;包括存储结构&#xff09;&#xff0c;选择选项&#xff0c;导出.sql文件2、tools ->export tables-> SQL Inserts 选择选项导出指定某些表.sql文件按照如图所示的勾选&#xff0c;成…

映射与函数

最近在考研&#xff0c;在学习高数的过程中&#xff0c;真的有体会到学习高数的快乐&#xff0c;今天简单的说一下个人对映射与函数的理解&#xff1a; 搞懂几个定义就能明白了两者之间的关系&#xff0c;很微妙。 映射&#xff1a; 集合&#xff1a;一个屋子里面装着两个人 …