|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
没有那个大公司会傻了吧唧用.net网页编程开发大型项目,开发了,那等于自己一半的生命线被微软握着呢。而.net网页编程不行,限制在window系统,又是捆绑,鄙视微软之!上篇博客先容了怎样使用esper举行POJO嵌套事务的监听处置操纵,这篇来讲一下Map事务监听和处置。
假如esper要举行的事Map事务那末起首是必要创建Map对象的。详细的创建办法以下,
- Map<String,Object>person=newHashMap<String,Object>();
- person.put("name",String.class);
- person.put("age",int.class);
- person.put("children",List.class);
- person.put("phones",Map.class);
- admin.getConfiguration().addEventType("Person",person);
经由过程addEventType办法来举行事务注册,这时候候事务称号为Person,这个和POJO对象事务实际上是一样的,只是POJO对象为对象称号,这里用户能够自界说事务名。这时候候用户誊写EPL语句的时分from前面就是必要随着Person。
详细的EPL语句就能够以下一样,
- Stringepl="selectage,childrenfromPersonwherename=cjq";
其他的开启引擎和传进事务操纵和前两篇博客一样
- publicstaticvoidmain(String[]args){
- EPServiceProviderepService=EPServiceProviderManager.getDefaultProvider();
- EPAdministratoradmin=epService.getEPAdministrator();
- Map<String,Object>person=newHashMap<String,Object>();
- person.put("name",String.class);
- person.put("age",int.class);
- person.put("children",List.class);
- person.put("phones",Map.class);
- admin.getConfiguration().addEventType("Person",person);
- Stringepl="selectage,childrenfromPersonwherename=cjq";
- EPStatementstate=admin.createEPL(epl);
- state.addListener(newPersonMapListener());
- EPRuntimeruntime=epService.getEPRuntime();
- Map<String,Object>person1=newHashMap<String,Object>();
- List<String>children=newArrayList<String>();
- children.add("x");
- children.add("y");
- children.add("z");
- Map<String,Integer>phones=newHashMap<String,Integer>();
- phones.put("a",123);
- phones.put("b",234);
- person1.put("name","cjq");
- person1.put("age",12);
- person1.put("children",children);
- person1.put("phones",phones);
- runtime.sendEvent(person1,"Person");
- }
以后完成监听代码为
- classPersonMapListenerimplementsUpdateListener{
- @Override
- publicvoidupdate(EventBean[]newEvents,EventBean[]oldEvents){
- if(newEvents!=null){
- Integerage=(Integer)newEvents[0].get("age");
- System.out.println("ageis:"+age);
- }
- }
- }
此时运转以后会输入上面的了局,
经由过程这三篇博客已对esper的事务处置有必定的熟悉了,实在很复杂的,就是开启引擎,编写事务代码,编写监听代码三步足矣。
为什么外国人还要写那些框架进行代码封装,他们不就是为了别人使用时可以更简单么!如果要达到一个企业级项目的不用框架是很难的。小一些的项目还行,大的光是MVC模式的设计的编码量就够大的了。还有性能方面,单轮windows,这个工具是微软写的,。 |
|