欢迎来到天天文库
浏览记录
ID:57337903
大小:489.10 KB
页数:15页
时间:2020-08-12
《Esper学习之十EPL语法(六).pdf》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、2014是新的一年,正好也是本人的本命年。既然是本命年,看来今年也是本人兴旺之年了。。。开了个小玩笑,同时也祝各位同行今年少调bug多涨工资,这才是最实际的。年前的最后一篇说的是子查询和join,基本上epl的大部分简单语法都说完了。之前有朋友问我epl怎么和数据库交互,正好今天这篇就是来专门解释这个问题。但是要提醒各位,本篇只是说明了在epl中如何与数据库交互,并且只能算是简单的交互。而高级的用法会在esperio里有详细的指导(esperio的文档可在esper的官网找到)。在esper的文档中,epl访问数据库的配置放在了比较靠后的位
2、置,不过为了方便各位学习,这里会先说明和数据库交互的相关配置,然后再说epl怎么访问数据库。配置文件在官方esper包的etc文件夹下,大家可以参考着学习。1.连接数据库a.JNDI获取连接配置如下:[html]viewplaincopy1.2.3.3、alue="com.myclass.CtxFactory"/>4.5.6.database-reference的name是要连接的数据库名字,其余的配置可参考JNDI的文档使用方法:[java]viewplaincopy1.if(envProperties.size()>0){2.initialConte4、xt=newInitialContext(envProperties);3.}else{4.initialContext=newInitialContext();5.}6.DataSourcedataSource=(DataSource)initialContext.lookup(lookupName);7.Connectionconnection=dataSource.getConnection();更多内容可参考JNDI的文档b.从连接池获取连接配置如下:(以dbcp为例)[html]viewplaincopy1.5、eferencename="mydb3">2.3.4.5.6.6、pertyname="driverClassName"value="com.mysql.jdbc.Driver"/>7.8.9.10.11.7、n-lifecyclevalue="pooled"/>相同的配置可以使用esper的api达到同样的效果。代码如下:[java]viewplaincopy1.Propertiesprops=newProperties();2.props.put("username","myusername");3.props.put("password","mypassword");4.props.put("driverClassName","com.mysql.jdbc.Driver");5.props.put(8、"url","jdbc:mysql://localhost/test");6.props.put("initialSize",2);7.props.put("validation
3、alue="com.myclass.CtxFactory"/>4.5.6.database-reference的name是要连接的数据库名字,其余的配置可参考JNDI的文档使用方法:[java]viewplaincopy1.if(envProperties.size()>0){2.initialConte
4、xt=newInitialContext(envProperties);3.}else{4.initialContext=newInitialContext();5.}6.DataSourcedataSource=(DataSource)initialContext.lookup(lookupName);7.Connectionconnection=dataSource.getConnection();更多内容可参考JNDI的文档b.从连接池获取连接配置如下:(以dbcp为例)[html]viewplaincopy1.5、eferencename="mydb3">2.3.4.5.6.6、pertyname="driverClassName"value="com.mysql.jdbc.Driver"/>7.8.9.10.11.7、n-lifecyclevalue="pooled"/>相同的配置可以使用esper的api达到同样的效果。代码如下:[java]viewplaincopy1.Propertiesprops=newProperties();2.props.put("username","myusername");3.props.put("password","mypassword");4.props.put("driverClassName","com.mysql.jdbc.Driver");5.props.put(8、"url","jdbc:mysql://localhost/test");6.props.put("initialSize",2);7.props.put("validation
5、eferencename="mydb3">2.3.4.5.6.6、pertyname="driverClassName"value="com.mysql.jdbc.Driver"/>7.8.9.10.11.7、n-lifecyclevalue="pooled"/>相同的配置可以使用esper的api达到同样的效果。代码如下:[java]viewplaincopy1.Propertiesprops=newProperties();2.props.put("username","myusername");3.props.put("password","mypassword");4.props.put("driverClassName","com.mysql.jdbc.Driver");5.props.put(8、"url","jdbc:mysql://localhost/test");6.props.put("initialSize",2);7.props.put("validation
6、pertyname="driverClassName"value="com.mysql.jdbc.Driver"/>7.8.9.10.11.7、n-lifecyclevalue="pooled"/>相同的配置可以使用esper的api达到同样的效果。代码如下:[java]viewplaincopy1.Propertiesprops=newProperties();2.props.put("username","myusername");3.props.put("password","mypassword");4.props.put("driverClassName","com.mysql.jdbc.Driver");5.props.put(8、"url","jdbc:mysql://localhost/test");6.props.put("initialSize",2);7.props.put("validation
7、n-lifecyclevalue="pooled"/>相同的配置可以使用esper的api达到同样的效果。代码如下:[java]viewplaincopy1.Propertiesprops=newProperties();2.props.put("username","myusername");3.props.put("password","mypassword");4.props.put("driverClassName","com.mysql.jdbc.Driver");5.props.put(
8、"url","jdbc:mysql://localhost/test");6.props.put("initialSize",2);7.props.put("validation
此文档下载收益归作者所有