为spring boot项目的新模型生成脚手架

plaster-spring-boot的Python项目详细描述


将rails中的类似功能引入spring boot的项目 站台。目前只支持启用maven的项目。

例如:

plaster g scaffold User name:string age:integer

将创建以下文件:

  • model-root/model/user.java
  • repository-root/repository/userrepository.java
  • 服务-service/userservice.java
  • controller-controller/userscontroller.java

根在脚本启动时计算。例如,如果在 在pom.xml中使用以下项目:

<groupId>com.example</groupId>

根目录为src/main/com/example/

安装

如果你有pip 安装后,您可以安装以下石膏:

pip install plaster-spring-boot

否则,请确保安装了python的setuptools 石膏。如果在ubuntu系统上,请使用以下命令:

sudo apt-get install python-setuptools

否则,探索 setuptools查找如何 为您的系统安装。然后把石膏下载到你的机器上, 导航到下载它的目录并运行:

python setup.py install

用法

usage: plaster [-h] [-v] [-k [KEY]] [-d DIR]
               {generate,g,delete,d}
               {scaffold,model,repository,service,controller,field} model_name
               [fields [fields ...]]

Generate files for Spring Boot

positional arguments:
  {generate,g,delete,d}
                        whether to generate or delete
                            generate, g - create files
                            delete, d - remove files
  {scaffold,model,repository,service,controller,field}
                        how to generate or delete content
                            scaffold - all files associated to the model
                            model - the entire model
                            repository - the entire repository
                            service - the entire service
                            controller - the entire controller
                            field - individual field(s)
  model_name            name of model for which to perform actions
  fields                fields to perform actions listed as name:type pairs

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         fetches the current version of the tool
  -k [KEY], --key [KEY]
                        indicates the following field:type pair should define the key
                        NOTE: should be a trailing param
  -d DIR, --dir DIR     defines a sub path in which to perform actions
                        NOTE: should be a trailing param

定制

默认情况下,plater会自动发现必要的配置,然后 使用最佳实践来决定在何处以及如何生成文件。然而, 如果您想自定义文件的生成,plater会给出 您可以通过在根中放置plaster.yml来更改默认值 项目的一部分。支持以下配置:

属性dir

PropertyDescriptionTypeDefault
modelDirectory in which to generate modelsStringmodel
repositoryDirectory in which to generate repositoriesStringrepository
controllerDirectory in which to generate controllersStringcontroller
serviceDirectory in which to generate servicesStringservice

Lombok属性
PropertyDescriptionTypeDefault
enabledShould we enable generation in lombok modeBooleanIs lombok a dependenc y in pom.xml ?

Lombok支持

如果在 pom.xml。这将导入lombok并以不同的方式对模型进行注释。 例如:

//NO LOMBOK
@Entity
public class Example {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Integer id;

    public Integer getId() {
        return this.id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

}
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

@AllArgsConstructor
@Builder
@Data
@NoArgsConstructor
public class Example {

    @Id
    @GeneratedValue(strategy = GenerationType.AUTO)
    private Integer id;

}

有关Lombok的信息,请访问项目的 homepage

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
尝试运行JFLAP。戴软呢帽的罐子23。Java正在抛出异常   无引用的java数组布尔复制   hibernate如何在java SE应用程序中使用JPA EntityManager   java如何使用ORMLite在SQLite中持久化JavaFX属性?   java无法将项目部署到GAE   java:谷歌地图维基百科层   java Resultset(getter/setter类)对象在第二次执行时未删除旧值   s中的java struts2:选择列表>请求的列表键“”作为集合/数组/映射/枚举/迭代器类型   java如何在Karaf 4.0.5中获得BaseDao中的entityManager?   java VSCode未从控制台读取西里尔文   java字体。createFromAsset()返回字体的空指针异常   java错误:将Android Studio从0.6.1更新到0.8.9后,没有合适的构造函数