Jmix 插件设置

Jmix Plugin Settings 可以对当前 Studio 中打开的所有项目进行设置。该窗口可以通过 Jmix 工具窗口 的工具栏打开。

plugin open

Jmix 页中,可以进行下列配置:

  • Additional templates artifact 字段,可以指定 自定义模板 制件的组名和包名,用冒号隔开,例如,com.custom.templates.studio:custom-studio-templates

  • Send anonymous usage statistics and automated crash reports,可以选择是否发送匿名统计信息。

    统计信息可以帮助 Studio 的开发者更好地了解您是如何使用 Studio 的,并且能提供更多的信息以改善用户体验。我们不会收集任何个人信息。

    启用匿名信息统计后,Studio 会周期性地发送下列数据至统计服务器:

    • 统计事件的日期和时间。

    • Studio ID - 第一次启动时生成的随机 UUID,保存在用户硬盘上。

    • Studio 版本号。

    • 操作系统名称。

    • JDK 版本号。

    • IntelliJ IDEA 版本号。

    • IntelliJ IDEA 类型:Community 还是 Ultimate。

    • 项目中使用的公共 Jmix 扩展组件。

    • 项目中的实体数量。

    • 项目中的视图数量。

    • 项目使用的数据库类型。

  • 勾选 Open editor on Text tab instead of Designer for new entities 默认在代码编辑器打开实体。

项目设置

Project Settings 页,可以选择项目中生成代码使用的编程语言,也支持 Kotlin。

  • 如果你的项目混合了 Java 和 Kotlin 开发,需要控制每个新实体、服务或视图使用的语言,则可以选择 Always Ask。这个选项只有在启用 Kotlin 的项目可见。

  • Enable hot deploy 是默认勾选的,启用 热部署 技术。

  • 当启用了 Generate embedded attribute overrides by default 时,Jmix Studio 会为可嵌入实体创建嵌入的属性,无需每次手动定义。

plugin language

数据库驱动

可以在 Database Drivers 页管理数据库驱动。

plugin drivers

类型映射

Type Mappings 页,可以定义实体属性类型和数据库字段类型的映射关系。

settings type mappings

代码辅助

Coding Assistance 页中提供了各种工具和功能,可以帮助开发者编写高效准确的代码。

  • Use final modifier when generating code 默认勾选,在字段、本地变量和方法参数中实时使用 final 修饰符。

  • 勾选 Use constructor injection 可以在 Spring bean 中使用构造器注入。

  • Use protected access modifier 在生成事件处理器或注入 bean 时生效。勾选这个功能时,生成的方法和字段是 protected。如果不启用,则方法是 public 而字段是 private

  • Enable injection by code completion 默认勾选。只要在方法体中输入几个字符,就会打开一个辅助代码的下拉列表,除了显示局部变量和类字段之外,还显示了可用的 bean 和 UI 组件。尚未注入到类中的 Bean 和 UI 组件将用斜体字体标记。如果选择斜体的变量,则会自动注入到构造器或带注解(@Autowired@ViewComponent)的字段中,并在光标位置即可使用。

    如需取消,可以不勾选。

  • 还可以设置最少输入几个字符时就会出现代码辅助的提示框。

  • Suggest creating new data repositories 默认关闭。如果启用,则 IDE 会建议为实体类和实例创建不存在的 data repository.

coding assistance tab

Data Repository

Data Repository 页提供了几个与 repositories 相关配置,包括默认方法、命名规范以及代码生成等。

  • Default repository name suffix 定义生成 data repository 接口的后缀。

  • Spring Data 提供了多个关键字表达式来命名派生的查询方法。例如,NameContainingNameIsContainingNameContains 都表示相同的意思。Jmix Studio 支持配置一组可以使用的关键字用于生成方法名称,保证团队中使用的规范一致。

  • Use named parameters for query 是否启用会影响为 data repository 生成的 JPQL 中处理参数的方式。启用后,会使用命名参数,由冒号后跟有意义的名称标识,而不是位置参数。

data repository page