
eova
zerovpp
共享单车行业
展开
-
Eova&JFinal在阿里云K8S实现多环境自动化部署
JFinal&Eova在阿里云K8S实现多环境自动化部署原创 2022-04-03 21:13:47 · 1271 阅读 · 0 评论 -
baseUploadPath can not be blank解决办法
在用JFinal或EOVA时,经常会出现baseUploadPath can not be blank的问题,意思是加载不到相关配置config,沿着这个思路,检查:1、config或default文件夹是否加载到?在target/classes中找此文件夹,如下图:2、如果没找到,删除工程文件,重新打开工程,IDEA重建后就OK了要删除的文件夹有.idea和*.iml文件 :3、如果还没解决,看下config的static_root是否正确,或config文件是否正确;...原创 2022-03-16 15:31:55 · 472 阅读 · 0 评论 -
阿里云效自动化CI/CD构建找不到类 error in opening zip file
aliyun云效构建的坑,小心掉进去。原创 2021-12-07 16:51:05 · 409 阅读 · 0 评论 -
FullGC告警
查jstat -gc ip异常代码:Caused by: java.lang.OutOfMemoryError: GC overhead limit exceededSql: select * from eova_menu where code = ?12-11 11:16:15[ERROR]/single_grid/list/hr_cost_bud_menujava.lang...原创 2021-10-25 17:51:58 · 271 阅读 · 0 评论 -
eova(JFinal)项目一键式部署方法
Eova发展到今天已经非常成熟了,可以实现一键式部署,简单来说:1、用maven打包(mvn clean、mvn package);2、找到生成的xxx.zip到服务器相关文件夹下解压;3、运行部署命令(linux/mac):./eova.sh start如果提示:baseUploadPath can not be blank错误,则是配置文件不正确,检查下default文件下的app.config是否正确。...原创 2021-10-19 14:35:47 · 478 阅读 · 0 评论 -
Jfina 定时任务JOB重复执行问题,因为同一webapps下多实例原因
今天用户反馈,数据double了。 咦,这问题好久没报过了,怎么又如幽灵般出现了? 首先,查日志,发现在同一个时刻,同一个任务run了2条:几乎是同时start,同时end。找了同事一块查,一时无果。最后想起来,在前天部署服务时,tomcat/webapps/有2个实例,另一个备份用的实例忘记删除了,应该是这个原因。立即删除此备份实例,故障消...原创 2019-03-14 19:57:04 · 660 阅读 · 0 评论 -
用Runable多线程跑任务提升速度
之前在跑定时任务时,就单线程用for轮询,不仅慢,如果一个NPE还造成整个Task中断,用Runable就方便多了。 1、定义一个task类,作为调用一个线程 2、ExecutorService开启多个线程ExecutorService executorService = Executors.newFixedThreadPool(dates.size()...原创 2019-01-31 18:15:04 · 1034 阅读 · 0 评论 -
Jfinal Eova下提示“excel的文件格式和扩展名不匹配。文件可能已损坏或不安全”解决办法
近日在做一个项目时,某页面提示“**.xls的文件格式和扩展名不匹配。文件可能已损坏或不安全。除非您信任其来源,否则请勿打开。是否仍要打开它?”,如下图: 从提示判断,一定是系统在导出时发生了exception,导致导出失败,看后台日志,如下:意思是,某个只能为数字的列,结果有汉字字符,所以报RenderException,一查Mysql的表属性,如下:原...原创 2019-01-21 08:34:35 · 2964 阅读 · 0 评论 -
莫名字符造成导入失败
在前端正常输入后,个别字符却出现无法查询到的情况,如果有模糊查询却有,在后台sql查询也没有,一时找不着问题根源。前端查询显示正常后台却无数据 一筹莫展间,把前端数据下载一看,发现数据前面被插入了一个带?号的莫名字符,搜索空格或问号无果,表明此字符并不是空格或问号,将其删除后问题解决。 ...原创 2018-12-31 10:15:37 · 232 阅读 · 0 评论 -
一次提升45倍的Java优化之旅
之前写的一个业务服务,也就跨库的增查改,随着业务量在增加,慢到无法忍受的地步了,小2万的数据,竟然耗时3630s,一个多小时! 后来经过一番优化,实现了20倍的提升,且还有提升空间! 此番优化,主要集中在以下几个方面: 1、减少select语句,或将查询结果缓存起来; 2、能一次性insert的,不做多次update,之前是先将主要数据i...原创 2019-03-19 10:24:16 · 229 阅读 · 0 评论 -
JFinal 调用HttpKit通过URL获取其他网站的数据
日常服务,特别是企业大了,各种异构系统存在,需要相互之间进行交互,有直接查表的,最常见也最安全通过HTTP从接口获取数据或服务。 Jfinal通过URL获取其他系统数据,用HttpKit工具方法get或post,具体如下://GET方法public static String get(String url, Map<String, String> queryPa...原创 2019-05-27 18:48:25 · 2038 阅读 · 0 评论 -
JFinal 调用方法时报404 Action Not Found解决办法
在用JFinal 开发时,调用controller的方法时,有时会报404 Action not found错误,意思是没找到正确的方法,如下图:从报错信息来看,问题主要是:1、路径不对;2、方法未暴露出来;3、方法带参了,如 public void test (String a){.....}这种,对外调用的方法,参数一般是用this.getPara("xx"),而不...原创 2019-05-30 17:01:27 · 5755 阅读 · 3 评论 -
excel导出时报错 “文件格式和扩展名不匹配,文件可能已损坏或不安全”解决办法
近期在开发一个导出功能时,突然报“警告 ***文件格式和扩展名不匹配,文件可能已损坏或不安全。”的错误,如下图:从提示可看出,文件没有成功导出,损坏了。查下后台,报错如下:原来是列属性错了,重新设置成正确的列属性(double 改为 string )成功解决。...原创 2019-05-30 18:34:25 · 31908 阅读 · 1 评论 -
诡异Incorrect integer value 错误之解决:SQLException: Incorrect integer value: '**' for column '**'
症状:在导入数据时,报错:com.jfinal.plugin.activerecord.ActiveRecordException: java.sql.SQLException: Incorrect integer value: '**' for column 'type' at row 1 at com.jfinal.plugin.activerecord.DbPro.save(Db...原创 2019-06-26 16:56:10 · 12135 阅读 · 0 评论 -
按钮无响应,Uncaught TypeError:Cannot read property 'nodeType' of undefined问题的解决
场景:在主子表中的主表配置delete按钮(按钮JS中有少许业务逻辑),一直报错。报错:从报错图中看,是没有获取到对象节点,js代码如下:debug,将$grid = $('#grid') 改为$('#master_grid'),结果调用的还是$('#grid')!看来是调用出错了,根源在哪儿呢?同package下没有其他js文件了呀。后来无意发现onclick=...原创 2019-07-09 10:44:16 · 10685 阅读 · 0 评论 -
java.sql.SQLException: Incorrect Integer value:'****' for column 'subtype' at row 1 错误的解决
从字面可以看出插入数据库时的数据类型错误了,数据库需要的是Integer,而程序给出了一堆乱码,如下图:Debug代码,Excel导入时,数据load没问题:但从这儿跳转至Intercept时,直接报错,根本没被拦截,再一查,原来导入功能没有加载拦截方法,加上后解决。 关键点:从乱码中可分析出,字面的汉字没被translate成所需的Integer value,直接报错...原创 2019-01-04 16:41:28 · 5934 阅读 · 0 评论 -
easyui及eova下select:option、find无法直接取值的解决办法
无意中发现,easyUI及继承其的EOVA UI控制selected:option下拉框和find查找框,如果直接用下列方式,将无法取到正确的value:`$('#period').find("option").val()`解决办法:先将控件命名,再以命名后的取值,如: var $period = $('#period'); var v_period = $per...原创 2018-08-17 11:37:50 · 350 阅读 · 0 评论 -
Ajax URL多参数实现提交时的等待动画功能
需求:在提交时采用ajax的POST方法,并实现动画功能。1、URL多参的解决:URL请求时,带了几个参数,尝试"url?a="+a+"&b"+b时,发现稳定性不佳,经常丢失第2个参数,于是改为data:{key:value,key2:value2}的形式,完美解决。dataType: 'json',url: $url,data: {period: $('#period...原创 2018-08-06 17:52:09 · 1090 阅读 · 0 评论 -
eova开发几个低级问题
1、配置table时,将表名写错,结果方法始终无效,按钮也不成功。 2、url中,把方法名写错,一个大小写害得搞了好多天。 3、一个地方修改,相关联的却没修改,结果引起异常。原创 2017-10-31 15:30:49 · 1529 阅读 · 0 评论 -
升级过程中埋下的坑,日期 毫秒问题
在eova b4版本中,不支持将日期init为年月格式,于是大神给了方案,并删除了form.tag一段代码,然并卵,照样出错。而且造成所有新增、修改的日期都加了 .098 等毫秒数,没办法只好升级更新版本b5. 没想到b5重构更多 ,根本没办法用。又想到回滚b4,但根本找不到日期毫秒的错误点,于是只好找大神解决。最后 才发现是删除的那段代码出的问题,覆盖后就OK了。PS:...原创 2017-12-27 10:18:10 · 177 阅读 · 0 评论 -
try+if解决下拉框找不到值的异常 selectBY
联动更新,根据一级带出二级,在js中,当2者出现空值时,需要用try catch和if 把空值过滤掉。 如下:try { if (typeof ($operation_type) != "undefined" && typeof( $subtype) != "undefined") { if (ov !== "") {原创 2017-12-28 18:22:51 · 226 阅读 · 0 评论 -
将字符串年月yyyy-mm转为日期值date
在java中,用SimpleDateFormat可以将字符串转为日期date,且字符串可以任意组合,非常方便。//将年月转为日期 String s1 = str.substring(0,4); String s2 = str.substring(5,7); String s = (s1 + "-" + s2 + "-" + "15").toString(); Simpl原创 2017-12-28 18:26:46 · 5291 阅读 · 0 评论 -
Jfinal开发时,404常见几种问题及解决办法
报404错误时,有2种可能,一是html文件没找到,二是Action没找到,归结到底是路径不对,或路径对了,文件名或包名不符,特别注意,路径名大小写一定要一致!路径名大小写一定要一致!路径名大小写一定要一致! 1、先把Config,注意路由,如**.Controller.class/**Model.class,这是前提条件。 2、查看bs入JSon文件的Action路径是否对,查看原创 2018-01-06 23:11:18 · 7641 阅读 · 0 评论 -
EOVA_JFINAL实现分布式架构
整分布式 很很简单 只需解决 session 问题Jieven 13:34:361.Session Sticky2.Session Replication3.Session数据集中储存4.Cookie Based1&2 省事 不用动代码3 使用广泛根据各团队 情况 自己选择 最合适的方案具体 操作细节 自行百度一下> 一书中 有详细解说----原创 2018-01-08 13:37:16 · 1372 阅读 · 1 评论 -
EOVA增加biz service层方法
biz 与 View Ctrl无关相当于 就是一个 Uitl 你先做到一点 Controller 中 不要出现 Sql语句 Db. Model.持久化全部移入 biz层UserBiz OrderBiz ....只是多封装一层做完 你就会发现好处了工作量 也没增加太多然后在Controller写 private UserBiz user原创 2018-01-08 15:05:49 · 1223 阅读 · 0 评论 -
判断代码是否有change的方法
开发中细心特别重要!开发中细心特别重要!开发中细心特别重要!少说,上代码。public boolean isCityChange(Integer id, Integer city){ BudgetModel budgetModel; if(id == null){ budgetModel = this.findFirst("SELECT * FROM budget WHE原创 2018-01-19 16:45:52 · 448 阅读 · 0 评论 -
java jfinal 判断一个字符串是否包含另一个字符串
几经周折,终于搞定字符串包含判断问题,如'1,2,3,4,5'是否包含‘1’的问题,代码如下: 建个boolean的方法,以便复用:/** * 判断string(e.g:1,2,3,4)是否包含另一字符串(1) */public static boolean isContainsList(String citycode,String jurisdiction){ boole原创 2018-01-19 20:29:30 · 2014 阅读 · 0 评论 -
通过for each轮询,将子表相关数据写入对应主表
场景:父表有citycode字段,但其内容来自于子表,子表的数据量不确定,有可能为空,也有可能有N多行,鉴于系统已经运行有一定时间了,产生了一定的数据,需要将父表不同ID下的子表内容写入,用下列代码搞定:@Overrideprotected void process(JobExecutionContext context) { //轮询将子表city插入至父表原创 2018-01-30 15:05:32 · 354 阅读 · 0 评论 -
JAVA中String字符串删除指定字符的办法
场景: 有个字符串oldStr,内容为“a,b,c,d,e",想动态删除某个字符,或c或b。 解决办法: 1、转数组String[] arr = oldStr.split(",");ArrayList<String> m = new ArrayList<>();for (int i = 0; i < arr.length; i++) {//add进Arr...原创 2018-05-17 16:15:12 · 34681 阅读 · 0 评论 -
eova中日期框、查找框、下拉框取值方法
根据EOVA的公开教程,用$('#id').eovafind().getValue(),经实际测试,只适用于html中的初始值,一旦有change动作,就取不到。 经一番摸索,通过变量function可以完美解决。 1、前端控件: (以eovafind为例) <td style="margin-left: 1px;">城市:</td><td&...原创 2018-05-28 19:28:16 · 1973 阅读 · 0 评论 -
根据远程数据库值,加载selected项,并修改其option值
场景:在html的select下拉框中,选择不同的项,更新远程库中的值;打开html时,根据远程库的值,加载值所对应的项 环境:java/html/Jquery/ajax 1、前端: html:例如<select id="closed_account" class="dropdown" style="width:150px" name="closed_value"&...原创 2018-07-13 18:03:36 · 331 阅读 · 0 评论 -
Jfinal List<Record>中的key保持大小写不变(驼峰命名)的问题(未解决)
问题:后台处理前,所有字段名都是驼峰式命名,如Name/Id,但用List<Record> r查出数据,并renderJson(r)出来后,字段名全成了小写。如下图: 尝试解决方法: 1、写方法将list<Record> 转List<String,Object> 驼峰命名;2、Jfinal配置FastJson;结果均无效...原创 2018-08-09 15:07:59 · 2205 阅读 · 0 评论