EA生成代码工程

简介: EA生成代码工程

引言  


最近一直在进行图书馆项目的开发,这也是我们自己合作开发的第一个B/S项目,我们都是从零开始,自己找原型、自己弄需求、自己开发。在一起探讨需求的时候从她们两个那接触到了很多新的知识,可以说是让我打开眼界,这些新的东西都是在研究中,如果有成果了一定会总结长博客和大家分享。现在来和大家分享一下用EA生成代码的过程中需要注意的问题和使用方法。

 

一、画图需要注意的问题

 

1、首先我们在使用EA画UML图的时候,必须修改默认语言,在EA中的默认语言是Java,如果我们不修改语言,则在


我们以后生成的代码中都是java.或者是我们需要一个类一个类来修改。

修改默认语言为c#: 工具——》选项——》代码工程——》代码工程默认语言

20150522202449188.jpg


2、在我们在画实体的时候需要我们选择属性,这样在我们生成的代码中才会有属性方法,否则在生成的代码中只有我们定义的属性。

namespace Model {
  /// <summary>
  /// 图书类别
  /// </summary>
  public class CategoryEntity {
    /// <summary>
    /// 图书类别号
    /// </summary>
    private string categoryID;
    /// <summary>
    /// 图书的索书号
    /// </summary>
    private string inexID;
    public CategoryEntity(){
    }
    ~CategoryEntity(){
    }
    public virtual void Dispose(){
    }
    }
}


如果我们选择了属性则生成如下代码:

namespace Model {
  /// <summary>
  /// 图书类别
  /// </summary>
  public class CategoryEntity {
    /// <summary>
    /// 图书类别号
    /// </summary>
    private string categoryID;
    /// <summary>
    /// 图书的索书号
    /// </summary>
    private string inexID;
    public CategoryEntity(){
    }
    ~CategoryEntity(){
    }
    public virtual void Dispose(){
    }
  <span style="color:#ff0000;"><strong> /// <summary>
    /// 图书类别号
    /// </summary>
    public string CategoryID{
      get{
        return categoryID;
      }
      set{
        categoryID = value;
      }
    }
    /// <summary>
    /// 图书的索书号
    /// </summary>
    public string InexID{
      get{
        return inexID;
      }
      set{
        inexID = value;
      }
    }</strong></span>
  }//end CategoryEntity
}//end namespace Model

上面的红色部分就是我们选择属性和不选择属性的差别,具体操作如下:


20150522203300288.jpg

选择了属性后我们的实体类图如下:


20150522203445078.jpg


这样我们在生成的代码中实体层几乎不再需要我们动代码,给我们编程带来了很大的便利。


二、EA动态生成类头注释


我们现在都知道我们在VS中新建类的时候自动生成类头注释,但是在EA中生成的类头注释都是一些英文的东西,让我们看着非常的不爽,我们需要后期手动修改类头注释。


20150522204238691.jpg


下面就和大家分享如何在EA中动态的生成类头注释,具体操作如下:设置——》代码生成模板——》修改File


20150522204506333.jpg

20150522204652679.jpg


将右边红框中的内容改成我们自己想要的模板就可以了,下面来看一下我们生成的效果:

<span style="color:#ff0000;"><strong>/*******************************************************************
*作者:zhenghao
*小组:图书管理系统项目开发小组
*类名:CategoryEntity.cs
*创建日期:
*修改日期
*说明:
*版本号:
***********************************************************************/</strong></span>
namespace Model {
  /// <summary>
  /// 图书类别
  /// </summary>
  public class CategoryEntity {
    /// <summary>
    /// 图书类别号
    /// </summary>
    private string categoryID;
    /// <summary>
    /// 图书的索书号
    /// </summary>
    private string inexID;
    public CategoryEntity(){
    }
    ~CategoryEntity(){
    }
    public virtual void Dispose(){
    }
    /// <summary>
    /// 图书类别号
    /// </summary>
    public string CategoryID{
      get{
        return categoryID;
      }
      set{
        categoryID = value;
      }
    }
    /// <summary>
    /// 图书的索书号
    /// </summary>
    public string InexID{
      get{
        return inexID;
      }
      set{
        inexID = value;
      }
    }
  }//end CategoryEntity
}//end namespace Model

这样我们就可以在生成的代码框架中动态的添加了我们想要的类头注释模板了。


三、未解决问题


不知道各位读者发现没有,我们生成的代码中都没有那些默认的引用,我们在VS中添加一个类的时候在类头都有一些默认的引用,但是在EA中生成的代码确实没有的,不知哪位大神已经解决了这个问题,请留言指教。


四、小结


像EA这些辅助工具我们需要灵活的运用它们,这样在我们编码的时候能大大的提高效率,如果我们在使用的时候不


但没有给我们带来便利反而让我们感到有一些麻烦,那么这个时候我们应该停下来思考和查阅一些资料来重新认识这


些软件。这样我们才能最大程度的发挥这些软件的作用。


目录
相关文章
|
21天前
|
数据采集 Python
环境调试——EA-LSS
对比 E-H:同样增加速度增强之后,放大图像的调整范围,DAL 会比 BEVFusion 略微提升。作者说速度增强挑战了点云线索的回归任务预测,这迫使模型利用图像线索。(没懂,插个眼)
38 1
|
16天前
|
JavaScript UED
ab77b6ea7f3fbf79.JS代码报错什么原因?
网站出现JS报错,表现为黄色小叹号,经排查发现是360自动收录JS引起。这不仅导致页面延迟增加,还影响用户体验。解决方案是删除360的自动推送JS代码。
13 1
VC7(VS2002)的arx项目转VC8(VS2005)项目,注意事项
VC7(VS2002)的arx项目转VC8(VS2005)项目,注意事项
|
11月前
|
存储 IDE NoSQL
我是如何组织 Go 代码的(目录结构 依赖注入 wire)
我们在编写 Go 程序可能会直接新建 main.go,xxx.go,yyy.go……对于小型工程来说简洁明了;但对于大型工程而言,或者团队协作中,没有明确的规范,只会使得项目越来越凌乱……
153 0
|
IDE 开发工具
瑞萨IDE:CS+ for CC新建工程配置方法
在上一篇博文中,我们讲到瑞萨IDE:CS+ for CC下载、安装和基础使用,创建新工程生成示例代码后,编辑工程,提示错误信息,主要原因是新建工程后需要进行配置才可以正常进行编译和运行。
|
异构计算
KUC711AE01 3BHB004661R0001 强调模块化设计的特殊软件流程
KUC711AE01 3BHB004661R0001 强调模块化设计的特殊软件流程
86 0
KUC711AE01 3BHB004661R0001 强调模块化设计的特殊软件流程
Demo 工程
Demo 工程
89 0
Demo 工程
|
芯片
FPGA-DA模块demo
FPGA-DA模块demo
201 0
杰里AC79XX之开发环境搭建(1)
杰里AC79XX之开发环境搭建(1)
749 0
杰里AC79XX之开发环境搭建(1)