tomcat默认连接池DBCP替换为druid

代码片段 <Context processTlds="false" docBase="../../runtime/BusinessServer" path="/BusinessServer" reloadable="false" workDir="work"> <Manager className="org.apache.catalina.session.PersistentManager" saveOnRestart="false" maxActiveSessions="-1" minIdleSwap="-1" maxIdleSwap="-1" maxIdleBackup="-1" > <Store className="org.apache.catalina.session.FileStore" directory="seskep"/> </Manager> <Resource name="system" auth="Container" type="javax.sql.DataSource" factory="com.alibaba.druid.pool.DruidDataSourceFactory" url="jdbc:jtds:sqlserver://localhost:1433/Sys" username="sa" password="sa" maxActive="50" maxWait="30000" removeAbandoned="true" removeAbandonedTimeout="60" logAbandoned="true"/> </Context> 本文由WeX5君整理,WeX5一款开源免费的html5开发工具,H5 App开发就用WeX5! [...]

自定义icons的设置

介绍: 现在基于css font-face的字体图标越来越流行。 这种图标具有矢量图的特点,可以不失真的自由缩放,还可以通过css来设置图标的颜色,还有就是网络上资源特别丰富。X5系统自带了数百个字体图标, 用户还可以通过配置使用自己下载的字体图标, 下边就介绍一下具体的使用方法。 首先以fortawesome 网站为例(网址:http://fortawesome.github.io/Font-Awesome/) 打开fortawesome首页, 下载资源,解压缩到X5系统目录 model/UI2/(your dir)下, 解压后目录结构是这样的: 然后修改font-awesome.css文件名为fa.icons.css, 如果你希望使用压缩的文件, 就把font-awesome.min.css 文件名改为fa.icons.css。 然后在功能中window组件上右键,增加css资源,在选择器中选择fa.icons.css文件,完成后在组件树上会增加resource/require节点。如下图。 现在icons资源已经引入好了,可以在组件中使用字体图标了, 比如打开button的icon属性选择器, 在下拉列表中就会多一个fa选项,切换到这一条就可以选择fortawesome的字体图标了。 在功能运行的时候,X5系统会自动加载fa.icons.css 问题解答: 为什么需要修改css文件名,以及修改的规则? X5系统需要分析css文件中包含哪些字体的class, 需要知道icon class 的前缀,然后才能把它们找出来。我们约定xxx.icons.css的xxx为class前缀标识。以fortawesome字体库为例,它的字体图标 class 都是以fa开头的,如fa-user;fa-cog等,所以文件名就改为了fa.icons.css。 如果期望选择一个图标后返回两个class, 必须保证这两个class的前缀一致, 例如: glyphicon glyphicon-asterisk 本文由WeX5君整理,WeX5一款开源免费的html5开发工具,H5 App开发就用WeX5! [...]

Android和IOS的本地App如何安装(apk&ipa)

Android APK Android的apk安装比较简单,首先需要到系统设置的“安全”里面把“允许安装未知来源的应用”这个选项选上。 假设Studio中Native下有一个MyApp的本地应用,在dist目录下已经生成MyApp.apk。 有几种方法安装: 在生成App后的下载页面有一个二维码,本质是一个文件的链接地址,可以使用UC这样自带扫描二维码的浏览器扫描并点击安装就可以。前提是安装设备的无线网络需要和APP所在的PC在同一个局域网内。 用数据线把手机连接到电脑,把手机设置为U盘模式,把MyApp.apk复制到手机的存储卡里面,再通过手机的文件管理工具点击MyApp.apk进行安装。 用数据线把手机连接到电脑,打开手机的调试模式,可以用XX助手这样PC辅助工具安装。 如果安装了Android的调试环境adb,用数据线把手机连接到电脑,打开手机的调试模式,通过adb install MyApp.apk 的方式进行安装,注意adb和MyApp.apk的路径(XX助手本质也是用这种方式安装)。 IOS IPA ipa的安装要复杂一点。IOS 的ipa包分为两种,开发证书打的开发测试ipa包和发布证书打的正式发布ipa包。无论是299美元的企业帐号还是99美元的个人/公司帐号都可以生成开发证书和发布证书,用于打开发测试ipa包和正式发布ipa包。(深入了解苹果证书的区别) 开发证书打的开发测试ipa包安装有以下条件: 只能安装在苹果帐号里添加过UDID的设备上。因此必须在苹果帐号里添加开发测试的设备信息,即苹果设备的UDID(开发帐号里最多可以添加100个,企业帐号里不限添加数量)。UDID是苹果设备的标识符,可以说是苹果手机的身份证号码,是唯一的。如何获取UDID     添加UDID界面如下: 在生成应用的开发证书时,把需要安装该应用ipa包的设备添加到Provisioning Profile(配置文件)里。添加应用可安装设备界面如下: 下面介绍开发证书打的开发测试ipa包的安装方法。假设Studio中Native下有一个MyApp的本地应用,在dist目录下已经生成MyApp.ipa。 有以下几种方法安装: 同Android的第一种方法类似,可以通过iOS版本的UC浏览器扫描二维码,但要注意,默认下载后是无法安装ipa的,可以安装一个叫“同步推”的工具,这样UC下载ipa后使用“同步推”打开ipa就可以安装了。 在PC上安装iTunes,并用数据线连接手机,ipa用iTunes打开,在iTunes中点击自己的手机后在“应用程序”页面会列出ipa,把ipa拖动到右边的页面,并点右下角的“同步”即可安装。 发布证书打的正式发布ipa包安装有以下条件: 如果是299美元企业帐号生成的发布证书打的正式发布ipa,用于企业内部分发,因此对安装设备没有任何限制。注意:企业发布证书是不能发布到苹果市场的。 如果是99美元个人/公司帐号生成的发布证书打的正式发布ipa,可用于上传到Appstore苹果市场进行发布。注意:Provisioning Profile(配置文件)生成时需要选择App store模式。这种模式下生成的ipak只能通过Appstore下载安装,下面介绍的安装方法不适用。 选择App store模式界面如下图: 下面介绍299美元企业帐号生成的发布证书打的正式发布ipa的安装方法。假设Studio中Native下有一个MyApp的本地应用,在dist目录下已经生成MyApp.ipa。 有以下几种方法安装: 同Android的第一种方法类似,可以通过iOS版本的UC浏览器扫描二维码,但要注意,默认下载后是无法安装ipa的,可以安装一个叫“同步推”的工具,这样UC下载ipa后使用“同步推”打开ipa就可以安装了。 [...]

表格组件(dataTables & grid)

X5中提供了dataTables和grid组件。它们都可以分页显示数据、可以使用CSS控制样式、可以排序、可以显示页脚汇总。grid还可以直接编辑、可以分组,可以显示树形数据。 目录 1、组件展示 2、整体功能 2.1、显示数据 2.2、设置编辑 2.3、显示行号 2.4、设置多列头 2.5、设置分组 2.6、设置页脚汇总 2.7、控制显示 2.8、显示树形 2.9、刷新 2.10、动态创建 3、列的功能 3.1、显示列、隐藏列 3.2、设置列的前端过滤 3.3、设置列的排序 3.4、列的格式化显示 3.5、列内容对齐 3.6、设置可调整列宽 4、行的功能 4.1、设置行高、前景色、背景色 4.2、设置奇偶行的背景色 4.3、设置选中行的背景色 4.4、设置鼠标悬停行的背景色 4.5、行的多选 5、单元格的功能 5.1、设置单元格的前景色、背景色 5.2、合并单元格 5.3、显示按钮、链接 5.4、显示图片 5.5、使用文本框编辑 5.6、使用下拉框编辑 6、说明 [...]

WeX5 JS代码调试

本文介绍在WeX5中如何调试js代码 目录 1、调试js代码 1.1、调试自己写的代码 1.2、调试系统的代码 1.3、chrome浏览器开发者工具的使用   1、调试js代码 在js代码中加入debugger;,在打开chrome浏览器的开发者工具的情况下,执行到这个debugger;代码,浏览器就会停下来,此时,就进入调试了,可以单步执行,可以查看变量值,可以查看调用堆栈。 1.1、 调试自己写的代码 第一步:在js代码中加debugger; 例如:要调试外卖案例中加入购物车按钮的单击事件 打开/UI2/takeout/index.w文件,选中加入购物车按钮,在事件编辑器中,双击onClick事件值addCartBtnClick,此时设计器切换到js页,并且定位到了这个方法。 Model.prototype.addCartBtnClick = function(event) { debugger; var row = event.bindingContext.$object; var cartData = this.comp("cartData"); if (cartData.find(['fFoodID'], [row.val('fID')]).length === 0) { cartData.newData({ [...]

BeX5 V3.1版本和V2.7版本在开发上的区别

本文适合熟悉V2.7版本开发,准备使用V3.1版本开发的开发者。 BeX5 V3.1版本推出了新一代的界面模型——UI2,这里包括全新的组件、模块化的js,所有这些和V2.7版本的UI在使用上有了一些不同,本文从js、组件、新增特性、java四个方面列举了一些不同之处。  一、js相关 (一)、引用js 1、5.3版本——写在js文件中 引用的写法 例如:引用UI2/OA/personalOffice/js/pub.js文件 var OA = require("$UI/OA/personalOffice/js/pub"); 调用pub.js文件中的js方法 OA.calcLeaveDayHour(map.days); 2、5.2版本——写在w文件中   (二)、引用css 1、5.3版本——写在js文件中 引用的写法 例如:引用UI2/OA/config/pub.css文件 require("css!$UI/OA/config/pub").load(); 2、5.2版本——写在w文件中   (三)、在js文件中定义全局变量 1、5.3版本——定义实例变量 var Model = function() { this.callParent(); //在这下面定义变量,这里定义的是实例变量 this.openTaskStatus; }; [...]

组件基础

X5的界面是由组件构成的,组件是一个可以以图形化方式显示在屏幕上,并能与用户进行交互的对象。组件是对数据和方法的封装,有自己的属性、事件和方法等。本文从组件的创建、属性、方法、操作、事件、样式、API、调试等方面介绍组件的使用。 目录 1、由组件构成的界面 2、组件的创建 2.1、设计时摆放组件 2.2、动态创建组件 3、组件的属性 3.1、使用设计器设置 3.2、使用表达式配置 3.3、使用js代码修改 4、组件的方法 4.1、公共方法 4.2、私有方法 5、组件的操作 6、组件的事件 6.1、on开头的事件(回调型事件) 6.2、bind开头的事件(标准的dom事件) 7、组件的样式 7.1、自定义组件样式 7.2、修改系统样式 7.3、引用样式文件 8、组件的API 9、组件的调试 9.1、调试样式 9.2、调试js代码 1、由组件构成的界面 2、组件的创建 2.1、设计时摆放组件 选择合适的组件摆放到合适的位置 调整组件的位置的两种方法 简单组件在设计器中拖动,红线的位置就是目标位置 复杂组件在左侧组件树中拖动,黑线的位置就是目标位置,根据黑线不同的长短,可以将选中的组件拖动到任意的地方 上图表示将formGroup3移动到formGroup2的上方,也就是调换了formGroup2和formGroup3的位置 上图表示将formGroup3移动到formGroup1的col12节点下,也就是col12下面会有两个节点了,一个是原来的fWPBM,另一个是新移动过来的formGroup3 注:移动的位置不对,可以按Ctrl+Z撤销 [...]

WeX5 & BeX5 页面框架核心之数据绑定

视频地址:http://pan.baidu.com/s/1hqlBoC8 目录 1、引言:《外卖》案例的代码不完整吗??? 2、概述 2.1、WeX5页面组成 2.2、数据绑定 3、规则表达式 3.1、数据规则 3.2、环境变量 3.3、上下文对象 3.4、ref、val和label的区别 4、绑定表达式 4.1、概述 4.2、绑定表达式的环境变量和上下文对象 4.3、特殊的ref绑定(bind-ref、bind-labelRef、bind-extRef) 4.4、数据相关的绑定表达式(bind-value、bind-checked、bind-text) 4.5、状态相关的绑定表达式(bind-visible、bind-enabled、bind-disabled、bind-hasFocus) 4.6、样式相关的绑定表达式(bind-style、bind-css) 4.7、其他HTML属性的绑定表达式(bind-attr-src、bind-attr-href、bind-attr-title、bind-attr-xxx) 4.8、HTML片段相关的绑定表达式(bind-if、binf-ifnot、bind-with、bind-foreach) 4.9、其他绑定表达式(bind-html、bind-uniqueName) 5、List组件的过滤表达式 6、表达式中使用JS对象和函数 附录、表达式环境变量及上下文对象一览表 1、引言:《外卖》案例的代码不完整吗??? WeX5自带了一个经典的《外卖》案例,实现了常见的购物车需求。但是初学者在第一次去看它的源码时,会发现它的JS代码是“不完整的”。JS代码中只有一些核心的与数据操作相关的代码片段,很多页面上的动态计算和显示都找不到相应的代码实现。 那么这些动态计算和显示是如何实现的呢?不需要写代码吗?仔细观察相关组件的属性定义,会发现它们原来都是通过一些支持表达式定义的属性来实现的。这就是现在要给大家介绍的WeX5的数据绑定了。数据绑定让很多原本需要大量的事件监控和代码编程才能完成的数据运算、规则校验和动态显示等页面逻辑,现在通过简单的表达式定义就可以轻松实现了。 购物车中菜品增加后,下面的购物车按钮会自动变成黄色,并显示项目数  购物车中菜品数量改变时,合计金额会自动计算 购物车中所有菜品数量为零时,下单按钮会自动禁用 2、概述 2.1、WeX5页面组成 首先,我们来看一下WeX5的页面组成。WeX5的页面主要由数据(Data)、视图(View)和代码(Code)三个部分组成,体现了数据与视图分离、页面描述与代码逻辑分离的核心设计思想。 数据部分包含若干个数据组件,是整个页面的数据核心; 视图部分包含布局组件、显示组件和编辑组件等各种视图组件,构成用户交互界面; [...]