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这些辅助工具我们需要灵活的运用它们,这样在我们编码的时候能大大的提高效率,如果我们在使用的时候不


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


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


目录
相关文章
|
移动开发 前端开发 测试技术
关于前端AB实验,我是这么思考的
背景 大家好, 我是Fly哥, 这次分享的内容主要是关于ABtest ,我们是做用户增长的,说白了就是对应下面几个关键词。拉新、激活、留存,留存的话 又分为 次日留存、 3日留存,这些都是我们的指标, 但是产品设计一个需求的时候, 可能会有实验的性质,不确定哪一组实验,对于指标的反馈是正向的,或者是那一组实验的效果更加明显。 这时候产品就会去创建AB实验,然后拿线上的一部分流量,去做实验, 分析数据, 得出实验结论,然后看是否满足预期, 如果不满足 就暂停实验, 或者进行全量实验。 大家可以看下下面这张流程图: 图片 然后对于我们前端而言,我们关心的点只有两个 第一个就是接入ABtest,
关于前端AB实验,我是这么思考的
|
19天前
|
监控 架构师 安全
企业架构(EA)项目开发综合指南
企业架构(EA)是一种全面的方法,用于对齐企业的业务目标与其 IT 战略和资源。EA 涵盖了企业的各个层面,包括业务流程、信息流、应用系统和技术基础设施。本指南将详细探讨 EA 项目开发的关键步骤、[EA](https://www.visual-paradigm.com/features/enterprise-architecture-diagram-tool/) 与 TOGAF、ArchiMate 以及其他建模图(如 BPMN 和 UML)之间的关系,以及推荐 Visual Paradigm 作为 EA 团队的最佳解决方案。
48 3
|
7月前
|
JavaScript UED
ab77b6ea7f3fbf79.JS代码报错什么原因?
网站出现JS报错,表现为黄色小叹号,经排查发现是360自动收录JS引起。这不仅导致页面延迟增加,还影响用户体验。解决方案是删除360的自动推送JS代码。
41 1
|
7月前
|
数据采集 Python
环境调试——EA-LSS
对比 E-H:同样增加速度增强之后,放大图像的调整范围,DAL 会比 BEVFusion 略微提升。作者说速度增强挑战了点云线索的回归任务预测,这迫使模型利用图像线索。(没懂,插个眼)
171 1
Demo 工程
Demo 工程
120 0
Demo 工程
|
XML 开发框架 安全
J2EE基础-开发环境搭建
J2EE基础-开发环境搭建
J2EE基础-开发环境搭建
|
芯片
FPGA-DA模块demo
FPGA-DA模块demo
251 0
杰里AC79XX之开发环境搭建(1)
杰里AC79XX之开发环境搭建(1)
879 0
杰里AC79XX之开发环境搭建(1)
|
C++ Windows
Qt工程转换成VS工程
Qt工程转换成VS工程
298 0