「java状态机」java状态机框架cola
今天给各位分享java状态机的知识,其中也会对java状态机框架cola进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、java中xml的状态机出错怎么办
- 2、android bluetooth java层有哪些状态机?
- 3、曲靖java培训学校告诉你Java程序员常用的开发工具有哪些?
- 4、java 状态机模式 事件 状态 当前状态有多个下一状态
java中xml的状态机出错怎么办
这个应该不会,读和写应该不会并行的。(此程序虽然会一分钟执行一次,在下一次执行之前肯定是没有文件的,在之前会做删除。)
就是将LIST中的内容写入到XML文件中。如下就是我整个方法。
String addXmlFile( Connection connection,Logger logger,String strFilePath,String strFileName ,
String strLastDate,String strDBSysTime) {
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- Start .");
String returnStr = "";
CmnWalkInExtractStruct newWalkInStruct = new CmnWalkInExtractStruct();
ArrayList resultNewWalkInList = new ArrayList();
DocumentBuilderFactory XML_dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder XML_db = null;
try {
XML_db = XML_dbf.newDocumentBuilder();
}
catch (ParserConfigurationException pce) {
returnStr="error";
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- xml ERROR1:" +pce);
return returnStr;
}
Document XML_doc = null;
try{
XML_doc = XML_db.parse(strFilePath + systemSeparator + strFileName);
}
catch (Exception ex){
ex.printStackTrace();
returnStr="error";
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- xml ERROR2:" +ex);
return returnStr;
}
Element XML_root = XML_doc.getDocumentElement();
resultNewWalkInList = WalkInExtractDB.selectNewWalkInData(connection,logger,strLastDate,strDBSysTime);
boolean addFlag = false;
if(resultNewWalkInList.size()==0){
returnStr = "1";
return returnStr;
}else{
for(int i = 0;iresultNewWalkInList.size();i++){
newWalkInStruct = ((CmnWalkInExtractStruct)resultNewWalkInList.get(i));
if(newWalkInStruct.createDate.compareTo(strLastDate)=0
newWalkInStruct.upMode.equals("2")){
continue;
}else if(newWalkInStruct.createDate.compareTo(strLastDate)=0
newWalkInStruct.upMode.equals("1")){
newWalkInStruct.upMode = "0";
}
addFlag = true;
Element nodeList = XML_doc.createElement("DATA");
nodeList.setAttribute("UPMODE", getStr(newWalkInStruct.upMode));
XML_root.appendChild(nodeList);
Element emtXMLSNDDATE = XML_doc.createElement("XMLSNDDATE");
emtXMLSNDDATE.setAttribute("TYPE", "DATE");
nodeList.appendChild(emtXMLSNDDATE);
Text tXMLSNDDATE = XML_doc.createTextNode(getStr(newWalkInStruct.XMLSNDDATE));
emtXMLSNDDATE.appendChild(tXMLSNDDATE);
Element emtdlrCD = XML_doc.createElement("DLRCD");
emtdlrCD.setAttribute("TYPE", "CHAR");
nodeList.appendChild(emtdlrCD);
Text tdlrCD = XML_doc.createTextNode(getStr(newWalkInStruct.dlrCD));
emtdlrCD.appendChild(tdlrCD);
Element emtbrnCD = XML_doc.createElement("BRNCD");
emtbrnCD.setAttribute("TYPE", "CHAR");
nodeList.appendChild(emtbrnCD);
Text tbrnCD = XML_doc.createTextNode(getStr(newWalkInStruct.brnCD));
emtbrnCD.appendChild(tbrnCD);
Element emtrezID = XML_doc.createElement("REZID");
emtrezID.setAttribute("TYPE", "NUMBER");
nodeList.appendChild(emtrezID);
Text trezID = XML_doc.createTextNode(getStr(newWalkInStruct.rezID));
emtrezID.appendChild(trezID);
Element emtbasRezID = XML_doc.createElement("BASREZID");
emtbasRezID.setAttribute("TYPE", "CHAR");
nodeList.appendChild(emtbasRezID);
Text tbasRezID = XML_doc.createTextNode(getStr(newWalkInStruct.basRezID));
emtbasRezID.appendChild(tbasRezID);
Element emtserviceCode = XML_doc.createElement("MNTNCD");
emtserviceCode.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtserviceCode);
Text tserviceCode = XML_doc.createTextNode(getStr(newWalkInStruct.typicalSrvType));
emtserviceCode.appendChild(tserviceCode);
Element emtvclregNO = XML_doc.createElement("VCLREGNO");
emtvclregNO.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtvclregNO);
Text tvclregNO = XML_doc.createTextNode(getStr(newWalkInStruct.vclregNO));
emtvclregNO.appendChild(tvclregNO);
Element emtvin = XML_doc.createElement("VIN");
emtvin.setAttribute("TYPE", "VARCHAR2");
nodeList.appendChild(emtvin);
Text tvin = XML_doc.createTextNode(getStr(newWalkInStruct.vin));
emtvin.appendChild(tvin);
Element emtmakeCD = XML_doc.createElement("MAKERCD");
emtmakeCD.setAttribute("TYPE", "CHAR");
nodeList.appendChild(emtmakeCD);
Text tmakeCD = XML_doc.createTextNode(getStr(newWalkInStruct.makeCD));
emtmakeCD.appendChild(tmakeCD);
Element emtseriesCD = XML_doc.createElement("SERIESCD");
emtseriesCD.setAttribute("TYPE", "CHAR");
nodeList.appendChild(emtseriesCD);
Text tseriesCD = XML_doc.createTextNode(getStr(newWalkInStruct.seriesCD));
emtseriesCD.appendChild(tseriesCD);
Element emtseriesNM = XML_doc.createElement("SERIESNM");
emtseriesNM.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtseriesNM);
Text tseriesNM = XML_doc.createTextNode(getStr(newWalkInStruct.seriesNM));
emtseriesNM.appendChild(tseriesNM);
Element emtbaseType = XML_doc.createElement("BASETYPE");
emtbaseType.setAttribute("TYPE", "VARCHAR2");
nodeList.appendChild(emtbaseType);
Text tbaseType = XML_doc.createTextNode(getStr(newWalkInStruct.baseType));
emtbaseType.appendChild(tbaseType);
Element emtcustCD = XML_doc.createElement("CUSTCD");
emtcustCD.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtcustCD);
Text tcustCD = XML_doc.createTextNode(getStr(newWalkInStruct.custCD));
emtcustCD.appendChild(tcustCD);
Element emtname = XML_doc.createElement("NAME");
emtname.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtname);
Text tname = XML_doc.createTextNode(getStr(newWalkInStruct.name));
emtname.appendChild(tname);
Element emtzipCode = XML_doc.createElement("ZIPCODE");
emtzipCode.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtzipCode);
Text tzipCode = XML_doc.createTextNode(getStr(newWalkInStruct.zipCode));
emtzipCode.appendChild(tzipCode);
Element emtaddress = XML_doc.createElement("ADDRESS");
emtaddress.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emtaddress);
Text taddress = XML_doc.createTextNode(getStr(newWalkInStruct.address));
emtaddress.appendChild(taddress);
Element emttelNo1 = XML_doc.createElement("TELNO1");
emttelNo1.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emttelNo1);
Text ttelNo1 = XML_doc.createTextNode(getStr(newWalkInStruct.telNo1));
emttelNo1.appendChild(ttelNo1);
Element emttelNo2 = XML_doc.createElement("TELNO2");
emttelNo2.setAttribute("TYPE", "nVARCHAR2");
nodeList.appendChild(emttelNo2);
Text ttelNo2 = XML_doc.createTextNode(getStr(newWalkInStruct.telNo2));
emttelNo2.appendChild(ttelNo2);
Element emtmileAge = XML_doc.createElement("MILEAGE");
emtmileAge.setAttribute("TYPE", "NUMBER");
nodeList.appendChild(emtmileAge);
Text tmileAge = XML_doc.createTextNode(getStr(String.valueOf(newWalkInStruct.mileAge)));
emtmileAge.appendChild(tmileAge);
Element emtupdateDate = XML_doc.createElement("UPDATEDATE");
emtupdateDate.setAttribute("TYPE", "DATE");
nodeList.appendChild(emtupdateDate);
Text tupdateDate = XML_doc.createTextNode(getStr(newWalkInStruct.updateDate));
emtupdateDate.appendChild(tupdateDate);
Element emtcreateDate = XML_doc.createElement("CREATEDATE");
emtcreateDate.setAttribute("TYPE", "DATE");
nodeList.appendChild(emtcreateDate);
Text tcreateDate = XML_doc.createTextNode(getStr(newWalkInStruct.createDate));
emtcreateDate.appendChild(tcreateDate);
}
}
try{
FileOutputStream XML_outStream = new FileOutputStream(strFilePath + systemSeparator + strFileName);
OutputStreamWriter XML_outWriter = new OutputStreamWriter(XML_outStream);
DOMSource source = new DOMSource(XML_doc);
StreamResult result = new StreamResult(XML_outStream);
TransformerFactory factory = TransformerFactory.newInstance();
Transformer transformer = factory.newTransformer();
transformer.setOutputProperty(OutputKeys.ENCODING, "utf-8");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");
transformer.transform(source, result);
XML_outStream.close();
XML_outWriter.close();
}
catch(FileNotFoundException e){
returnStr="error";
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- xml ERROR3:" +e);
return returnStr;
}
catch(Exception e1){
returnStr="error";
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- xml ERROR4:" +e1);
return returnStr;
}
if(addFlag = true){
returnStr="0";
}else{
returnStr="1";
}
logger.info("CmnWalkInExtractOutPut ----- addXmlFile ----- end .");
return returnStr;
}
android bluetooth java层有哪些状态机?
根据google的API描述,Bluetooth 完成数据交换的四个主要的任务:
1、创建Bluetooth
2、找到本地区域可用的蓝牙设备或匹配的蓝牙设备
3、连接设备
4、传输数据。
曲靖java培训学校告诉你Java程序员常用的开发工具有哪些?
在当今的互联网时代中,Java语言越来越流行。关于Java的一些常用工具也需要我们不断的掌握和理解。下面曲靖java培训为大家介绍,Java程序员常用的开发工具有哪些。
一、ServiceLoader-加载服务
Java开发人员通常希望区分使用什么和创建什么,曲靖java课程培训机构发现通常是通过创建一个描述组件操作的接口和使用某种中介创建组件实例。
二、SCanner
无数的Java开发工具可以帮助您构建解析器,许多函数语言已经成功地构建解析器库(解析器选择器)。但是,如果您想解析逗号分隔的值文件或空格分隔的文本文件呢?曲靖java课程发现大多数工具都太大了,不能在这里使用,String.split()是不够的。
三、Timer
Java.util.Timer和TimerTask类提供了一种方便且相对简单的基于周期性或临时延迟执行任务的方法。
四、StAX-解析XML文件
当许多Java开发人员首次使用XML时,分析XML文件的基本方法有两种。曲靖曲靖IT培训认为SAX解析器实际上是一个大型状态机,程序员对事件调用一系列回调方法。DOM分析程序将整个XML文档添加到内存中,分离并分割成各个对象,并将它们连接起来形成树。
java 状态机模式 事件 状态 当前状态有多个下一状态
大多数的应用程序如果在开发时考虑采用两个以上线程,那么一般情况下是为每个线程分配了独立的功能,且这些功能能够逗并发地地执行。讲一个二楼同学说到的网络I/O例子:点对点的聊天工具,需要在我们编写信息的同时能够接受并打印出来对方说的话。
java状态机的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java状态机框架cola、java状态机的信息别忘了在本站进行查找喔。
发布于:2022-12-14,除非注明,否则均为
原创文章,转载请注明出处。