Jira配置MySQL数据库的详细步骤



JIRA中,数据实体(entity)的字段、类型及和数据库表的对应关系这些设置在 entityengine.xml、entitygroup.xml、entitymodel.xml中。

entitymodel.xml------------定义实体、属性,以及和数据库表、字段的对应关系。

entitygroup.xml------------定义数据实体所属的分组信息。

entityengine.xml-----------加载entity group, entity model, field type位置信息、定义处理实体数据的delegator(委托);属性、字段类型的对应信息设置在fieldtype-***.xml文件中。

使用  Ofbiz Entity Engine 来操作数据和数据库,需要编辑以上配置文件,操作略。本文讨论的是如何利用 active object 来处理数据。

1.实体entity的定义:

关系型数据库中,实体就是由一系列属性和该实体与其他实体间的关联关系定义的一组数据。

2. AO简介

ActiveObjects是一个纯Java ORM。

AO可以与现有数据库模式一起使用,也可以从用户指定的实体接口自动生成数据库模式。

ActiveObjects自然使用延迟加载以及复杂的缓存机制,比传统的数据映射器ORM更具性能。 然而,它的主要设计目标不是性能,而是创建一个强大的ORM,用于集成到您的项目中。

JIRA产品是用Java语言写的,在JIRA中操作数据和数据库,也可以使用AO。

3.JIRA中使用AO的注意事项

3.1 在pom.xml中添加对activeobjects-plugin.jar的依赖。

3.2  AO通过接口(interface)来定义实体(entity),实体创建后,在数据库中也会自动生成数据库表(table)。

     接口继承了 Entity,它将主键直接定义为ID。


public interface DemoEntity extends Entity{
	/**
           定义 get,set方法以便存储数据
             */
}


public interface Entity extends RawEntity<Integer>
{
	@AutoIncrement
	@NotNull
	@PrimaryKey("ID")
	public int getID();             //Entity接口已经为用户定义好了ID主键
}

   3.2.1 定义非空字段:


@NotNull
    public String getAuthor();
    public void setAuthor(String author);
    

3.3默认情况下,针对实体除ID以外的字段/属性,AO使用懒加载(lazy loading);

    使用 @Preload 注释来让AO立即加载。

3.4 为了能够操作数据实体,需要在JIRA配置文件(atlassian-plugin.xml)中引入AO组件(component import)。

   (在SDK高级版本中,配置 component import,会报错------atlassian-plugin.xml contains a definition of component-import.This is not allowed when Atlassian-Plugin-Key is set. 可以使用spring注解来解决,@ComponentImport)

3.5 每一个AO交互(interaction)的完成都需要在事务(transaction)中进行,可以在业务层接口上方加注解:

    @Transaction

3.6 在定义实体(entity)名时,长度不要超过30个字符,否则会报如下错误:

net.java.ao.ActiveObjectsException: Invalid entity, generated table name (AO_769468_******) for 'com.******.****' is too long! It should be no longer than 30 chars.


免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空