package zqz;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData;
import org.w3c.dom.*;
import sun.misc.BASE64Decoder;
import sun.misc.BASE64Encoder;
import com.primeton.tp.common.xml.XmlUtil;
import com.primeton.tp.core.api.BizContext;
/**
* @author qzzha
* @version 1.0
* @date 2012-11-6
* @class_displayName EosBizletApplication
* 学习普元EOS简单运算逻辑的编写
*/
public class EosBizletApplication {
/*
* 根据SQL查询数据库,返回LIST类型数据集合,类似于普元自带构建 BL_runFormatSql
* 主要学习内容:熟悉普元运算逻辑;获取属性;设置属性;怎样返回查询结果
*
*/
public static int BL_queryFromDb(Document doc, BizContext param)
throws Exception {
Node listNode = (Node) param.getParaObjectAt(0);
String sql = (String) param.getParaObjectAt(1);
// Entity节点名称使用type属性值,没有则使用"entity"
NamedNodeMap attrs = listNode.getAttributes();
String entity = "";
if (attrs.getNamedItem("type") != null) {
entity = attrs.getNamedItem("type").getNodeValue();
}
if (entity == null || "".equals(entity)) {
entity = "entity";
}
// entity
Element entityNode = null;
// filed
Element filedNode = null;
PreparedStatement ps = null;
ResultSet rs = null;
Connection conn = null;
// 获取连接
conn = param.getDBBroker().getConnection();
ps = conn.prepareStatement(sql);
rs = ps.executeQuery();
// 获取元数据
ResultSetMetaData rsdd = rs.getMetaData();
int count = rsdd.getColumnCount();
int rows = 0;
while (rs.next()) {
entityNode = doc.createElement(entity);
// 设置rowNum属性值 第几条记录
entityNode.setAttribute("rowNum", "" + rows);
for (int i = 1; i <= count; i++) {
// 创建以查询列名命名的元素
filedNode = doc.createElement(rsdd.getColumnName(i));
// 增加文本元素
filedNode.appendChild(doc.createTextNode(rs.getString(rsdd
.getColumnName(i))));
entityNode.appendChild(filedNode);
}
listNode.appendChild(entityNode);
rows++;
}
// 设置rowNum属性值 总记录条数
((Element) listNode).setAttribute("rowNum", "" + rows);
return 1;
}
/*
* 字符串处理应用 字符串处理之后返回
*/
public static int BL_GetAffixURL(Document doc, BizContext param)
throws Exception {
Node param0 = (Node) param.getParaObjectAt(0);
String fileName = (String) param.getParaObjectAt(1);
String filePath = (String) param.getParaObjectAt(2);
// 加密,集团ITSM规定URL不能有中文
fileName = encryptBASE64(fileName);
filePath = encryptBASE64(filePath);
// ip
String url = "http://ip:9080/jt_itsm/pageFile/fileDown2.jsp?filename="
+ fileName + "&path=" + filePath;
XmlUtil.setNodeValue(param0, url);
return 1;
}
/**
* * BASE64加密 * *
*
* @param key *
* @return *
* @throws Exception
*/
public static String encryptBASE64(String s) throws Exception {
byte[] key = s.getBytes();
return (new BASE64Encoder()).encodeBuffer(key);
}
/**
* * BASE64解密 * *
*
* @param key *
* @return *
* @throws Exception
*/
public static String decryptBASE64(String key) throws Exception {
byte[] b = (new BASE64Decoder()).decodeBuffer(key);
return new String(b);
}
}
分享到:
相关推荐
在普元Primeton EOS运算逻辑中获取HttpSession和Httprequest以及application 在普元Primeton EOS运算逻辑中获取HttpSession和Httprequest以及application
**EOS - 普元企业服务总线** EOS(Enterprise Service Bus),由普元公司...通过学习"EOS概览",开发者不仅能深入了解普元EOS的功能特性,还能掌握实际开发中的技巧和最佳实践,为构建高效、稳定的SOA体系奠定基础。
普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册,普元EOS开发帮助手册
**普元EOS nuiDemo示例详解** 普元EOS是一款基于Java的企业级应用开发平台,它为开发者提供了丰富的组件和工具,便于快速构建企业信息系统。nui是EOS的一个重要组成部分,专注于用户界面的设计与实现,提供了强大的...
3. **前端集成**:在前端代码中,根据选用的跨域技术(JSONP或CORS),编写相应的请求逻辑。如果是JSONP,需要定义回调函数;如果是CORS,通常只需要发起请求即可,由服务器处理跨域问题。 4. **测试验证**:最后,...
普元eos的帮助文档详细介绍了如何安装使用普元前端开发框架NUI,它是普元eos的前端技术组件,可以帮助开发者快速构建Web界面,提高开发效率,减少代码编写量。本篇文章将从普元eos帮助文档的内容出发,提取出以下几...
"普元EOS 实例Demo -- Primeton NUI Demo" 是一个专为初学者设计的教程,旨在帮助用户快速上手普元EOS平台的使用。普元EOS,全称为Primeton Enterprise Service Oriented Operating System,是一个面向服务的企业级...
**普元EOS7.5基础教程(官网版)** 普元EOS是一款国内知名的中间件平台,专注于企业级服务总线(Enterprise Service Bus, ESB)和应用服务器领域。EOS7.5版本是其一个重要的迭代,提供了更强大的功能和优化的性能。本...
### 普元EOS Platform 7.5 开发手册知识点概览 #### 一、NUIDemo使用与实践 **1.1 执行SQL脚本** - **知识点概述:** - 在开始学习NUI控件之前,首先需要了解如何执行SQL脚本,这是进行后续开发的基础。 - SQL...
综上所述,《EOS5.0 EOSV5.0 上海 普元 EOS5.0应用指南》详细介绍了普元EOS5.0的PetStore示例和tag应用示例的具体使用方法。通过这些示例,用户不仅能够了解EOS的基本功能,还能学习如何有效地使用该平台来开发高...
普元EOS操作文档.pdf 普元EOS操作文档.pdf是 Primeton EOS 开发环境的详细使用手册,该文档涵盖了 EOS 开发环境的配置、开发、调试等各个方面的知识点。 EOS初级程序员教程 Primeton EOS 是一个功能强大且灵活的...
【普元EOS培训资料】是一套专为初学者设计的学习资源,它包含了全面且深入的EOS相关知识,确保用户在完成学习后能够熟练掌握并应用普元EOS平台。这套资料来源于普元公司内部,因此其专业性和实用性得到了充分保证。 ...
**普元EOS程序员培训教程** 本教程专注于介绍普元EOS平台,这是一款强大的企业级服务总线(ESB)和应用程序服务器,专为Java开发者设计,用于构建、部署和管理企业级应用程序。普元EOS提供了丰富的功能,包括服务化...
普元EOS7.6安装步骤涉及多个方面,包括对不同操作系统、不同版本的软件以及不同安装方式的详细指导。以下是对该文件中提到的知识点的详细说明。 ### 1. 概述 普元EOSPlatform7.6是一款企业级软件开发与运行平台,它...
### 普元EOS-Platform-7.0基础开发教程知识点详析 #### 一、产品概述 **1.1 产品简介** 普元EOS Platform 7.0是一款基于J2EE、Eclipse等开放技术和平台的产品,它通过配置化、组件化、图形化和一体化的方式,为...
【普元EOS工作流教程】是一份针对普元EOS平台工作流功能的详细学习资料,旨在帮助用户快速理解和掌握如何在EOS系统中设计、实施和管理工作流程。这份教程覆盖了从基础概念到高级应用的各种知识点,对于想要提升在...
**普元EOS学习PPT详解** 普元EOS是一款企业级的中间件平台,它提供了全面的服务治理、服务集成以及业务流程管理等功能,帮助企业构建灵活、高效的服务化架构。本篇内容将围绕“普元EOS学习PPT”展开,深入探讨其...
【普元EOS培训示例源码1】是一个针对普元EOS平台的开发学习资源,包含了多个关键组件和示例代码,旨在帮助用户更好地理解和运用EOS系统。普元EOS(Enterprise Open Service)是一款企业级服务开发与运行平台,它提供...
【上海普元EOS6.0程序员教程】是针对软件开发者设计的一份详尽教程,旨在帮助读者理解并掌握面向服务架构(SOA)的核心理念,以及如何利用普元EOS这一全球领先的SOA应用平台进行实际开发。教程不仅理论与实践相结合...