利用新版Spring roo生成数据库表

来源:互联网 发布:我的淘宝流量来自哪里 编辑:程序博客网 时间:2024/05/21 10:52

源代码:https://github.com/sunuanwuhou/Northwind

一.准备工具

1.Spring Roo最新版,官方下载地址:http://projects.spring.io/spring-roo/#download-widget

2.maven 版本在3.0以上:官方下载地址:https://maven.apache.org/download.cgi

3.jdk版本,适用于1.8

4.数据库 我是MYSQL,ORACLE 也可以,其他数据库可不可以可以参照官方文档。

二.配置生产环境

1.安装maven

检测是否成功

2.安装spring roo

检测是否安装成功

三.编写roo文件

因为roo文件有很多属性,这里就不一一述说了,只给出最简单的例子供大家参考

//创建maven项目 java8环境下project setup --topLevelPackage org.northwind --projectName "Northwind" --java 8 --multimodule STANDARD//将对象名称设置为可选settings add --name spring.roo.jpa.require.schema-object-name --value false --force//连接数据库以及账号密码 jpa setup --provider HIBERNATE  --database MYSQL//删除系统默认的数据库主机名和端口property remove --key spring.datasource.url//自定义数据库ip和端口以及数据库名称以及编码 事先要在相对应的数据库建好表property add --key spring.datasource.url --value jdbc:mysql://127.0.0.1:3306/spring?useUnicode=true&characterEncoding=UTF-8property add --key spring.datasource.username --value rootproperty add --key spring.datasource.password --value root//建表的方式  加载hibernate自动更新数据库结构property add --key spring.jpa.properties.hibernate.hbm2ddl.auto --value update//允许创建beanmodule focus --moduleName model//创建实体类,其他创建方式参考官方文档entity jpa --class ~.City field string --fieldName descriptionfield string --fieldName nameentity jpa --class ~.Countryfield string --fieldName namefield string --fieldName description//关联关系 如果主表为city。从表为countryfocus --class ~.City field reference --notNull --type ~.country --fieldName city_county --joinColumnName city --referencedColumnName id --mappedBy City(主表) //解释每个字段的意思focus --class ~.City(主表) field reference --notNull(不为空) --type ~.country(从表) --fieldName city_county(这个可以随表写,是生成在bean中的,但不能重复,建议主表_字表)--joinColumnName city_id(这个是从表的外键.可自己之指定名称,建议主表_id) --referencedColumnName id(主表的那个字段作为从表的外键,不写默认为id)--mappedBy City(主表) web mvc setup

四.编写脚本文件

0.clean 目的是为了下次生成项目的时候,清楚之前的残余。

rmdir /s /q .roormdir /s /q applicationrmdir /s /q integrationrmdir /s /q modelrmdir /s /q repositoryrmdir /s /q service-apirmdir /s /q service-impldel log.roodel pom.xml

1.build 扫描roo文件生成maven项目,此maven项目是以spring boot作为启动项。

roo script --file db.roo

2.package 进行打包

mvn package

打包后会生成俩个war包,一个是.war,一个是-exec.war。一个适用于windows一个适用于linux。

3.run 运行jar包

//进入war包所在目录cd application\target//运行项目java -jar application-1.0.0.BUILD-SNAPSHOT-exec.war

五.成功运行上面几个脚本后,你可以看到数据库中有新表产生。

1.可以修改表结构。

2.可以增加字段,对数据无影响。

3.以添加在数据的字段,更改roo文件后,无法删除。