做了2,3年的java-web,始终木有逃离所谓根底业务,增删改查这些变化无穷的货色写起来节约大量工夫,于是做了个简略的代码生成器疾速生成

代码生成器的原理其实很简略,都是基于模板实现替换,模板基于是Nvelocity。

局部代码展现:【目前只反对mysql 、oracle、sqlite 三种数据库的连贯 有须要 能够本人减少】

sing System;using System.Collections.Generic;using System.Data;using System.Linq;using System.Text;using System.Threading.Tasks;using personal_manage.Common.DAL;using personal_manage.Common.dto;using personal_manage.DAL.adapter;using personal_manage.Models.entity;namespace personal_manage.BLL.adapter{    public class DbBLL    {        public List<TableInfo> SelectTableList(CodeProjectDbConfigInfo codeProjectDbConfigInfo, string tableKeyword)        {            if (codeProjectDbConfigInfo.DbType == "Mysql" )            {              return  DbAdapter.SelectTableNameByMySql(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableKeyword);            }else if(codeProjectDbConfigInfo.DbType == "Oracle")            {                return DbAdapter.SelectTableNameByOracle(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableKeyword);            }            else if (codeProjectDbConfigInfo.DbType == "Sqlite")            {                return DbAdapter.SelectTableNameBySqlite(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableKeyword);            }            return null;        }        public List<TableFieldInfo> SelectTableFields(CodeProjectDbConfigInfo codeProjectDbConfigInfo, string tableName)        {            if (codeProjectDbConfigInfo.DbType == "Mysql")            {                return DbAdapter.SelectTableFieldsByMySql(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableName);            }            else if (codeProjectDbConfigInfo.DbType == "Oracle")            {                return DbAdapter.SelectTableFieldsByOracle(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableName);            }            else if (codeProjectDbConfigInfo.DbType == "Sqlite")            {                return DbAdapter.SelectTableFieldsBySqlite(codeProjectDbConfigInfo.DbConnect, codeProjectDbConfigInfo.DbName, tableName);            }            return null;        }    }}

演示界面:
数据库配置

模板配置:

生成:

内置有一套java的模板,调用的是jar包 【须要装置jdk,所有说是c# c++ java的文件寄存地位 理论生成的后缀都是.java或.jsp .html】


源码地址:https://gitee.com/ten-ken/per...

本文来源于:程序员ken,专属平台有csdn、思否(SegmentFault)、 简书、 开源中国(oschina)、掘金,转载请注明出处。