前面有篇关于JEECG项目搭建的文章,这里继续原来的话题
2.:单表增删改查,生成代码生成器生成代码
2.1:如果单表有字段是外键,是不能直接生成代码的,直接自已手动改造一下生成的Entity,这一点不太方面
改造前:
改造后:
2.2:外键后取值“taste00Entity_tasteName”,可以取得到值,但是发现数据查询的时侯出1+N次的查询方式2.3:解决JEECG生成的List查询1+N次的方法
经过代码跟踪,发现最后做数据查询的类是org/jeecgframework/core/common/dao/impl/GenericBaseCommonDao.java。
查询数据列表的方法是org.hibernate.Criteria,Criteria里面的方法setFetchMode能够解决1+N次的查询问题,具体代码如下。
也将把这个代码上报给JEECG,也许在下个版本就会解决这个问题了
String[] fields = cq.getDataGrid().getField().split(",");
for (int i = 0; i < fields.length; i++) {
if (fields[i].indexOf("_") != -1) {
fields[i] = fields[i].substring(0, fields[i].indexOf("_"));// 外键字段引用名
//需要查询的关联对象
criteria.setFetchMode(fields[i], org.hibernate.FetchMode.JOIN);
}
}
2.4:关于代码器配置,可能造成整个系统架构的问题
jeecg_config.properties配置文件,里面的jeecg_filed_convert
查看了JEECG关于org.jeecgframework.tag-sources-3.3.2.jar里面的源码
上一个问题2.3取值XXX_XXX是跟据“_”利害反射原理进行取值的
如:jeecg_filed_convert=false,有一张表为XXX_XXX,那么取值的时侯就要这样写XXX_XXX_XXX,这样就取不到需要的值,甚至系统报错。
建议:jeecg_filed_convert=true不要去改,JEECG把这个配置取消掉
2.5:单页生成的时侯,查看数据报了这个错,JSONObject.fromObject(-->的时侯报的
Json串
{'total':4,'rows':[{'state':'closed','id':'1','employeeId':'999','tasteName':'温度','mutex':'1','disMode':'0','lastUpdate':'2013-05-19 15:05:24.0'},{'state':'closed','id':'2','employeeId':'999','tasteName':'甜度','mutex':'1','disMode':'0','lastUpdate':'2013-05-19 15:05:34.0'},{'state':'closed','id':'3','employeeId':'999','tasteName':'加料','mutex':'0','disMode':'0','lastUpdate':'2013-05-19 15:05:49.0'},{'state':'closed','id':'4','employeeId':'999','tasteName':'';\';\','mutex':'0','disMode':'0','lastUpdate':'2013-05-24 18:37:47.0'}]}
原因:'tasteName':'';\';\'里面包含了单引号,查看org.jeecgframework.tag-sources-3.3.2.jar里面的源码,JEECG对对象做了一次转换,将对象封装成字符串,再转成“JSONObject”。
建议:输入框校验不允许输入单引号
2.6:datagrid自定义标签对数据字典的引用
例如:dictionary="sex"
相关推荐
2. 平台优势与功能特点 JEECG快速开发平台以代码生成+手工MERGE的半智能开发模式,引领新的开发趋势。它通过在线编程、代码生成器和手工合并的方式,减少Java项目中的重复劳动,让开发人员更专注于业务逻辑的实现。 ...
博文链接提供了详细的Jeecg入门教程,涵盖了从安装到实战的全过程,是新手学习的好帮手。 10. **社区支持** Jeecg有一个活跃的社区,提供了大量的教程、问答和插件,遇到问题时可以在这里寻求帮助。同时,参与...
【视频教程】JEECG 入门视频教程大全+历史版本代码下载-附件资源
- **Jeecg入门视频**: 对于初学者来说,这是一个很好的学习资源,可以通过视频教程快速上手Jeecg。 - **Jeecg在线文档**: 包含了详细的文档,覆盖了Jeecg的所有特性,对于深入学习非常有帮助。 - **其他专题技术文档...
在了解JEECG-P3 Maven版本入门之前,我们先对JEECG以及Maven有所认识。JEECG是一个基于代码生成器的脚手架,提供了一套快速开发平台,能够快速搭建企业级的Web应用。Maven是一个项目管理和构建自动化工具,它使用...
JEECG的开发文档,里面包含JEECG JEasyPoi技术指南,JEECG Online表单对外接口v3.7,JEECG Online表单开发指南v3.7,JEECG UI标签文档v3.7,JEECG 开发入门环境搭建(Maven-eclipse)3.7,JEECG 开发指南v3.7,JEECG ...
- **官方文档**:Jeecg-Boot 提供详尽的官方文档,包括快速入门、实战教程、API参考等内容。 - **示例代码**:提供完整的示例工程,帮助开发者快速上手。 - **社区支持**:活跃的开发者社区,可以在这里提问、交流...
文档包括:JEECG 权限开发手册、jeecg_v3.7表结构说明、JEECG 开发指南v3.7、JEECG 开发入门环境搭建(Maven-eclipse)3.7、JEECG UI标签文档v3.7.1、JEECG Online表单开发指南v3.7、JEECG Online表单对外接口v3.7、...
3. **入门必读.txt**:这可能是Jeecg框架的快速入门教程,详细解释了如何开始使用Jeecg,包括环境配置、项目搭建等步骤。 4. **pom.xml**:这是Maven项目对象模型文件,用于定义项目的依赖、构建过程等。通过这个...
2. **在线报表设计**: 支持在线配置报表,生成各种复杂报表。 3. **在线图表设计**: 可以创建交互式的可视化图表。 4. **流程设计**: 使用工作流引擎实现业务流程自动化,支持任务接口自定义。 5. **大屏设计**: ...
2. **快速入门**:按照文档中的教程,通过创建第一个项目来熟悉Jeecg的基本操作。 3. **代码生成器的使用**:学习如何使用Jeecg的代码生成器自动生成模型、控制器、服务、DAO、前端页面等。 4. **表单设计**:实践...