根据mysql数据库自动生成mvc三层代码及jsp页,极速开发srpingmvc+mybatis+bootstrap项目。
2015-12-19 20:17
771 查看
极速开发srpingmvc+mybatis+bootstrap项目
jsp页面的文字是通过读取数据库注释提取。
生成方式运行如下类GenCode
成生效果:
近期要实现通过数据库注释实现一对一,一对多关系的自动代码生成。
了解详细代码:http://git.oschina.net/anbangzhiguo/balakitbbs
远景:通过格式化的数据库注释,一键生成基础项目,致力于极速开发,让私活来得越来越猛。
[code]最近开发web总感觉增删改查,mvc三层重复开发的套路代码太多,于是有了一个想法: 能不能一键生成增删改查各层代码,于是开发了这个项目。 项目主要的功能:根据mysql数据库(表和字段要有注释)自动生成mvc三层代码及jsp页。 现能实现自动生成单表增删改查后台代码及jsp页面(页面包括导航,增删改查,分页等功能)。
jsp页面的文字是通过读取数据库注释提取。
生成方式运行如下类GenCode
[code]package com.balakitbbs.gen; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; //自动生成代码工具类 public class GenCode { //-------------自动生成代码如下参数要修改----------------------- public static final String databaseurl = "localhost"; //数据库地址 public static final String port = "3306"; //数据库端口 public static final String NAME = "root";//数据数登录用户名 public static final String PASS = "";//数据库登录密码 public static final String DATABASE = "balakit";//数据库名称 public static final String pojobackage = "com.balakitbbs.entity"; //pojo包名 public static final String daobackage = "com.balakitbbs.dao";//dao包名 public static final String servicebackage = "com.balakitbbs.service";//service包名 public static final String controllerbackage = "com.balakitbbs.controller";//controller包名 //------------------------------------------------------------- public static final String DRIVER = "com.mysql.jdbc.Driver"; static ArrayList<String> tablenames = new ArrayList<String>(); public static final String URL = "jdbc:mysql://"+databaseurl+":"+port+"/information_schema?useUnicode=true&characterEncoding=UTF-8"; public static void main(String[] args) { // 创建连接 Connection con = null; // 查要生成实体类的表 String sql = "select table_name,table_comment from TABLES where TABLE_SCHEMA = '" + GenCode.DATABASE + "'"; PreparedStatement pStemt = null; try { try { Class.forName(GenCode.DRIVER); } catch (ClassNotFoundException e1) { e1.printStackTrace(); } con = DriverManager.getConnection(GenCode.URL, GenCode.NAME, GenCode.PASS); pStemt = con.prepareStatement(sql); ResultSet executeQuery = pStemt.executeQuery(); while (executeQuery.next()) { String tablename = executeQuery.getString(1); String tablecomment = executeQuery.getString(2); tablenames.add(tablename + "," + tablecomment); System.out.println(tablename + "\t" + tablecomment); }// 显示数据 } catch (Exception e) { e.printStackTrace(); } finally { try { con.close(); } catch (SQLException e) { e.printStackTrace(); } } for (int i = 0; i < tablenames.size(); i++) { String tablename = tablenames.get(i).trim(); new GenEntity(tablename); //生成实体 new GenDao(tablename); //生成dao new GenXmlMapper(tablename); //生成xmlMapper文件 new GenService(tablename); //生成service new GenController(tablename);//生成controller new GenJsp(tablename); //生成jsp } new GenIndexJsp(tablenames);//生成目录 } }
成生效果:
近期要实现通过数据库注释实现一对一,一对多关系的自动代码生成。
了解详细代码:http://git.oschina.net/anbangzhiguo/balakitbbs
远景:通过格式化的数据库注释,一键生成基础项目,致力于极速开发,让私活来得越来越猛。
相关文章推荐
- mysql字符集调整总结
- mysql简单操作一
- Mysql ubuntu下的安装卸载
- mysql常用命令
- mysql主从复制
- mysql5.6自带工具集(一)
- 最新版本mysql for mac的修改root用户密码
- 【转载】MySQL开发规范
- MySQL数据库相关命令
- mysql 的 find_in_set函数使用方法
- mysql常用技巧
- magento mysql 配置
- MySQL分区总结
- 查看MySQL的当前存储引擎
- mysql5.5和5.6对于datetime值带毫秒的问题
- mysql5.5升级到5.6
- mysql树形结构获取叶子节点的写法
- MySQL学习总结
- mysql 排序 /tmp被撑爆
- mysql创建数据库和删除数据库