失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > JEECG 新手常见问题大全 入门必读

JEECG 新手常见问题大全 入门必读

时间:2021-01-28 16:58:19

相关推荐

JEECG 新手常见问题大全 入门必读

大家还有什么问题,请跟帖,谢谢支持。。

JEECG常见问题大全

原文地址:/RvYsEF6

1. jeecg数据库脚本问题

注意:jeecg3.5.2之前版本,不需要数据库脚本,程序会自动初始化数据库。从3.5.2+开始,需要手工执行SQL脚本,初始化数据库。

2. Eclipse内存溢出

-6-27 15:29:21 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler process

严重: Error reading request, ignored

java.lang.OutOfMemoryError: PermGen space

解决方案: 配置下maven启动jdk内存-DMAVEN_OPTS=-Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxPermSize=256M复制代码

2.1 Tomcat内存溢出

-6-27 15:29:21 org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler process

严重: Error reading request, ignored

java.lang.OutOfMemoryError: PermGen space

解决方案:

3. JEECG官方maven镜像配置方法

/forum.php?m ... 3949&extra=page%3D1

4. 代码生成器配置问题

代码生成器目前分两种:GUI和onlinecoding在线web方式(推荐)

方式一:GUI工具类

src/main/java/test/JeecgOneGUI.java (单表)

/src/main/java/test/JeecgOneToMainUtil.java(一对表)

方式二:Online对接代码生成器

onlinecoding代码生成器菜单:onlinecoding-->表单配置

代码生成器配置文件:

a.数据库配置src/main/resources/jeecg/jeecg_database.properties(代码生成器和项目的数据库配置是分开的)

b.代码生成器相关配置文件src/main/resources/jeecg/jeecg_config.properties(比如代码生成根路径)

详细请参看文档《JEECG 开发指南》第7节代码生成器专题

特别注意参数:

代码生成器是单独的数据库配置文件,而且database_name参数必须配置,否则提示错误

5.代码生成后,项目启动,提示找不到对应的control,需要spring扫描配置(entity、service、controller)

/forum.php?mod=viewthread&tid=1832&extra=

注意:如何不配置,会出现空指针错误。

6. 表单自定义按钮问题

jeecg表单弹出采用的技术是lhgdialog,技术链接:/

目前添加和修改的方法是写的通用的,都在src/main/webapp/plug-in/tools/curdtools.js里面

所以看不到js方法,如果用户想定义模仿里面的写法即可,可以任意扩展按钮$.dialog({

content: 'url:'+addurl,

lock : true,

//zIndex:1990,

width:width,

height:height,

title:title,

opacity : 0.3,

cache:false,

ok: function(){

iframe = this.iframe.contentWindow;

saveObj();

return false;

},

cancelVal: '关闭',

cancel: true /*为true等价于function(){}*/

})复制代码6.列表自定义查询条件问题

jeecg默认生成的查询条件,布局如果满足不了需求可以自定义查询条件

说明:命名规则按照datarid的name进行命名,参考下面规则,js方法会自动生成

参考代码:src/main/webapp/webpage/system/user/userList2.jsp

参考demo如下:

7. maven环境配置问题

jeecg官方采用了oschina的中央仓库,如果是jar下载问题的话,可以下载我们已经打包好的本地maven仓库

下载地址:/jeecg/jeecg-local-maven

oschina仓库配置:/help.html

maven学习视频和资料下:链接:/s/1jGmP9EA密码: j4jt

8. 二级三级联动问题

一级联动例子参考:常见示例-原生态组件-联动下拉省市区

9. jeecg_v3.6按钮权限和数据权限教程

注意admin拥有超级权限,换其他号测试;

如果是采用标签的datagrid页面,自定义按钮权限控制是有效的;

如果未采用标签的列表页面,想使用按钮权限的话,需要在页面引用下标签,在页面底部写如下代码<t:authFilter></t:authFilter>复制代码注意:权限测试,不要用admin,admin有超级权限,不受权限控制。

[1]. JEECG 简单实例讲解权限控制/zhangdaiscott/article/details/50233453

[2]. 简单实例讲解JEECG ONLINE表单权限控制/zhangdaiscott/article/details/50381050

10. 上传word模板报错问题

onlinecoding上传word模板采用的是组件jacob,该组件需要在window系统下,而且需要做对应的配置,如果你是linux系统,请采用fck编辑器,将word内容复制进去;

详细参考文档《JEECG Online Coding开发手册》

/s/1iCkb

11. 工作流咨询问题

工作流版本为商业版,只对公司用户提供。社区提供了JEECG集成工作流学习版本(供大家学习):

/forum.php?m ... 1800&extra=page%3D1

12. 如何让请求,排除权限拦截

配置文件: src/main/resources/spring-mvc.xml

14. minidao使用问题

/share/link?uk=2668473880&shareid=337844502

15. 文档视频下载

/forum.php?m ... ge=1&extra=#pid3642

16.jeecg上传文件组件其他方案

/forum.php?mod=viewthread&tid=935&extra=

17.如果屏蔽定时任务

修改配置文件:src/main/resources/spring-mvc-timeTask.xml

注释掉:

18.项目启动,提示initLinster监听找不到

a. 错误截图:

b.排查下问题 确认下:resource没在classpath里面

c. 解决方案:通过eclipse clean下项目,生成class

19.eclipse卡,可以关闭validation

20.jeecg_v3.6定时任务使用文档

/zhangdaiscott/article/details/50903499

/pages/viewpage.action?pageId=1376468

21. jeecg用hibernate效率会不会低?有没有mybatis

解答: jeecg有自己的轻量级持久层封装框架 minidao,类似mybatis写sql,建议复杂业务逻辑采用minidao来实现

22.默认首页风格切换方法

/zhangdaiscott/article/details/51177823

23.文件在线预览不好用

回复:jeecg在线文档预览采用OpenOffice,所以需要本地安装【Apache_OpenOffice_incubating_3.4.0_Win_x86_install_zh-CN.exe】,并且需要修改配置文件,设置openoffice安装路径

24.多数据源使用文档

/forum.php?mod=viewthread&tid=2328

25.jeecg的parent引用报错【jeecg-p3-pom】

解决方法: 这个依赖在jeecg的maven私服上面,通过执行install 或者下载命令,就可以通过私服下载来,不需要额外配置。

很多朋友maven不熟悉,请大家一定按照以下截图配置好maven参数

26.JEECG兼容那些浏览器,是否兼容IE?

jeecg兼容所有的浏览器 IE、谷歌、火狐等浏览器都支持。

jeecg的首页和登录页面分很多套:登录页面有三套,首页有5套

五套首页IE支持情况,菜单三级支持情况列表:

27. 最新版本(3.6.4)登录后首页乱码

解决办法:

1.浏览器兼容问题,建议谷歌浏览器

2. 底层jar是旧的,更新jeecg maven依赖,特别是snapshot类型的,更新后会解决该问题,如果不熟悉maven可以下载官方提供本地仓库/jeecg/jeecg-local-maven

28.jeecg的数据表 必须得有id这个字段么?

不是,jeecg的实体必须是id,数据库主键通过注解与实体映射即可。

29.切换数据库类型,比如从mysql改成oracle需要注意修改位置

平台DB配置文件:src/main/resources/dbconfig.properties

代码生成器配置文件:src/main/resources/jeecg/jeecg_database.properties

minidao配置修改:src/main/resources/spring-minidao.xml

30.jeecg中ckfinder的使用

链接地址:/article ... qq-pf-to=pcqq.group

31.jeecg webservice如何使用?

jeecg集成cxf 配置文件:src/main/resources/cxf-servlet.xml

客户端测试代码:src/main/java/org/jeecgframework/web/demo/ws/test/JeecgWServiceClient.java

请求示例:http://localhost:8080/jeecg/cxf/JeecgWService

32. jeecg依赖都已经上传jeecg官方maven私服,如果有下载不来,请按照下面操作,从私服下载

适合项目: jeecg 、jeewx、jeecg-p3

注意:构造红色三个,snapshot是更新snapshot-jar,jeecg官方会实时更新依赖。

第一个不要构中,钩中的话,maven依赖不会下载。

33. 菜单设置 “访问类型”,左侧菜单不显示?

说明: 访问类型 ,是用于数据权限使用,不作为菜单展示使用。

34. jeecg 与 jeecg-p3区别?

/forum.php?mod=viewthread&tid=3581&extra=page%3D1

34. jeecg如何集成websocket?

35.jeecg最新版本文档下载地址

/forum.php?mod=viewthread&tid=3370&extra=

36. 如何改造列表查询微模糊查询?

注意:目前列表查询是全匹配查询,需要模糊查询的话,是在输入框的内容前后加*,例如按照“名字”迷糊查询: *张三*

为什么这么设计?因为如果系统默认全按照模糊查询,数据量大的情况会导致系统很慢,所以模仿SAP的这种规则模式。

如果用户需要默认模糊查询,可以自行改造hql查询过滤器

37. 实现自动默认模糊查询方法

/zhangdaiscott/article/details/74980298

38.jeecg 与 jeecg-p3区别?

/forum.php?mod=viewthread&tid=3581&extra=page%3D1

39.maven依赖下载慢,下载不来怎么办?

方式一:提供maven下载速率方法

/forum.php?mod=viewthread&tid=3949

方式二:下载官方提供的maven本地仓库,直接覆盖本地

/jeecg/jeecg-local-maven

40. SQLSERVER支持问题?

常见问题:

解决方案:(替换下驱动包)

41. jeecg restful请求如何访问?

control的请求需要加上“rest/”前缀,例如:

42.jeewx与jeecg区别?

jeecg是快速开发平台,jeewx是在jeecg 3.4.2版本上开发的微信管家系统。

43.jeecg 在线聊天功能如何配置?

/zhangdaiscott/article/details/52351494

44.JEECG默认查询是单表,怎么实现两张表关联查询啊

案例:有一张人员表和部门表,因为人员表只有部门的ID,怎么让查询结果显示部门名字

方案一: 通过针对分页查询的结果集,进行循环处理处理(拓展字段)

this.gzUserInfoYwService.getDataGridReturn(cq, true);

List<GzUserInfoYw> gzUserInfoList = dataGrid.getResults();

Map<String,Map<String,Object>> extMap = new HashMap<String, Map<String,Object>>();

for(GzUserInfoYw temp:gzUserInfoList){

//此为针对原来的行数据,拓展的新字段

Map m = new HashMap();

m.put("departmentName", "财务部");

m.put("orgName", "组织机构名称");

extMap.put(temp.getId(), m);

}

TagUtil.datagrid(response, dataGrid,extMap);复制代码JSP页面用法(跟实体字段一样):

方案二:直接采用minidao(类mybatis)写原生态SQL实现多表关联查询,案例参考: jeecg常用示例->Minidao列表

45.online表单,默认模板设置

src/main/java/org/jeecgframework/web/cgform/util/TemplateUtil.java

属性: public static final String TEMPLET_CODE_DEFAULT = "default";

//Online默认样式:default(easyui)

// Online默认样式:ledefault(ace)

46. jeecg上传附件简易方案

/forum.php?mod=viewthread&tid=935&extra=page%3D1

47.jeecg 上传组件,打开很慢问题解决

fileTypeExts包含zip,rar 就会延迟打开,建议不限制 fileTypeExts

原因看文章:/q/1010000007501929/a-1020000007546108

48. 项目Maven启动报错

The argument does not represent an annotation type: ContextConfiguration

解决方案(需修改两点):

50. 在页面当中打开一个新的tab页面 ,弹出窗口,提示消息等通用JS都在文件

curdtool*.js (分中文和英文)

路径: src/main/webapp/plug-in/tools/curdtools_zh-cn.js

51.弹出窗口增加按钮重写plug-in/tools/curdtools_zh-cn.js文件中createdetailwindow方法(重命名),复制重写的方法到对应的 *-list文件中,修改录入、修改、查看或者删除方法的调用方法名为重写的方法

弹窗组件API 参考网址 /复制代码52.获取当前登录用户信息TSUser user = ResourceUtil.getSessionUserName();复制代码53. 获取当前日期String date= DateUtils.date2Str(new Date(), DateUtils.date_sdf);复制代码54.rest风格请求地址调用方法例如:

查询list :http://localhost:8080/系统名称/rest/tZzxtDictionaryController/

查询1条数据:http://localhost:8080/系统名称/rest/tZzxtDictionaryController/{id}

其他方法去对应的controller里面找复制代码55. 判断非空,转换string To int 等方法在工具类org.jeecgframework.core.util.oConvertUtils复制代码56. 给列表单元格加背景色<t:dgCol title="任务类型"field="type" align="center" extendParams="'styler':fmtype;" query="true" queryMode="single"width="100"></t:dgCol>复制代码extendParams属性添加js方法,然后再调用方法function fmtype(val,row,index){

var s1 = 'background-color: #f89406;;border-radius: 5px;color:#fff;';

var s2 = 'background-color: #3a87ad;border-radius: 5px;color:#fff';

if (val =='W') {

return s1

}

if (val =='J') {

return s2

}

}复制代码57.上传控件不好用问题(谷歌浏览器(Chrome)遇到Flash崩溃的处理办法)

Upload(上传标签)采用flash方式,不同的浏览器对flash支持不同,会出现上传有问题,建议重装flash组件

/zhangdaiscott/article/details/43585049

60. validform校验规则选择3情况下,弹出提示框在IE下跑偏问题

问题效果:

解决方法:

在对应的jsp页面头部加上:<!DOCTYPE html>复制代码就可以解决这个问题。

61.Online二次开发,JS增强实现POPUP的返回多赋值

/zhangdaiscott/article/details/72639785

62.Jeecg 如何执行批量insert或者update操作,高效率

方法:org.mon.dao.jdbc.SimpleJdbcTemplate.batchUpdate

原理: 基于springjdbc封装,批量提交

相关博客:/kiwi_coder/article/details/12749325

63.如何去掉在线聊天功能?

修改页面src/main/webapp/webpage/main/hplus_main.jsp,删掉引用<%@includefile="/context/layui.jsp"%>

64.列表字段过多情况下,实现左右拖动效果,参数设置

修改列表<t:datagrid ,设置参数, fitColumns="false"

65.表单时间控件,带.0处理方案

赋值的时候,格式化<fmt:formatDate value='${jeecgDemoPage.birthday}' type="date" pattern="yyyy-MM-dd"/>

66. jeecg 图标样式IE兼容性问题

jeecg 3.7版本以后,提供两套图标设置防范

easyui风格

Font Awesome风格

67. 代码生成的时候说表名不存在问题?

代码生成器数据库配置文件: src/main/resources/jeecg/jeecg_database.properties

注意: database_name 必须跟数据库名一致。

另外: 请注意数据库不要区分大小写(Linux下mysql,区分大小写,会导致有问题),

因为jeecg默认用大写的表名去读取表结构信息。

68.jeecg部署weblogic 修改配置方法

/zhangdaiscott/article/details/73277955

69.老的上传标签upload, 默认转换文档openoffice,如何控制不转换?

通过参数 swfpath, 转换SWF(不设值则不转换)

70.jeecg如何定位对应的Controller类

通过谷歌浏览器,F12进入调试模式,访问页面查看请求,通过请求去定位。 jeecg的类都是命名规范,通过快捷键Ctrl+Shift+R 可以快速定位

80.maven 转非maven项目常见错误

org.apache.jasper.JasperException: /webpage/login/login.jsp(3,0) Unable to read TLD "META-INF/c.tld" from JAR file

解决方案:把jsp-api.jar和servlet-api.jar从my web-inf/lib里删掉。

81.JEECG 页面多个用户选择器只显示最后一个

/u014361679/article/details/76209047

82.JEECG 页面字典控件与Popup使用

/zhangdaiscott/article/details/72639785

83.JEECG新版集群定时任务使用方法

/aini3884/ ... af5d3fd14d775bfee85

84.如何提升优化jeecg web访问效率,解决easyui访问慢问题

/zhangdaiscott/article/details/77509517

/zhangdaiscott/article/details/77509555

/zhangdaiscott/article/details/30035805

85. plug-in-ui位置,在底层插件 jar中

位置:86.前端性能优化知识,包括css和js

/zhangdaiscott/article/details/74344519

87.代码生成器提示表在数据库中不存在?

注意,数据库是否区分大小写

/forum.php?m ... 3052&extra=page%3D1

88.IE8下 DIV风格美化方案

方案不足: 不兼容I8兼容模式,会导致提交不了。

修改文件:src/main/webapp/plug-in/Validform/css/divfrom.css

增加属性:position:relative;

z-index:2;

behavior:url(plug-in/diy/htc/PIE.htc);复制代码89. jeecg开发模式和发布模式如何切换?

修改配置文件: src/main/resources/sysConfig.properties

参数:

#DEV(开发模式)/PUB(生产模式)

sqlReadMode=PUB

90. JEECG_3.7.1 列表多表头的用法

/zhangdaiscott/article/details/77988776

91. JEECG 非maven版本下载地址

链接:/s/1kVMKWuF密码:b8kf

92. 弹出框不能放大了,问题原因

问题原因: 因为myeclipse版里面有个codelive导致的

93. 代码已经生成了但是我修改了生成的代码页面请求没有任何变化

回答:这个问题是因为, online的表单访问地址和代码生成后的地址是不一样的,代码生成后,应该修改访问地址,不应该还用online的访问地址;

另外采用online方式配置的权限,代码生成后需要重新配置,规则变了。

94.【开发工具】 JEECG_3.7新版开发工具

/zhangdaiscott/article/details/78072438

95.t:formvalid中定义callback函数如果dialog="true"的话 callback="@Override functionName" 调用的是当前页面的方法 callback="functionName" 调用的是父页面的方法如果dialog="false" callback="functionName" 调用的是当前页面的方法

96、自定义弹框的大小 <t:dgToolBar title="common.add.param" width="20%" height="30%" operationCode="addOptButton"langArg="common.user" icon="icon-add" url="userController.do?addorupdate" funname="add"></t:dgToolBar>

97. online一对多结构,附表数据大于256条时报错 java.lang.IndexOutOfBoundsException: Index: 256, Size: 256 /topics/390511418/

有两个地方一个是 BaseController 中一个是MyWebBinding binder.setAutoGrowCollectionLimit(Integer.MAX_VALUE);

98、关闭session//-------------关闭hibernate Session-------------------------------SessionFactory sessionFactory = (SessionFactory) ApplicationContextUtil.getContext().getBean("sessionFactory");Session session = sessionFactory.getCurrentSession();session.close();//-------------关闭hibernate Session-------------------------------

99.jeecg中如何调用存储过程?

方案: 采用springjdbc调用存储过程

参考:/zjw10wei321/article/details/44151751

100.启动报启动Velocity失败

首先clean下项目,尝试重启看是否成功

如果不成功采用以下方案尝试

101. 启动不正常,卡住不动了

可能是ehcache端口冲突问题,去修改下src/main/resources/ehcache.xml配置文件

将截图红框部分注释掉,重启试试

技巧一:

//清理垃圾菜单权限配置

delete fromt_s_role_function wherefunctionid not in(select id from t_s_function)

技巧二:

在线聊天工具配置文件:

1. websocket配置:

src/main/webapp/plug-in/layim/config.js

修改IP和项目访问地址

2. 必须使用tomat7以上

技巧三:切换my97皮肤方法

修改My97DatePicker/WdatePicker.js文件参数skin:"green" ,标准风格default

技巧四: 切换列表风格{easyui,jqgrid}

org.jeecgframework.tag.core.easyui.DataGridTag.style

技巧五: 拦截排除注解JAuth的使用--@JAuth(auth=Permission.SKIP_AUTH)

在controller上添加表示该类下所有请求直接通过url拦截器

在方法上添加则表示只有该方法的请求直接通过url拦截器

auth值若不配置或配置成auth=Permission.NORMAL则表示走默认逻辑

技术六:权限拦截支持请求URL(目前支持带一个参数,但格式有要求,不能带等号)

loginController.do?login

loginController.do

不支持模式:

loginController.do?name=2

如果有特殊的需要通过参数控制,可以换个请求方式,例如:

cgFormBuildController/ftlForm/{Online表单名}/goDetail.do?id={?}

技巧七:jeecg的排序可以用列表的sort属性,也可以cq.addOrder("userName", SortDirection.desc);编码方式,

编码方式优先于标签的,在排序前面。

技巧八:jeecg对外接口文档

http://localhost:8080/jeecg/swagger/index.html

101.jeecg 默认字段值是如何注入的?

通过hibernate拦截器 org.jeecgframework.core.aop.HiberAspect

102. jeecg Error was Port already in use: 40001解决办法

/zhangdaiscott/article/details/78731387

103. jeecg_3.7.1版本用户添加不上问题

/forum.php?m ... 4764&extra=page%3D3

104.配置权限时报undefind

/forum.php?m ... 4855&extra=page%3D1

105.列表标签datagrid的自定义JS方法如何传递参数

/forum.php?m ... 4879&extra=page%3D1

106.jeecg通过hibernate查询的实体,设置实体字段值会自动更新数据库问题

原因:jeecg采用了hibernate的缓存机制,所以会自动更新数据库。

如何不更新数据库,关闭hibernate 的session关闭session

//-------------关闭hibernate Session-------------------------------

SessionFactory sessionFactory = (SessionFactory) ApplicationContextUtil.getContext().getBean("sessionFactory");

Session session = sessionFactory.getCurrentSession();

session.close();

//-------------关闭hibernate Session-------------------------------复制代码107. JEECG 行编辑示例源码

/forum.php?m ... 4951&extra=page%3D1

108.JEECG_3.7.1分页报错问题解决

/forum.php?mod=viewthread&tid=4968&extra=

109.minidao条件like写法<#if ( employee.name )?? && employee.name ?length gt 0>

/* 雇员名 */

and e.NAMElike CONCAT('%', :employee.name ,'%')

</#if>复制代码110.jeeccg 数据列表,如何扩展个性化效果

通过标签参数 formatterjs

代码参考:<t:dgCol title="头像"field="touxiang" queryMode="group"formatterjs="<font color="#ff0000">statusFmt</font>" width="60"></t:dgCol>复制代码function <font color="#ff0000">statusFmt</font>(value, row, index){

if (value != null && value != '')

return '<span style="color:green;font-size: 16px;">✔</span>';

return '<span style="color:red;font-size: 16px;">x</span>';

}复制代码效果:

-1-18 19:42 上传下载附件(35.7 KB)

实践帖子:/forum.php?m ... 5004&extra=page%3D1

111.列表标签exp表达式用法

[1]、支持exp有多个值 比如statein(1,4,5,6,8)

语法:status#eq#N,Y多个以逗号隔开

[2]、判断空

空判断:status#empty#true非空false

关注JEECG官方公众号获取更多信息

如果觉得《JEECG 新手常见问题大全 入门必读》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。