- Liferay7 BPM门户开发之10: 通用流程实现从Servlet到Portlet(Part1)
昕友软件
开发目的:实现通用流程自动化处理(即实现不需要hardcode代码的bpm统一处理后台,仅需要写少量前端htmlform代码和拖拽设计BPM定义)既可独立运行或可依托于Liferay或依托其它门户系统(使用portlet规范技术实现)运行;先实现一个JSP+Servlet版的通用流程处理,将来迁移到Portlet迁移工作将保留大量的前后端代码,仅需要改动少量的注解。考虑到Liferay的客户端体系
- 微信 开发 聊天机器人设计方案 java语言 程序和数据库代码
wyx100
微信开发java语言聊天机器人设计方案和代码微信开发聊天机器人设计方案和代码java语言
转自:http://www.tuicool.com/articles/RBJfqyM使用Liferay和Lucene实现企业门户智能帮助机器人时间2015-04-3012:00:00IBMdeveloperWorks中国原文http://www.ibm.com/developerworks/cn/java/j-lo-LiferayLucene/index.html?ca=drs-企业门户智能帮助需
- liferay二次开发指南
iteye_4515
web.xml数据库java
liferay二次开发指南序...5第一部分LiferayPortal架构解析...6第一章LiferayPortal.6第一节Portal规范...61.1.1JSR168.61.1.2WSRP.6第二节什么是Portal71.2.1Portal服务器...71.2.2Portlet容器...7第三节什么是Portlet81.3.1Portlet81.3.2Portlet与Servlet的关系.
- 如何将ONLYOFFICE桌面编辑器连接到您的Seafile服务器
ONLYOFFICE
ONLYOFFICE教程学习
ONLYOFFICE桌面编辑器是免费开源的办公套件,包括文本文档、电子表格、演示文稿和表单编辑器。您可以离线编辑文件,而且,您也可以将应用程序连接到云端(ONLYOFFICE、Nextcloud、ownCloud、Seafile、kDrive、Liferay)进行在线文档协作。该软件包的源代码在GitHub上以AGPLv.3.0许可证提供。Seafile是开源的文件协作和共享平台,允许存储并管理文
- python3+selenium+BeautifulReport生成自动化测试报告
车陂IT仔
自动化测试,最重要的还是测试报告,下面就教大家使用BeautifulReport生成自动化测试报告GitHub:https://github.com/TesterlifeRaymond/BeautifulReport第一步:安装git1、下载地址:https://git-scm.com/downloads2、安装:按照默认安装就完事了3、环境配置:配置(Git安装目录)/Git/cmd完整路径到环
- python report_python3 BeautifulReport测试报告 及 报告中增加日志输出
msjhfu
pythonreport
原生的HTMLTestRunner很容易找到,偶尔又发现一个更炫酷一点的HTMLTestRunner_PY3,具体详见Githubhttps://github.com/huilansame/HTMLTestRunner_PY3BeautifulReporthttps://github.com/TesterlifeRaymond/BeautifulReportBeautifulReport报告展示中
- spring security验证流程
格物致理,
springsecuritySecuritySpringAccess配置管理Acegi
工作需要,又弄起了权限的管理。虽然很早以前都了解过基于容器的权限实现方式,但是一直都觉得那东西太简陋了。后来使用liferay时发现它的权限系统的确做得很优秀,感觉这也可能是它做得最出色的地方吧。但是当时只停留在怎么使用及一些与其衔接的关系之上,并没有对其底层进行了解,新到现在的公司后,发现这一课还是得补上。但是令人惊讶的是,目前可用的选择并不多,甚至很少,最有名的当属springsecurity
- vulhub漏洞复现37_Liferay
Revenge_scan
java开发语言后端安全web安全
CVE-2020-7961_LiferayPortalCE反序列化命令执行漏洞漏洞详情LiferayPortalCE是一款用来快速构建网站的开源系统。其7.2.0GA1及以前的版本API接口中存在一处反序列化漏洞,利用该漏洞可在目标服务器上执行任意命令。漏洞环境靶场:192.168.4.10_ubuntu执行如下命令启动LiferayPortal7.2.0GA1:#docker-composeup
- Liferay安装Portlet出现“这一应用没有可配置的Plugin”的解决方法
ElementABC
我们项目在Liferay上面安装Portlet的时候出现了“这一应用没有可配置的Plugin”的问题,经过几个同事的反复操作都出现了相同问题,最后经过测试,发现问题出在了JDK的版本问题上。如果出现以上问题,请尝试核对Portlet的JDK版本和服务器使用的JDK版本是否一致。
- Jmeter的性能测试
robot_test_boy
在众多类型的软件测试中,性能测试以软件响应速度为测试目标,尤其是在较短时间内大量并发用户的访问时,软件是否具有良好的抗压能力。本章以JMeter为性能测试工具,LifeRay为被测应用,介绍如何完成常用的压力测试和性能测试:Web测试和数据库测试。ApacheJMeter是个纯Java的应用程序,提供了可扩展自定义脚本功能,用于对静态的和动态的资源(静态文件、Servlet、Java对象、数据库和
- unittest篇6-生成测试报告(BeautifulReport)
拉菲学测试
unittestpythonunittest
前言上一篇博客,我们介绍了如果跳过某些测试用例,或者当满足某些条件时,跳过或者执行一些测试用例。我们今天一起来学习一下执行完测试,我们是不是需要有一封漂亮的测试报告呢?我们可以使用BeautifulReport模块。1、BeautifulReport安装1.1可以通过github上进行下载1、地址:https://github.com/TesterlifeRaymond/BeautifulRepo
- 新型恶意软件曝光!利用 Linux 漏洞进行僵尸网络攻击
芒果果
linux漏洞僵尸网络
恶意软件利用了最近披露的在Linux系统上运行的网络连接存储(NAS)设备中的漏洞,将计算机加入IRC僵尸网络,以发起分布式拒绝服务(DDoS),攻击并挖掘Monero加密货币。根据CheckPointResearch发布的分析报告显示,这些攻击利用了LaminasProject(以前的ZendFramework)和LiferayPortal修复的关键缺陷,以及TerraMaster未修补的安全漏
- 新型恶意软件曝光!利用 Linux 漏洞进行僵尸网络攻击
芒果果
linux漏洞僵尸网络
恶意软件利用了最近披露的在Linux系统上运行的网络连接存储(NAS)设备中的漏洞,将计算机加入IRC僵尸网络,以发起分布式拒绝服务(DDoS),攻击并挖掘Monero加密货币。根据CheckPointResearch发布的分析报告显示,这些攻击利用了LaminasProject(以前的ZendFramework)和LiferayPortal修复的关键缺陷,以及TerraMaster未修补的安全漏
- 由mysql8降级到mysql5
stray
mysql
最近在研究liferay的使用。liferay可以连接mysql数据库。电脑中装的mysql的最新版本是mysql8。于是开始按照liferay的要求进行连接。但是多番尝试后,均报错:java.sql.SQLException:java.lang.ClassCastException:java.math.BigIntegercannotbecasttojava.lang.Long。询问了一下高人,
- Oracle-blob转字符串遇到中文乱码的问题
PriestM
数据库
项目中最近遇到个比较头疼的问题,因为使用了Liferay平台,使用封装后的hql查询导致取不出来数据库中的blob字段,无奈之下只好换个思路:直接在数据库这边先把blob字段转成字符串但脚本执行后发现,转出来的竟然是乱码。。最头疼的就是各种编码不同导致的乱码问题了,搜了搜,刚好看到一篇帖子讨论这个问题,研究了下之后终于能转成正常的中文了,可以用两种写法:selectconvert(UTL_RAW.
- JDK NEW TOOLS——jps、jinfo、jstat、jmap、jconsole
roland101
JAVA
最近压力测试和调优Liferayportal,所以需要找到一种工具,可以比较好的监测VM工具。本来想使用商用工具,但偶然间发现SUN的JDK中新添了几个工具,并且非常好用。秉承着有免费,不用商用的原则。开始使用新的JDK工具,以下简单介绍一下这几种工具。(注:本文章下的所有工具都存在JDK5.0以上版本的工具集里,同javac一样,不须特意安装)我一共找到以下五个工具:jinfo:可以输出并修改运
- [javac] Annotation processing got disabled, since it requires a 1.6 compliant JVM
时光老去我们也不散去
Liferay
对Liferay进行build-service时出现如下错误:[javac]Annotationprocessinggotdisabled,sinceitrequiresa1.6compliantJVM(本人使用jdk1.8liferay6.2)点击:·http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/dro
- 关于liferay启动界面(在浏览器里录入http://localhost:8080后打开的界面)的定制
ross
liferay研究
搞了有8天的liferay研究,今天终于有了一点进展,在网上搜索的关于界面定制的全部均是要修改portal-impl.jar里的portal.porterties的对应节点的值或新建一个portal-ext.porterties,在里面写对应的节点及节点值然后放在web-inf/classes目录(portal-ext.porterties里的节点会覆盖portal.porterties相同的节点
- License介绍
hanzy88
温故知新系列
原文:http://www.liferay.com/zh/community/forums/-/message_boards/message/4775410什么是License许多混乱就始于你不知道License到底是什么,到底有什么含义。当你对你的产品使用License时,并不意味着你放弃了任何权利,你依然对其拥有原著作权。License只是授予他们于特定权利来使用你的产品。License只是把
- Portal产品对比分析报告
w5q7c3
集成
目录1概述2Portal相关产品介绍2.1商业Portal2.1.1Beaweblogicportal2.1.2IBMwebsphereportal2.1.3Oracleportal2.1.4SunJavaSystemPortalServer2.2主要开源Portal2.2.1JetSpeed和JetSpeed22.2.2Liferay2.2.3Pluto2.2.4JPortal2.2.5Stri
- 根据功能页面查找其对应的jsp源文件的方法
yue2008
liferay6.0.6
本范例以控制面板的用户管理功能为例来说明如何找到对应的jsp源文件:1、从浏览器地址栏中取得p_p_id参数值,该参数值是portlet名称2、到portlet-custom.xml文件找到portlet-name等于p_p_id参数值的portlet配置信息,从配置信息取得view-action路径125EnterpriseAdminUserscom.liferay.portlet.Struts
- liferay二次开发指南
m_yeah
liferay
文档说明参与人员:作者网名联络柯自聪
[email protected](技术)
[email protected](版权)发布记录:版本日期作者说明1.02005-10-20柯自聪创建,第一版链接:类别网址Bloghttp://www.blogjava.net/eamoi/MSN-Spacehttp://spaces.msn.com/members/eamoi/OpenDoc
- sourceforge无法访问,另辟蹊径下载sourceforge中的项目代码
gxhwq
昨天晚上想下载一个Liferay的插件,sourceforge半天打不开,后来上网查了一下,有两个说法:一是中国电信把sourceforge封了,另外的说法是sourceforge服务器在作迁移,不知道哪个是真假。但是我还是很想下载那插件啊,况且我也不能没有sourceforge啊,得想个办法,搜了一下有两个办法:一个是使用VPN代理,使用国外的代理,另外是从镜像下载。我觉得第二个要来得方便,其中
- liferay portal + nginx 公告、留言板或者文档中心添加完成后,不会返回上一页面的解决方法
jxlmz
按常规配置nginx后,比如公告、留言板或者文档中心添加完成后,不会返回上一页面。经测试,不用nginx没问题。要更改portal-ext.properties,如果换成域名,也要有配置。#InputablanklisttoallowanyIPredirect.url.ips.allowed=#Setthispropertytoipordomainfortheredirectsecuriytmot
- Liferay Portal CE 6.2 Portlet 配置(Configuration) 开发
jxlmz
liferayportal
Portlet配置(Configuration)开发应用场景:比如左侧菜单树,每个一级会有一个节点图标,我们通过配置,可以随时更新图标。所以图票取自文档库。Portlet.xml配置leftmenuv2leftmenuv2com.yixin.LeftMenuv2.LeftMenuV2view-template/html/leftmenuv2/view.jspconfig-template/html
- liferay Portal CE6.2 新开发portlet如何设置权限(Security and Permission resources )
jxlmz
liferayportal
在你新建的PORTLET工程Src下加入:resource-actions/default.xmlportlet.propertiesdefault.xml:portlet-nameADDPUBLISHDELETEADDVIEWVIEWADDPUBLISHportlet-nameADDPUBLISHDELETEADDVIEWVIEWADDPUBLISHportlet.properties:incl
- maven dependency中scope=compile 和 provided区别
路越
Maven
转自:http://supercharles888.blog.51cto.com/609344/981316问题再现:上次这边朋友问我一个问题,就是他们在pom.xml中的dependency中,看到有一些是provided的情况,比如如下:com.liferay.portalportal-impl6.1.0provided他们问我scope在何种情况下要设置为provided,以及和scope设
- Liferay安装中文指南-windows
zhuseahui
杂谈
Liferay安装中文指南-windowsChinese:快速安装指南标记:安装部署安装liferay5.0liferayv5.1liferay5.2目录[-+]1Prerrequisites1.1Java1.2WebBrowser2Windows3Linux和MacOSX4NextSteps5InstallingGlassFishfromaJARfile6学习和获得更多支持本指南的目的是提供指示
- 搭建liferay-portal6.0.6
zhangtb7881
javaee
首先在http://sourceforge.net/projects/lportal/files/下载3个文件liferay-portal-tomcat-6.0.6-20110225.zipliferay-portal-src-6.0.6-20110225.zipeclipse_Liferay_IDE_v201102281651-win32.zip1.新建文件夹portal.2.从liferay-
- Liferay 6.0??
smilingleo
Portalui
Liferay的release周期还真的挺长的,按照他们自己的说法,好像是一年一次,不过这次似乎特别的长。不过这么长的时间liferay开发团队也没有闲着,从每天代码更新的数量就可以看得出来。原来一直以为他们是要发布5.3,可种种迹象表明,从5.2.3之后,应该会直接发布6.0.因为变化确实是比较大的,尤其是从UI上来说,应该是全部用Liferay自己创立的开源AlloyUI重写所有的page,这
- 对于规范和实现,你会混淆吗?
yangshangchuan
HotSpot
昨晚和朋友聊天,喝了点咖啡,由于我经常喝茶,很长时间没喝咖啡了,所以失眠了,于是起床读JVM规范,读完后在朋友圈发了一条信息:
JVM Run-Time Data Areas:The Java Virtual Machine defines various run-time data areas that are used during execution of a program. So
- android 网络
百合不是茶
网络
android的网络编程和java的一样没什么好分析的都是一些死的照着写就可以了,所以记录下来 方便查找 , 服务器使用的是TomCat
服务器代码; servlet的使用需要在xml中注册
package servlet;
import java.io.IOException;
import java.util.Arr
- [读书笔记]读法拉第传
comsci
读书笔记
1831年的时候,一年可以赚到1000英镑的人..应该很少的...
要成为一个科学家,没有足够的资金支持,很多实验都无法完成
但是当钱赚够了以后....就不能够一直在商业和市场中徘徊......
- 随机数的产生
沐刃青蛟
随机数
c++中阐述随机数的方法有两种:
一是产生假随机数(不管操作多少次,所产生的数都不会改变)
这类随机数是使用了默认的种子值产生的,所以每次都是一样的。
//默认种子
for (int i = 0; i < 5; i++)
{
cout<<
- PHP检测函数所在的文件名
IT独行者
PHP函数
很简单的功能,用到PHP中的反射机制,具体使用的是ReflectionFunction类,可以获取指定函数所在PHP脚本中的具体位置。 创建引用脚本。
代码:
[php]
view plain
copy
// Filename: functions.php
<?php&nbs
- 银行各系统功能简介
文强chu
金融
银行各系统功能简介 业务系统 核心业务系统 业务功能包括:总账管理、卡系统管理、客户信息管理、额度控管、存款、贷款、资金业务、国际结算、支付结算、对外接口等 清分清算系统 以清算日期为准,将账务类交易、非账务类交易的手续费、代理费、网络服务费等相关费用,按费用类型计算应收、应付金额,经过清算人员确认后上送核心系统完成结算的过程 国际结算系
- Python学习1(pip django 安装以及第一个project)
小桔子
pythondjangopip
最近开始学习python,要安装个pip的工具。听说这个工具很强大,安装了它,在安装第三方工具的话so easy!然后也下载了,按照别人给的教程开始安装,奶奶的怎么也安装不上!
第一步:官方下载pip-1.5.6.tar.gz, https://pypi.python.org/pypi/pip easy!
第二部:解压这个压缩文件,会看到一个setup.p
- php 数组
aichenglong
PHP排序数组循环多维数组
1 php中的创建数组
$product = array('tires','oil','spark');//array()实际上是语言结构而不 是函数
2 如果需要创建一个升序的排列的数字保存在一个数组中,可以使用range()函数来自动创建数组
$numbers=range(1,10)//1 2 3 4 5 6 7 8 9 10
$numbers=range(1,10,
- 安装python2.7
AILIKES
python
安装python2.7
1、下载可从 http://www.python.org/进行下载#wget https://www.python.org/ftp/python/2.7.10/Python-2.7.10.tgz
2、复制解压
#mkdir -p /opt/usr/python
#cp /opt/soft/Python-2
- java异常的处理探讨
百合不是茶
JAVA异常
//java异常
/*
1,了解java 中的异常处理机制,有三种操作
a,声明异常
b,抛出异常
c,捕获异常
2,学会使用try-catch-finally来处理异常
3,学会如何声明异常和抛出异常
4,学会创建自己的异常
*/
//2,学会使用try-catch-finally来处理异常
- getElementsByName实例
bijian1013
element
实例1:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/x
- 探索JUnit4扩展:Runner
bijian1013
java单元测试JUnit
参加敏捷培训时,教练提到Junit4的Runner和Rule,于是特上网查一下,发现很多都讲的太理论,或者是举的例子实在是太牵强。多搜索了几下,搜索到两篇我觉得写的非常好的文章。
文章地址:http://www.blogjava.net/jiangshachina/archive/20
- [MongoDB学习笔记二]MongoDB副本集
bit1129
mongodb
1. 副本集的特性
1)一台主服务器(Primary),多台从服务器(Secondary)
2)Primary挂了之后,从服务器自动完成从它们之中选举一台服务器作为主服务器,继续工作,这就解决了单点故障,因此,在这种情况下,MongoDB集群能够继续工作
3)挂了的主服务器恢复到集群中只能以Secondary服务器的角色加入进来
2
- 【Spark八十一】Hive in the spark assembly
bit1129
assembly
Spark SQL supports most commonly used features of HiveQL. However, different HiveQL statements are executed in different manners:
1. DDL statements (e.g. CREATE TABLE, DROP TABLE, etc.)
- Nginx问题定位之监控进程异常退出
ronin47
nginx在运行过程中是否稳定,是否有异常退出过?这里总结几项平时会用到的小技巧。
1. 在error.log中查看是否有signal项,如果有,看看signal是多少。
比如,这是一个异常退出的情况:
$grep signal error.log
2012/12/24 16:39:56 [alert] 13661#0: worker process 13666 exited on s
- No grammar constraints (DTD or XML schema).....两种解决方法
byalias
xml
方法一:常用方法 关闭XML验证
工具栏:windows => preferences => xml => xml files => validation => Indicate when no grammar is specified:选择Ignore即可。
方法二:(个人推荐)
添加 内容如下
<?xml version=
- Netty源码学习-DefaultChannelPipeline
bylijinnan
netty
package com.ljn.channel;
/**
* ChannelPipeline采用的是Intercepting Filter 模式
* 但由于用到两个双向链表和内部类,这个模式看起来不是那么明显,需要仔细查看调用过程才发现
*
* 下面对ChannelPipeline作一个模拟,只模拟关键代码:
*/
public class Pipeline {
- MYSQL数据库常用备份及恢复语句
chicony
mysql
备份MySQL数据库的命令,可以加选不同的参数选项来实现不同格式的要求。
mysqldump -h主机 -u用户名 -p密码 数据库名 > 文件
备份MySQL数据库为带删除表的格式,能够让该备份覆盖已有数据库而不需要手动删除原有数据库。
mysqldump -–add-drop-table -uusername -ppassword databasename > ba
- 小白谈谈云计算--基于Google三大论文
CrazyMizzz
Google云计算GFS
之前在没有接触到云计算之前,只是对云计算有一点点模糊的概念,觉得这是一个很高大上的东西,似乎离我们大一的还很远。后来有机会上了一节云计算的普及课程吧,并且在之前的一周里拜读了谷歌三大论文。不敢说理解,至少囫囵吞枣啃下了一大堆看不明白的理论。现在就简单聊聊我对于云计算的了解。
我先说说GFS
&n
- hadoop 平衡空间设置方法
daizj
hadoopbalancer
在hdfs-site.xml中增加设置balance的带宽,默认只有1M:
<property>
<name>dfs.balance.bandwidthPerSec</name>
<value>10485760</value>
<description&g
- Eclipse程序员要掌握的常用快捷键
dcj3sjt126com
编程
判断一个人的编程水平,就看他用键盘多,还是鼠标多。用键盘一是为了输入代码(当然了,也包括注释),再有就是熟练使用快捷键。 曾有人在豆瓣评
《卓有成效的程序员》:“人有多大懒,才有多大闲”。之前我整理了一个
程序员图书列表,目的也就是通过读书,让程序员变懒。 程序员作为特殊的群体,有的人可以这么懒,懒到事情都交给机器去做,而有的人又可以那么勤奋,每天都孜孜不倦得
- Android学习之路
dcj3sjt126com
Android学习
转自:http://blog.csdn.net/ryantang03/article/details/6901459
以前有J2EE基础,接触JAVA也有两三年的时间了,上手Android并不困难,思维上稍微转变一下就可以很快适应。以前做的都是WEB项目,现今体验移动终端项目,让我越来越觉得移动互联网应用是未来的主宰。
下面说说我学习Android的感受,我学Android首先是看MARS的视
- java 遍历Map的四种方法
eksliang
javaHashMapjava 遍历Map的四种方法
转载请出自出处:
http://eksliang.iteye.com/blog/2059996
package com.ickes;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
/**
* 遍历Map的四种方式
- 【精典】数据库相关相关
gengzg
数据库
package C3P0;
import java.sql.Connection;
import java.sql.SQLException;
import java.beans.PropertyVetoException;
import com.mchange.v2.c3p0.ComboPooledDataSource;
public class DBPool{
- 自动补全
huyana_town
自动补全
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml&quo
- jquery在线预览PDF文件,打开PDF文件
天梯梦
jquery
最主要的是使用到了一个jquery的插件jquery.media.js,使用这个插件就很容易实现了。
核心代码
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.
- ViewPager刷新单个页面的方法
lovelease
androidviewpagertag刷新
使用ViewPager做滑动切换图片的效果时,如果图片是从网络下载的,那么再子线程中下载完图片时我们会使用handler通知UI线程,然后UI线程就可以调用mViewPager.getAdapter().notifyDataSetChanged()进行页面的刷新,但是viewpager不同于listview,你会发现单纯的调用notifyDataSetChanged()并不能刷新页面
- 利用按位取反(~)从复合枚举值里清除枚举值
草料场
enum
以 C# 中的 System.Drawing.FontStyle 为例。
如果需要同时有多种效果,
如:“粗体”和“下划线”的效果,可以用按位或(|)
FontStyle style = FontStyle.Bold | FontStyle.Underline;
如果需要去除 style 里的某一种效果,
- Linux系统新手学习的11点建议
刘星宇
编程工作linux脚本
随着Linux应用的扩展许多朋友开始接触Linux,根据学习Windwos的经验往往有一些茫然的感觉:不知从何处开始学起。这里介绍学习Linux的一些建议。
一、从基础开始:常常有些朋友在Linux论坛问一些问题,不过,其中大多数的问题都是很基础的。例如:为什么我使用一个命令的时候,系统告诉我找不到该目录,我要如何限制使用者的权限等问题,这些问题其实都不是很难的,只要了解了 Linu
- hibernate dao层应用之HibernateDaoSupport二次封装
wangzhezichuan
DAOHibernate
/**
* <p>方法描述:sql语句查询 返回List<Class> </p>
* <p>方法备注: Class 只能是自定义类 </p>
* @param calzz
* @param sql
* @return
* <p>创建人:王川</p>
* <p>创建时间:Jul