webf 开发工具:数据库持久层基础文件生成工具

WZW.SqlMapHelpForJava是运行在.Net Framework4.0上的数据库持久层基础文件生成工具,支持多种关系型数据库的持久层基础文件、Java类的生成以及对配置文件的更新,与webf框架进行紧密配合,减少了数据库持久层基础文件编写工作量,提高持久层代码的有效及准确性。

WZW.SqlMapHelpForJava对单表操作的支持较好,对于多表或视图操作有所欠缺,为了弥补不足和配合webf开发框架使用,在生成的实体类中都增加了set和get属性,当对实体类要附加其他属性时可以使用set和get来完成,属性值以HashMap进行存储。

配置生成工具

配置信息保存在Config.xml中,主要用于配置数据库连接、持久层文件夹、持久层对应的配置文件路径、生成规则以及数据字段与Java类型的映射。一般只需要进行配置数据库连接、持久层文件夹、持久层对应的配置文件路径即可。

配置数据库连接

配置数据库连接信息,db节点中的selected属性为true时表示使用的是当前数据库连接。

节点:config/dblist/db

<dblist>
    <db>
      <key name="DB_TYPE" value="access" description="access数据库,要对MSysObjects表有操作权限" />
      <key name="PASSWORD" value="" description="登录密码" />
      <key name="DATABASE" value="c:\data\webf.mdb" description="数据库" />
    </db>
    <db>
      <key name="DB_TYPE" value="mssql" description="mssql数据库" />
      <key name="SERVER" value="." description="服务器地址" />
      <key name="PORT" value="1433" description="服务器端口" />
      <key name="USER_NAME" value="sa" description="登录名" />
      <key name="PASSWORD" value="sa" description="登录密码" />
      <key name="DATABASE" value="webf" description="数据库" />
    </db>
    <db>
      <key name="DB_TYPE" value="oracle" description="oracle数据库" />
      <key name="USER_NAME" value="demo" description="登录名" />
      <key name="PASSWORD" value="demo" description="登录密码" />
      <key name="DATABASE" value="127.0.0.1" description="oracle的Net服务名" />
      <key name="SCHEMA" value="" description="属于哪一个用户模式,为空则是登录名对应的模式,否则是其他用户模式" />
    </db>
    <db selected="true">
      <key name="DB_TYPE" value="mysql" description="mysql数据库" />
      <key name="SERVER" value="127.0.0.1" description="服务器地址" />
      <key name="PORT" value="3306" description="服务器端口" />
      <key name="USER_NAME" value="root" description="登录名" />
      <key name="PASSWORD" value="root" description="登录密码" />
      <key name="DATABASE" value="webf" description="数据库" />
    </db>
    <db>
      <key name="DB_TYPE" value="dm" description="dm数据库" />
      <key name="SERVER" value="127.0.0.1" description="服务器地址" />
      <key name="PORT" value="12345" description="服务器端口" />
      <key name="USER_NAME" value="easy119" description="登录名" />
      <key name="PASSWORD" value="easy119" description="登录密码" />
      <key name="DATABASE" value="easy119" description="数据库" />
    </db>
</dblist>

配置持久层文件夹目录及对应的配置文件路径

配置持久层文件夹目录及对应的配置文件路径,便于根据持久层文件夹目录中的文件更新配置文件内容。

节点:config/net

<net>
    <key name="DB" value="db1" description="哪个数据库,如:db1" />
    <key name="BEANS_FILEPATH" value="E:\proj\PERSON\webf\trunk\src\webf\src\com\data\db1\beans.xml" description="beans.xml配置文件路径" />
    <key name="MYBATIS_CONFIG_FILEPATH" value="E:\proj\PERSON\webf\trunk\src\webf\src\com\data\db1\mybatis.xml" description="mybatis配置文件路径" />
    <key name="DAO_FOLDER_PATH" value="E:\proj\PERSON\webf\trunk\src\webf\src\com\data\db1\dao" description="工程中Dao文件夹目录" />
    <key name="SQLMAP_FOLDER_PATH" value="E:\proj\PERSON\webf\trunk\src\webf\src\com\data\db1\sqlmap" description="工程中SqlMap文件夹目录" />
</net>

生成规则

根据持久层基础文件生成需求,可以自定义一些生成规则:

(1)IS_GENERATE_VIEW_CLASS:是否生成视图的持久层文件;

(2)IS_GENERATE_SQL_CLASS:是否生成通用SQL操作类,便于根据SQL语句进行JDBC操作;

(3)IS_GENERATE_ORDER_BY_PRIMPARY_KEY_DESC:是否生成默认排序,按主键降序排列显示;

(4)PARTITION_FIELD_NAME:分区标识字段名称,仅用于分区存储(时间分区时要为主键)处理,插入与更新记录时不做处理。

节点:config/rule

<rule>
    <key name="IS_GENERATE_VIEW_CLASS" value="false" description="是否生成视图类" />
    <key name="IS_GENERATE_SQL_CLASS" value="true" description="是否生成SQL通用类" />
    <key name="IS_GENERATE_ORDER_BY_PRIMPARY_KEY_DESC" value="true" description="是否生成默认排序,按主键降序排列显示" />
    <key name="PARTITION_FIELD_NAME" value="ptime" description="分区标识字段名称,仅用于分区存储(时间分区时要为主键)处理,插入与更新记录时不做处理,MySQL:ptime datetime default current_timestamp,primary key(id,ptime)" />
</rule>

生成与更新文件

当在Config.xml配置好数据库连接以及持久层文件夹目录及对应的配置文件路径后便可以使用生成工具进行文件生成操作与更新配置文件操作了。

生成持久层基础文件

在使用生成工具前,生前工具中有如下文件:template中主要是模板文件、Config.xml为配置文件、WZW.SqlMapHelpForJava.exe为运行文件,如下图所示:

(1)运行WZW.SqlMapHelpForJava.exe;

(2)点击【载入表】按钮;

如果数据库连接配置正确且数据库运行正确,点击载入表显示如下界面:

(3)选中"sys_user"前的复选框;

(4)点击【生成基础文件】按钮;

完整阅读:http://www.laobingbiji.com/page/202406041154200000000010721519.html

相关推荐
远歌已逝2 小时前
维护在线重做日志(二)
数据库·oracle
qq_433099403 小时前
Ubuntu20.04从零安装IsaacSim/IsaacLab
数据库
Dlwyz3 小时前
redis-击穿、穿透、雪崩
数据库·redis·缓存
工业甲酰苯胺5 小时前
Redis性能优化的18招
数据库·redis·性能优化
没书读了6 小时前
ssm框架-spring-spring声明式事务
java·数据库·spring
i道i7 小时前
MySQL win安装 和 pymysql使用示例
数据库·mysql
小怪兽ysl7 小时前
【PostgreSQL使用pg_filedump工具解析数据文件以恢复数据】
数据库·postgresql
wqq_9922502777 小时前
springboot基于微信小程序的食堂预约点餐系统
数据库·微信小程序·小程序
爱上口袋的天空7 小时前
09 - Clickhouse的SQL操作
数据库·sql·clickhouse
聂 可 以9 小时前
Windows环境安装MongoDB
数据库·mongodb