在Spring中使用JFinal的多数据源ActiveRecor.docx
- 文档编号:6447113
- 上传时间:2023-01-06
- 格式:DOCX
- 页数:30
- 大小:24.36KB
在Spring中使用JFinal的多数据源ActiveRecor.docx
《在Spring中使用JFinal的多数据源ActiveRecor.docx》由会员分享,可在线阅读,更多相关《在Spring中使用JFinal的多数据源ActiveRecor.docx(30页珍藏版)》请在冰豆网上搜索。
在Spring中使用JFinal的多数据源ActiveRecor
在Spring中使用JFinal的多数据源ActiveRecor
自定义Enum类转化为List或Map方便前端页取值
自动换行,随意拖动排序,最简单的一个接口自动化框架[Python]
左侧固定导航栏,随鼠标滑动变化
[代码]Log4j配置
--日志jar-->
导入这个包,会引入下面两个jar
--spring的基本jar包-->
--commons-login是必须的,而且没有依赖,是独立的包-->
--transactionManager实务管理的时候,需要这个jar包-->
--当spring-config.xml文件中配置 aspect>需要加入此包-->
//post网络请求,params是.Values类型
funcPost(apistring,params.Values)(rs[]byte,errerror){
resp,err:
=http.PostForm(api,params)
iferr!
=nil{
returnnil,err
}
deferresp.Body.Close()
returnioutil.ReadAll(resp.Body)
}
/**
*每一关初始化LIFE,responseTime,shootTime三个有关游戏难度静态变量
*/
protectedstaticvoidinitDifficult(){
switch(TankWar.level){
case1:
TankWar.tankLife=0x2;
TankWar.responseTime=0x18D;
TankWar.shootTime=0xBB5;
break;
case2:
TankWar.tankLife=0x2;
TankWar.responseTime=0x12B;
TankWar.shootTime=0x7C9;
break;
case3:
case4:
case5:
TankWar.tankLife=0x3;
TankWar.responseTime=0x101;
TankWar.shootTime=0x607;
break;
case6:
case7:
TankWar.tankLife=0x4;
TankWar.responseTime=0xC1;
TankWar.shootTime=0x3E5;
break;
case8:
TankWar.tankLife=0x5;
TankWar.responseTime=0xC1;
TankWar.shootTime=0x1F1;
break;
default:
TankWar.tankLife=0x1;
TankWar.responseTime=0x18D;
TankWar.shootTime=0xBB7;
break;
}
}
/**
*静态变量初始化
*/
protectedstaticvoidstaticVariableInit(){
MainFrame.keyBoardControl=0x0;
TankWar.shootTimer.cancel();
TankWar.bombGoTimer.cancel();
TankWar.bombTimer.cancel();
TankWar.goTimer.cancel();
TankWar.bombTask=newTimerTask(){
@Override
publicvoidrun(){
TankWar.playerBombNumber=TankWar.tankLife;
for(inti=0;i TankWar.tanks.get(i).bombNumber=1+(TankWar.tankLife/5); } } }; TankWar.refreshTask=newTimerTask(){ @Override publicvoidrun(){ MainFrame.frame.validate(); MainFrame.frame.repaint(); } };[代码][GoogleGo]代码 packagemain import( "io/ioutil" "net/http" "net/" "fmt" "encoding/json" ) //---------------------------------- //黄金数据调用示例代码-聚合数据 //在线接口文档: //---------------------------------- constAPPKEY="*******************"//您申请的APPKEY funcmain(){ //1.上海黄金交易所 Request1() //2.上海期货交易所 Request2() //3.银行账户黄金 Request3() } //1.上海黄金交易所 funcRequest1(){ //请求地址 juhe: =": 8080/finance/gold/shgold" //初始化参数 param: =.Values{} //配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set("key",APPKEY)//APPKey param.Set("v","")//JSON格式版本(0或1)默认为0 //发送请求 data,err: =Get(juhe,param) iferr! =nil{ fmt.Errorf("请求失败,错误信息: \r\n%v",err) }else{ varnetReturnmap[string]interface{} json.Unmarshal(data,&netReturn) ifnetReturn["error_code"].(float64)==0{ fmt.Printf("接口返回result字段是: \r\n%v",netReturn["result"]) } } } //2.上海期货交易所 funcRequest2(){ //请求地址 juhe: =": 8080/finance/gold/shfuture" //初始化参数 param: =.Values{} //配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set("key",APPKEY)//APPKey param.Set("v","")//JSON格式版本(0或1)默认为0 //发送请求 data,err: =Get(juhe,param) iferr! =nil{ fmt.Errorf("请求失败,错误信息: \r\n%v",err) }else{ varnetReturnmap[string]interface{} json.Unmarshal(data,&netReturn) ifnetReturn["error_code"].(float64)==0{ fmt.Printf("接口返回result字段是: \r\n%v",netReturn["result"]) } } } //3.银行账户黄金 funcRequest3(){ //请求地址 juhe: =": 8080/finance/gold/bankgold" //初始化参数 param: =.Values{} //配置请求参数,方法内部已处理encode问题,中文参数可以直接传参 param.Set("key",APPKEY)//APPKey //发送请求 data,err: =Get(juhe,param) iferr! =nil{ fmt.Errorf("请求失败,错误信息: \r\n%v",err) }else{ varnetReturnmap[string]interface{} json.Unmarshal(data,&netReturn) ifnetReturn["error_code"].(float64)==0{ fmt.Printf("接口返回result字段是: \r\n%v",netReturn["result"]) } } } //get网络请求 funcGet(apistring,params.Values)(rs[]byte,errerror){ var*. err=.Parse(api) iferr! =nil{ fmt.Printf("解析错误: \r\n%v",err) returnnil,err } //如果参数中有中文参数,这个方法会进行Encode .RawQuery=params.Encode() resp,err: =http.Get(.String()) iferr! =nil{ fmt.Println("err: ",err) returnnil,err } deferresp.Body.Close() returnioutil.ReadAll(resp.Body) } 代码描述: 基于GO的黄金数据接口调用代码实例 关联数据: 黄金数据 [代码][C#]代码 usingSystem; usingSystem.Collections.Generic; usingSystem.Linq; usingSystem.Text; usingSystem.Net; usingSystem.IO; usingXfrog.Net; usingSystem.Diagnostics; usingSystem.Web; //---------------------------------- //黄金数据调用示例代码-聚合数据 //在线接口文档: //代码中JsonObject类下载地址: //---------------------------------- namespaceConsoleAPI { classProgram { staticvoidMain(string[]args) { stringappkey="*******************";//配置您申请的appkey //1.上海黄金交易所 string1=": 8080/finance/gold/shgold"; varparameters1=newDictionary parameters1.Add("key",appkey);//你申请的key parameters1.Add("v","");//JSON格式版本(0或1)默认为0 stringresult1=sendPost(1,parameters1,"get"); JsonObjectnewObj1=newJsonObject(result1); StringerrorCode1=newObj1["error_code"].Value; if(errorCode1=="0") { Debug.WriteLine("成功"); Debug.WriteLine(newObj1); } else { //Debug.WriteLine("失败"); Debug.WriteLine(newObj1["error_code"].Value+": "+newObj1["reason"].Value); } //2.上海期货交易所 string2=": 8080/finance/gold/shfuture"; varparameters2=newDictionary parameters2.Add("key",appkey);//你申请的key parameters2.Add("v","");//JSON格式版本(0或1)默认为0 stringresult2=sendPost(2,parameters2,"get"); JsonObjectnewObj2=newJsonObject(result2); StringerrorCode2=newObj2["error_code"].Value; if(errorCode2=="0") { Debug.WriteLine("成功"); Debug.WriteLine(newObj2); } else { //Debug.WriteLine("失败"); Debug.WriteLine(newObj2["error_code"].Value+": "+newObj2["reason"].Value); } //3.银行账户黄金 string3=": 8080/finance/gold/bankgold"; varparameters3=newDictionary parameters3.Add("key",appkey);//你申请的key stringresult3=sendPost(3,parameters3,"get"); JsonObjectnewObj3=newJsonObject(result3); StringerrorCode3=newObj3["error_code"].Value; if(errorCode3=="0") { Debug.WriteLine("成功"); Debug.WriteLine(newObj3); } else { //Debug.WriteLine("失败"); Debug.WriteLine(newObj3["error_code"].Value+": "+newObj3["reason"].Value); } } /// ///Http(GET/POST) /// /// /// /// /// staticstringsendPost(string,IDictionary { if(method.ToLower()=="post") { HttpWebRequestreq=null; HttpWebResponsersp=null; System.IO.StreamreqStream=null; try { req=(HttpWebRequest)WebRequest.Create(); req.Method=method; req.KeepAlive=false; req.ProtocolVersion=HttpVersion.Version10; req.Timeout=5000; req.ContentType="application/x-www-form-encoded;charset=utf-8"; byte[]postData=Encoding.UTF8.GetBytes(BuildQuery(parameters,"utf8")); reqStream=req.GetRequestStream(); reqStream.Write(postData,0,postData.Length); rsp=(HttpWebResponse)req.GetResponse(); Encodingencoding=Encoding.GetEncoding(rsp.CharacterSet); returnGetResponseAsString(rsp,encoding); } catch(Exceptionex) { returnex.Message; } finally { if(reqStream! =null)reqStream.Close(); if(rsp! =null)rsp.Close(); } } else { //创建请求 HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create(+"? "+BuildQuery(parameters,"utf8")); //GET请求 request.Method="GET"; request.ReadWriteTimeout=5000; request.ContentType="text/html;charset=UTF-8"; HttpWebResponseresponse=(HttpWebResponse)request.GetResponse(); StreammyResponseStream=response.GetResponseStream(); StreamReadermyStreamReader=newStreamReader(myResponseStream,Encoding.GetEncoding("utf-8")); //返回内容 stringretString=myStreamReader.ReadToEnd(); returnretString; } } /// ///组装普通文本请求参数。 /// /// /// staticstringBuildQuery(IDictionary { StringBuilderpostData=newStringBuilder(); boolhasParam=false; IEnumerator while(dem.MoveNext()) { stringname=dem.Current.Key; stringvalue=dem.Current.Value; //忽略参数名或参数值为空的参数 if(! string.IsNullOrEmpty(name))//&&! string.IsNullOrEmpty(value) { if(hasParam) { postData.Append("&"); } postData.Append(name); postData.Append("="); if(encode=="gb2312") { postData.Append(HttpUtility.Encode(value,Encoding.GetEncoding("gb2312"))); } elseif(encode=="utf8") { postData.Append(HttpUtility.Encode(value,Encoding.UTF8)); } else { postData.Append(value); } hasParam=true; } } returnpostData.ToString(); } /// ///把响应流转换为文本。 /// /// ///
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Spring 使用 JFinal 多数 ActiveRecor
![提示](https://static.bdocx.com/images/bang_tan.gif)