`
hyj_dx
  • 浏览: 99620 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

webwork+hibernate+spring项目源代码自动生成(附源代码)

阅读更多

自己写了一个自动生成源代码的工具,代码自动生成,以及一个完整项目的成功实践,还在继续完善当中,采用freemaker配置模板,可以根据自己的需要生成自己想要的代码

 

先来看看怎么使用,很简单

先配置config.xml 配置设置模板路径,以及项目生成路径,可以自己定义

 

<?xml version="1.0" encoding="UTF-8"?>
<xml-body>
 <code>
  <projectpath>D:/vobuilder/vobuilder</projectpath>
  
  <model>com.hyj.model</model>
  <action>com.hyj.action</action>
  <dao>com.hyj.dao</dao>
  <daoimpl>com.hyj.dao.jdbc</daoimpl>
  <service>com.hyj.service</service>
  <serviceimpl>com.hyj.service.impl</serviceimpl> 
  <jsp>/freemarker/jsp</jsp>
   
 </code>
</xml-body>

 

 

 

CodeGenerator cg = new CodeGenerator();
cg.generate("tableName");

//这样就生成了所有项目的文件

  

 

 1.生成代码的引擎

 

package com.hyj.util;

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.io.Writer;
import java.sql.Connection;
import java.util.Map;

import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;

import com.szxhdz.util.Factory;

import freemarker.template.Configuration;
import freemarker.template.DefaultObjectWrapper;
import freemarker.template.Template;
import freemarker.template.TemplateException;

public abstract class AbstractEngine {

 protected static Logger logger = LogManager.getLogger(AbstractEngine.class);

 protected static Connection con;

 protected static Configuration cfg;

 public AbstractEngine(String templatePath) {
  con = Factory.getConnection();
  try {
   cfg = new Configuration();
   cfg.setDefaultEncoding("gb2312");
   cfg.setDirectoryForTemplateLoading(new File(templatePath));
   cfg.setObjectWrapper(new DefaultObjectWrapper());
  } catch (Exception e) {
   e.printStackTrace();
  }
 }

 public static void create(String ftlTemplate, Map contents, String savePath,
   String saveFilename) {
  try {
   Template temp = cfg.getTemplate(ftlTemplate);
   logger.info("generate file " + saveFilename + "  in path "
     + savePath);
   File file = new File(savePath);
   if (!file.exists()) {
    file.mkdirs();
   }
   Writer out = new OutputStreamWriter(new FileOutputStream(savePath
     + "/" + saveFilename), "gb2312");
   temp.process(contents, out);
   out.flush();
  } catch (IOException e) {
   e.printStackTrace();
  } catch (TemplateException e1) {
   e1.printStackTrace();
  }
 }
}

 

2。生成代码的实现类

 

package com.hyj.util;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;

import com.hyj.util.JDBCUtil.Column;
import com.szxhdz.util.SystemConstant;

public class CodeGenerator extends AbstractEngine implements Creater{
	private static final String BASE_PATH = SystemConstant.getProperty("code.projectpath");

	private static final String PACKAGE_PATH = "/src/com/hyj/";

	private static final String JAVA_CODE_GENERATOR_PATH = BASE_PATH
			+ PACKAGE_PATH;

	private static final String TEMPLATE_PATH = BASE_PATH
			+ "/freemarker/template";

	public CodeGenerator() {
		super(TEMPLATE_PATH);
	}

	public CodeGenerator(String templatePath) {
		super(templatePath);
	}

	public void generatorJSP(String table) {
		try {
			List priList = JDBCUtil
			.getPrimaryKeyColumns(con, null, null, table);
			Column pk = (Column) priList.get(0);
			Map params = new HashMap();
			params.put("table", table);
			params.put("columnList", JDBCUtil.getTableColumns(con, null, null,
					table));
			params.put("pk", pk);
			create("add.ftl", params, BASE_PATH + "/freemarker/jsp", table
					.toLowerCase().replaceAll("_", "")
					+ "_add.jsp");

		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generaorAll() {
		List tbList = null;
		try {
			tbList = JDBCUtil.getTables(con, null, "FTFJ_WEB", null);
			for (Iterator iter = tbList.iterator(); iter.hasNext();) {
				String table = (String) iter.next();
				generatorJSP(table);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public void generateModel(String table) {
		try {
			Map params = new HashMap();
			params.put("table", table);
			params.put("columnList", JDBCUtil.getTableColumns(con, null, null,
					table));
			create("bean.ftl", params, JAVA_CODE_GENERATOR_PATH + "model",
					table.substring(0, 1).toUpperCase()
							+ table.toLowerCase().replaceAll("_", "")
									.substring(1) + ".java");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generatorModels() {
		List tbList = null;
		try {
			tbList = JDBCUtil.getTables(con, null, "FTFJ_WEB", null);
			for (Iterator iter = tbList.iterator(); iter.hasNext();) {
				String table = (String) iter.next();
				generateModel(table);
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public void generateDao(String tableName) {
		try {
			List priList = JDBCUtil
					.getPrimaryKeyColumns(con, null, null, tableName);
			Column pk = (Column) priList.get(0);
			Map params = new HashMap();
			params.put("tableName", tableName);
			params.put("columnList", JDBCUtil.getTableColumns(con, null, null,
					tableName));
			params.put("pk", pk);
			create("dao.ftl", params, BASE_PATH +"/src/"+ SystemConstant.getProperty("code.dao").replace(".","/"),"I"+ tableName
					.substring(0, 1).toUpperCase()
					+ tableName.substring(1,tableName.length()).toLowerCase()
							.replaceAll("_", "") + "Dao.java");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public void generateDaoImpl(String table) {
		try {
			List priList = JDBCUtil
					.getPrimaryKeyColumns(con, null, null, table);
			Column pk = (Column) priList.get(0);
			Map params = new HashMap();
			params.put("table", table);
			params.put("columnList", JDBCUtil.getTableColumns(con, null, null,
					table));
			params.put("pk", pk);
			create("daoimpl.ftl", params, JAVA_CODE_GENERATOR_PATH + "dao/jdbc", table
					.substring(0, 1).toUpperCase()
					+ table.substring(1, table.length()).toLowerCase()
							.replaceAll("_", "") + "Dao.java");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generateSql() {

		List tbList = null;
		List ls = new ArrayList();
		try {
			tbList = JDBCUtil.getTables(con, null, null, null);
			Map params = new HashMap();

			for (Iterator iter = tbList.iterator(); iter.hasNext();) {
				String table = (String) iter.next();
				List columnlist = JDBCUtil.getTableColumns(con, null, null,
						table);
				Column pk = (Column) JDBCUtil.getPrimaryKeyColumns(con, null,
						null, table).get(0);
				SqlBean sqlbean = new SqlBean();
				sqlbean.setColumnList(columnlist);
				sqlbean.setPk(pk);
				sqlbean.setTable(table);
				ls.add(sqlbean);
			}
			params.put("ls", ls);
			create("db.ftl", params, JAVA_CODE_GENERATOR_PATH + "sql", "db.sql");
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}

	public void generateAction(String table) {
		try {

			Map params = new HashMap();

			List columnlist = JDBCUtil.getTableColumns(con, null, null, table);
			params.put("columnlist", columnlist);
			params.put("table", table);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,
					table).get(0));
			create("action.ftl", params, JAVA_CODE_GENERATOR_PATH + "action",
					table.substring(0, 1).toUpperCase()
							+ table.substring(1).toLowerCase().replaceAll("_",
									"") + "Action.java");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generateList(String table) {
		try {

			Map params = new HashMap();

			List columnlist = JDBCUtil.getTableColumns(con, null, null, table);
			params.put("columnlist", columnlist);
			params.put("table", table);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,
					table).get(0));
			create("list.ftl", params, BASE_PATH + "/freemarker/jsp", table
					.toLowerCase().replaceAll("_", "")
					+ "_list.jsp");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generateXwork(String table) {
		try {

			Map params = new HashMap();

			List columnlist = JDBCUtil.getTableColumns(con, null, null, table);
			params.put("columnlist", columnlist);
			params.put("table", table);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,
					table).get(0));
			create("xwork.ftl", params, JAVA_CODE_GENERATOR_PATH, "xwork-"
					+ table.toLowerCase().replaceAll("_", "") + ".xml");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generateApplicationContext() {
		List tbList = null;
		List tableList = new ArrayList();
		try {
			tbList = JDBCUtil.getTables(con, null, null, null);
			for (Iterator iter = tbList.iterator(); iter.hasNext();) {
				String table = (String) iter.next();
				tableList.add(table);
			}
			Map params = new HashMap();
			params.put("tableList", tableList);
			create("applicationContext.ftl", params, JAVA_CODE_GENERATOR_PATH,
					"applicationContext.xml");
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public void generateValidation(String table) {
		try {
			Map params = new HashMap();
			List columnlist = JDBCUtil.getTableColumns(con, null, null, table);
			params.put("columnlist", columnlist);
			params.put("table", table);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,table).get(0));
			create("validation.ftl", params, JAVA_CODE_GENERATOR_PATH + "action",table.substring(0,1).toUpperCase()+table.substring(1).toLowerCase().replaceAll("_", "") + "Action-validation.xml");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public void generateValidation_properties(String table) {
		try {
			Map params = new HashMap();
			List columnlist = JDBCUtil.getTableColumns(con, null, null, table);
			params.put("columnlist", columnlist);
			params.put("table", table);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,table).get(0));
			create("validation_properties.ftl", params, JAVA_CODE_GENERATOR_PATH + "action",table.substring(0,1).toUpperCase()+table.substring(1).toLowerCase().replaceAll("_", "") + "Action.properties");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}


	public void generateService(String tableName) {
		try {
			Map params = new HashMap();
			List columnlist = JDBCUtil.getTableColumns(con, null, null, tableName);
			params.put("columnlist", columnlist);
			params.put("tableName", tableName);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,tableName).get(0));
			create("service.ftl", params, BASE_PATH+"/src/" + SystemConstant.getProperty("code.service").replace(".","/"),"I"+tableName.substring(0,1).toUpperCase()+tableName.substring(1).toLowerCase().replaceAll("_", "") + "Service.java");
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}

	public void generateServiceImpl(String tableName) {
		try {
			Map params = new HashMap();
			List columnlist = JDBCUtil.getTableColumns(con, null, null, tableName);
			params.put("columnlist", columnlist);
			params.put("tableName", tableName);
			params.put("pk", JDBCUtil.getPrimaryKeyColumns(con, null, null,tableName).get(0));
			create("serviceimpl.ftl", params, BASE_PATH+"/src/" + SystemConstant.getProperty("code.serviceimpl").replace(".","/"),tableName.substring(0,1).toUpperCase()+tableName.substring(1).toLowerCase().replaceAll("_", "") + "Service.java");
		} catch (Exception e) {
			e.printStackTrace();
		}
		
	}
	public void generate(String tableName){
		generateAction(tableName);
		generateApplicationContext();
		generateDao(tableName);
	    generateDaoImpl(tableName);
		generateList(tableName);
		generateModel(tableName);
		generateXwork(tableName);
		generatorJSP(tableName);
		generateValidation(tableName);
		generateValidation_properties(tableName);
		generateService(tableName);
		generateServiceImpl(tableName);
	}
	
	public static void main(String[] args) {
		CodeGenerator generator = new CodeGenerator();
	//	generator.generateDao("ADV_POSITION");
		//generator.generateAction("ADV_POSITION");
		generator.generatorJSP("ADV_POSITION");
	}

	

}

 

 3。下面是jdbc底层操作类

/*
 * JDBCUtil.java
 *
 * Created on November 9, 2002, 4:27 PM
 */

package com.hyj.util;
import java.sql.Connection;
import java.sql.DatabaseMetaData;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Types;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;

import net.sf.hibernate.Hibernate;
import net.sf.hibernate.type.NullableType;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;

/**
 *
 * @author  Administrator
 */
public class JDBCUtil {
	private static final Log logger = LogFactory.getLog(JDBCUtil.class);
	public static class Column {
		public String name;
		public int sqlType;
		public int sqlColumnLength;
		public int sqlDecimalLength;
		public boolean sqlNotNull;
		public boolean sqlReadOnly;
		public NullableType hibernateType;
		public Class javaType;
		public String sqlTypeName;
		public String defalutValue;
		public boolean equals(Object o) {
			boolean rv = false;
			if (o != null && o instanceof JDBCUtil.Column) {
				rv = (name.equals(((JDBCUtil.Column)o).name));
			}
			return rv;
		}
		public int hashCode() {
			return (name != null) ? name.hashCode() : 0;
		}
		public String getName() {
			return name;
		}
		public void setName(String name) {
			this.name = name;
		}
		public NullableType getHibernateType() {
			return hibernateType;
		}
		public void setHibernateType(NullableType hibernateType) {
			this.hibernateType = hibernateType;
		}
		public Class getJavaType() {
			return javaType;
		}
		public void setJavaType(Class javaType) {
			this.javaType = javaType;
		}
		public int getSqlColumnLength() {
			return sqlColumnLength;
		}
		public void setSqlColumnLength(int sqlColumnLength) {
			this.sqlColumnLength = sqlColumnLength;
		}
		public int getSqlDecimalLength() {
			return sqlDecimalLength;
		}
		public void setSqlDecimalLength(int sqlDecimalLength) {
			this.sqlDecimalLength = sqlDecimalLength;
		}
		public boolean isSqlNotNull() {
			return sqlNotNull;
		}
		public void setSqlNotNull(boolean sqlNotNull) {
			this.sqlNotNull = sqlNotNull;
		}
		public boolean isSqlReadOnly() {
			return sqlReadOnly;
		}
		public void setSqlReadOnly(boolean sqlReadOnly) {
			this.sqlReadOnly = sqlReadOnly;
		}
		public int getSqlType() {
			return sqlType;
		}
		public void setSqlType(int sqlType) {
			this.sqlType = sqlType;
		}
		public String getSqlTypeName() {
			return sqlTypeName;
		}
		public void setSqlTypeName(String sqlTypeName) {
			this.sqlTypeName = sqlTypeName;
		}
		public String getDefalutValue() {
			return defalutValue;
		}
		public void setDefalutValue(String defalutValue) {
			this.defalutValue = defalutValue;
		}
		
		
	};
	
	public static List getCatalogs(Connection c) throws SQLException {
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getCatalogs();
			List l = new LinkedList();
			while (rs.next()) {
				l.add(rs.getString(1));
			}
			return l;
		}
		finally {
			if (rs != null) rs.close();
		}
	}
	
	public static Map getSchemas(Connection c) throws SQLException {
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getSchemas();
			Map map = new HashMap();
			List l;
			while (rs.next()) {
				String schema = rs.getString(1);
				String catalog = null;
				if (rs.getMetaData().getColumnCount() > 1) {
					catalog = rs.getString(2);
				};
				l = (List)map.get(catalog);
				if (l == null) {
					l = new LinkedList();
					map.put(catalog, l);
				}
				l.add(schema);
			}
			return map;
		}
		finally {
			if (rs != null) rs.close();
		}
	}
	
	public static List getTables(Connection c, String catalog, String schema, String tablePattern) throws SQLException {
		logger.debug("catalog='" + catalog + "'");
		logger.debug("schema='" + schema + "'");
		logger.debug("table='" + tablePattern + "'");
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getTables(catalog, schema, tablePattern, new String[] {"TABLE", "VIEW", "SYNONYM", "ALIAS"} );
			List l= new LinkedList();
			while (rs.next()) {
				l.add(rs.getString(3));
			}
			return l;
		}
		finally {
			if (rs != null) rs.close();
		}
	}
	
	public static Set getForeignKeyColumns(Connection c, String catalog, String schema, String table) throws SQLException {
		logger.debug("catalog='" + catalog + "'");
		logger.debug("schema='" + schema + "'");
		logger.debug("table='" + table + "'");
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getImportedKeys(catalog, schema, table);
			HashSet columns = new HashSet();
			while (rs.next()) {
				columns.add(rs.getString(8));
			}
			return columns;
		}
		finally {
			if (rs != null) rs.close();
		}
	}
	
	public static List getPrimaryKeyColumns(Connection c, String catalog, String schema, String table) throws SQLException {
		logger.debug("catalog='" + catalog + "'");
		logger.debug("schema='" + schema + "'");
		logger.debug("table='" + table + "'");
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getPrimaryKeys(catalog, schema, table);
			
			List pkColumns = new LinkedList();;
			while (rs.next()) {
				List tmp = getTableColumns(c, catalog, schema, table, rs.getString(4));
				Column pkColumn = (Column)tmp.get(0);
				pkColumns.add(pkColumn);
			}
			return pkColumns;
		}
		finally {
			if (rs != null) rs.close();
		}
	}
	
	public static List getTableColumns(Connection c, String catalog, String schema, String table) throws SQLException  {
		return getTableColumns(c, catalog, schema, table, null);
	}
	
	public static List getTableColumns(Connection c, String catalog, String schema, String table, String columnPattern) throws SQLException {
		logger.debug("catalog='" + catalog + "'");
		logger.debug("schema='" + schema + "'");
		logger.debug("table='" + table + "'");
		logger.debug("column='" + columnPattern+ "'");
		DatabaseMetaData dmd = c.getMetaData();
		ResultSet rs = null;
		try {
			rs = dmd.getColumns(catalog, schema, table, columnPattern);
			List columns = new LinkedList();
			while (rs.next()) {
				JDBCUtil.Column aCol = new JDBCUtil.Column();
				aCol.sqlTypeName = rs.getString(6);
				aCol.defalutValue = rs.getString(13);
				aCol.name = rs.getString(4);
				aCol.sqlType = rs.getShort(5);
				aCol.sqlColumnLength=rs.getInt(7);
				aCol.sqlDecimalLength=rs.getInt(9);
				aCol.sqlNotNull = ("NO".equals(rs.getString(18)));
				aCol.hibernateType = getHibernateType(
					aCol.sqlType,
					aCol.sqlColumnLength,
					aCol.sqlDecimalLength
				);
				aCol.javaType = getJavaType(
					aCol.sqlType,
					aCol.sqlColumnLength,
					aCol.sqlDecimalLength
				);
				columns.add(aCol);
			}
			return columns;
		}
		finally {
			if (rs != null) rs.close();
		}
		
	}
	
	public static NullableType getHibernateType(int sqlType, int columnSize, int decimalDigits) {
		logger.debug("sqlType=" + sqlType);
		logger.debug("columnSize=" + columnSize);
		logger.debug("decimalDigits=" + decimalDigits);
		NullableType rv=Hibernate.SERIALIZABLE;
		if (sqlType == Types.CHAR || sqlType == Types.VARCHAR) {
			rv = Hibernate.STRING;
		}
		else if (sqlType == Types.FLOAT || sqlType == Types.REAL) {
			rv = Hibernate.FLOAT;
		}
		else if (sqlType == Types.INTEGER) {
			rv = Hibernate.INTEGER;
		}
		else if (sqlType == Types.DOUBLE) {
			rv = Hibernate.DOUBLE;
		}
		else if (sqlType == Types.DATE) {
			rv = Hibernate.DATE;
		}
		else if (sqlType == Types.TIMESTAMP) {
			rv = Hibernate.TIMESTAMP;
		}
		else if (sqlType == Types.TIME) {
			rv = Hibernate.TIME;
		}
		// commented to support JDK version < 1.4
		/*      else if (sqlType == Types.BOOLEAN) {
			rv = Hibernate.BOOLEAN;
		} */
		else if (sqlType == Types.SMALLINT) {
			rv = Hibernate.SHORT;
		}
		else if (sqlType == Types.BIT) {
			rv = Hibernate.BYTE;
		}
		else if (sqlType == Types.BIGINT) {
			rv = Hibernate.LONG;
		}
		else if (sqlType == Types.NUMERIC || sqlType == Types.DECIMAL) {
			if (decimalDigits == 0) {
				if (columnSize == 1) {
					rv = Hibernate.BYTE;
				}
				else if (columnSize < 5) {
					rv = Hibernate.SHORT;
				}
				else if (columnSize < 10) {
					rv = Hibernate.INTEGER;
				}
				else {
					rv = Hibernate.LONG;
				}
			}
			else {
				if (columnSize < 9) {
					rv = Hibernate.FLOAT;
				}
				else {
					rv = Hibernate.DOUBLE;
				}
			}
		}
		return rv;
	}
	
	public static Class getJavaType(int sqlType, int columnSize, int decimalDigits) {
		logger.debug("sqlType=" + sqlType);
		logger.debug("columnSize=" + columnSize);
		logger.debug("decimalDigits=" + decimalDigits);
		Class rv=String.class;
		if (sqlType == Types.CHAR || sqlType == Types.VARCHAR) {
			rv = String.class;
		}
		else if (sqlType == Types.FLOAT || sqlType == Types.REAL) {
			rv = Float.class;
		}
		else if (sqlType == Types.INTEGER) {
			rv = Integer.class;
		}
		else if (sqlType == Types.DOUBLE) {
			rv = Double.class;
		}
		else if (sqlType == Types.DATE) {
			//rv = java.util.Date.class;
			rv = String.class;
		}
		else if (sqlType == Types.TIMESTAMP) {
			//rv = java.util.Date.class;
			rv = String.class;
		}
		else if (sqlType == Types.TIME) {
			//rv = java.util.Date.class;
			rv = String.class;
		}
		// commented to support JDK version < 1.4
		/*      else if (sqlType == Types.BOOLEAN) {
			rv = Boolean.class;
		} */
		else if (sqlType == Types.SMALLINT) {
			rv = Short.class;
		}
		else if (sqlType == Types.BIT) {
//			rv = Byte.class;
			rv = Integer.class;
		}
		else if (sqlType == Types.BIGINT) {
			rv = Long.class;
		}
		else if (sqlType == Types.NUMERIC || sqlType == Types.DECIMAL) {
			if (decimalDigits == 0) {
				if (columnSize == 1) {
//					rv = Byte.class;
					rv=  Integer.class;
				}
				else if (columnSize < 5) {
					rv = Short.class;
				}
				else if (columnSize < 10) {
					rv = Integer.class;
				}
				else {
					rv = Long.class;
				}
			}
			else {
				if (columnSize < 9) {
					rv = Float.class;
				}
				else {
					rv = Double.class;
				}
			}
		}
		return rv;
	}

}






 

 

 

 

  • vobuilder.rar (395.5 KB)
  • 描述: 代码自动生成
  • 下载次数: 303
分享到:
评论

相关推荐

    WebWork+Spring+Hibernate整合开发网络书城_02(附源代码)

    Web层:WebWork 中间层:Spring IoC 持久层:Hibernate, 需求分析: 用户在注册页面,填写注册信息,确认有效注册成为新用户 用户在登录页面,填写用户名和密码,确认正确后进入系统 用户可以在登录之后,浏览图书分类列表...

    WebWork+Spring+Hibernate整合开发网络书城_01(附源代码)

    Web层:WebWork 中间层:Spring IoC 持久层:Hibernate, 需求分析: 用户在注册页面,填写注册信息,确认有效注册成为新用户 用户在登录页面,填写用户名和密码,确认正确后进入系统 用户可以在登录之后,浏览图书分类列表...

    webwork spring hibernate整合实例源代码全部jar包

    由于此项目中的jar包不全所以在此补全了webwork spring hibernate整合实例源代码,向大家道歉!

    commons hibernate spring webwork 等的源代码

    收集了commons hibernate spring webwork 等的源代码,都在这个压缩包里面

    webwork spring hibernate整合实例源代码

    本实例把webwork spring hibernate 三个流行框架整合在一起,里面有详细的配置,下载后发布运行即可,有问题的请联系:353262517

    OSGi进阶源代码

    OSGi进阶源代码,OSGi集成webwork + spring + hibernate

    SSH 项目源代码

    SSH 项目源代码 webwork spring hibernate 整合 示例 项目 完整 代码. 里面包括建库脚本,包含所有的jar,导入即可运行.

    J2EE项目开发框架实例源代码(含演示动画)

    J2EE项目开发框架实例源代码(含演示动画)

    java web 框架 源代码

    Java 常用 web 框架源代码,可以直接link myeclipse ,主要包含struts hibernate_src dom4j spring log4 common-fileupload webwork

    Spring 2.0 开发参考手册

    目录 前言 1. 简介 1.1. 概览 1.2. 使用场景 2. Spring 2.0 的新特性 2.1. 简介 ... 源代码级的元数据类型 20.3.5. 接口AutodetectCapableMBeanInfoAssembler 20.3.6. 用Java接口定义管理接口 ...

    Spring中文帮助文档

    11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...

    Spring-Reference_zh_CN(Spring中文参考手册)

    表单输入生成宏 14.4.5.4. 重载HTML转码行为并使你的标签符合XHTML 14.5. XSLT 14.5.1. 写在段首 14.5.1.1. Bean 定义 14.5.1.2. 标准MVC控制器代码 14.5.1.3. 把模型数据转化为XML 14.5.1.4. 定义视图属性 14.5....

    Spring API

    11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...

    spring chm文档

    Spring Framework 开发参考手册 Rod Johnson Juergen Hoeller Alef Arendsen Colin Sampaleanu Rob Harrop Thomas Risberg Darren Davison Dmitriy Kopylenko Mark Pollack Thierry Templier Erwin ...

    Spring in Action(第2版)中文版

    16.2协同使用spring和webwork2/struts2 16.3集成spring和tapestry 16.3.1集成spring和tapestry3 16.3.2集成spring和tapestry4 16.4协同使用spring和jsf 16.4.1解析jsf管理的属性 16.4.2解析springbean 16.4.3...

    Spring in Action(第二版 中文高清版).part2

    16.2 协同使用Spring和WebWork 2/Struts 2 16.3 集成Spring和Tapestry 16.3.1 集成Spring和Tapestry 3 16.3.2 集成Spring和Tapestry 4 16.4 协同使用Spring和JSF 16.4.1 解析JSF管理的属性 16.4.2 解析Spring...

    Spring in Action(第二版 中文高清版).part1

    16.2 协同使用Spring和WebWork 2/Struts 2 16.3 集成Spring和Tapestry 16.3.1 集成Spring和Tapestry 3 16.3.2 集成Spring和Tapestry 4 16.4 协同使用Spring和JSF 16.4.1 解析JSF管理的属性 16.4.2 解析Spring...

    Spring Framework 5.3.6

    • 内建的针对JTA和 单个JDBC数据源的一般化策略,使 Spring 的事务支持不要求Java EE环境,这与一般的JTA或者EJB CMT相反。 • JDBC抽象层提供了有针对性的异常等级(不再从SQL异常中提取原始代码),简化了错误...

Global site tag (gtag.js) - Google Analytics