SAP Commerce(Hybris)开发实战(一)
本文通过介绍Hybris数据的导出导入,来本地模拟线上数据;以及利用Groovy脚本执行Hybris的Spring容器中的bean方法。方便了Hybris项目的本地开发。
目录
本地造数据
1、进入backoffice,选择脚本生成器
2、直接点击生成,自动生成脚本:
3、点击验证,验证成功后,点击保存,生成对应的impex媒介文件:
4、双击媒介,下载文件
5、进入hac导出指定model数据
6、Impex导入到本地系统
7、自定义导出内容
Groovy单元测试
本地造数据
在开发过程中,通常会需要复现线上数据的场景。
通常的情况是直接去服务区,把指定环境的数据库直接下载到本地,可以实现完全模拟。
但是如果遇到别的情况,例如权限管控,数据量过大,就需要用到数据的精确导入。
1、进入backoffice,选择脚本生成器
2、直接点击生成,自动生成脚本:
3、点击验证,验证成功后,点击保存,生成对应的impex媒介文件:
4、双击媒介,下载文件
这里注意,由于下载后是bin文件,不好解压缩,可以直接复制上一步的脚本内容到txt阅读器中:
5、进入hac导出指定model数据
由于生成的脚本已经包含了项目所有的数据类型,可以查找到任意我们需要的model,之后去hac的impex导出指定的model数据,例如上文的6-9行就是导出Link表的所有数据
点击Export content按钮后,在最下方生成对应的导出数据
6、Impex导入到本地系统
下载Exprot Zip File后,解压后把文件以如下方式导入,注意下方选项
7、自定义导出内容
有时候由于线上表数据太大,可以通过sql的方式来筛选部分数据进行导出,简单来说就是把
"#% impex.exportItems( ""Link"" , false );"
替换成
"#% impex.exportItemsFlexibleSearch( ""select {pk} from {Link} where {pk} ='8796093063982' "");"
Groovy单元测试
比如Hybris里面有一个已经放入Spring容器的方法,找到它的bean id之后,直接通过Groovy脚本就可以调用其指定方法,实现单元测试效果:
点击excute后,可以直接调用Hybris容器中的代码,实现本地或者线上的简单测试。