zoukankan      html  css  js  c++  java
  • 编写powerdesigner字段数据设计文档

    package com.winway.wcloud.protal.gym;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.List;
    
    import com.mysql.jdbc.PreparedStatement;
    
    public class ConnectionManager {
        private static Connection conn;
        private static Statement statement;
        public static Connection getConnection(){
            String driver="com.mysql.jdbc.Driver";
            String url="jdbc:mysql://127.0.0.1:3306/c79740000011";
            String user="root";
            String password="123456";
            try {
                Class.forName(driver);
                conn=DriverManager.getConnection(url, user, password);
                
            } catch (ClassNotFoundException | SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            return conn;
        }
        public static void close(PreparedStatement statement,ResultSet resultSet){
            /*if(){
                
            }*/
        }
        
        public static void save(List<World> list){
            String sql=getSql(list);
            System.out.println(sql);
            if(sql==null){
                return;
            }
            try {
                if(getConnection()==null){
                    System.out.println("连接失败");
                    return;
                }
                Statement statement=getConnection().createStatement();
                //删除
                String delete="delete from gym_world";
                boolean dele=statement.execute(delete);
                System.out.println("是否删除"+dele);
                int line=statement.executeUpdate(sql);
                System.out.println("插入["+line+"]行");
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }finally{
                    try {
                        if(statement!=null)statement.close();
                        if(conn!=null)conn.close();
                    } catch (SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
            }
        }
        public static String getSql(List<World> list){
            StringBuffer sqlBf=new StringBuffer("insert into gym_world values ");
            if(list==null||list.size()==0){
                return null;
            }
            for(int i=0;i<list.size();i++){
                
                sqlBf.append("('").append(list.get(i).getXh()).append("',");
                sqlBf.append("'"+list.get(i).getName()).append("',");
                sqlBf.append("'"+list.get(i).getDesc()).append("',");
                sqlBf.append("'"+list.get(i).getDataType()).append("',");
                sqlBf.append("'"+list.get(i).getLength()).append("',");
                sqlBf.append("'"+list.get(i).getIsNull()).append("',");
                sqlBf.append("'").append("'");
                sqlBf.append(")");
                if(i!=(list.size()-1)){
                    sqlBf.append(",");
                }
            }
            return sqlBf.toString();
        }
    }
    //////////////////////////////////////////////////////////////////////entity反射注释///////////////////////////////////////////////////////////////////////////
    package com.winway.wcloud.protal.gym;
    
    import java.lang.annotation.Annotation;
    import java.lang.reflect.Field;
    import java.util.ArrayList;
    import java.util.List;
    
    import com.winway.edcollection.data.entity.EcTowerEntity;
    import com.winway.edcollection.data.entity.EdpOrgInfoEntity;
    import com.winway.edcollection.data.entity.EdpRoleInfoEntity;
    import com.winway.edcollection.data.entity.EdpRoleUserEntity;
    import com.winway.edcollection.data.entity.EdpUserInfoEntity;
    import com.winway.edcollection.data.entity.FDamagedDevEntity;
    import com.winway.edcollection.data.entity.FMeteorologicalDevEntity;
    import com.winway.edcollection.data.entity.FMeteorologicalLogEntity;
    import com.winway.edcollection.data.entity.FRealLogEntity;
    import com.winway.edcollection.data.entity.FTripEntity;
    import com.winway.edcollection.data.entity.FWarningDevEntity;
    import com.winway.edcollection.data.entity.FWarningEntity;
    import com.winway.edcollection.data.entity.FWarningRecipientEntity;
    import com.winway.edcollection.data.entity.TfDamagedDevItem;
    import com.winway.edcollection.data.entity.TfDamagedDevTower;
    import com.winway.edcollection.data.entity.TfPossiblePathEntity;
    import com.winway.edcollection.data.entity.TfRealPointsEntity;
    import com.winway.edcollection.data.entity.TfTyphoonEntity;
    import com.winway.edcollection.data.entity.TfYbPointsEntity;
    
    public class ExcuteClassEntityColumn {
        public static List<World> getTable(Class<?> clazz){
            List<World> list=new ArrayList<World>();
            //Class<TfTyphoonEntity> clazz=TfTyphoonEntity.class;
            Field[] fields=clazz.getDeclaredFields();
            int indexJ=1;
            for(Field field:fields){
                Annotation[]  annos=field.getAnnotations();
                for(Annotation annotation:annos){
                    //System.out.println(annotation.toString());
                    if(annotation.toString().contains("@com.winway.wcloud.dbcore.annotation.Id")){
                        continue;
                    }
                    String annotationStr=annotation.toString();
                    String name=annotationStr.substring(annotationStr.indexOf("name=")+5, annotationStr.indexOf(")")).toUpperCase();
                    String descccc=annotationStr.substring(annotationStr.indexOf("desc="));
                    
                    String desc=descccc.substring(descccc.indexOf("desc=")+5, descccc.indexOf(","));
                    String dataType11=annotationStr.substring(annotationStr.indexOf("dataType="));
                    String dataType=dataType11.substring(dataType11.indexOf("dataType=")+9, dataType11.indexOf(","));
                    String length11=annotationStr.substring(annotationStr.indexOf("length="));
                    String length=length11.substring(length11.indexOf("length=")+7, length11.indexOf(","));
                    String isNull11=annotationStr.substring(annotationStr.indexOf("isNull="));
                    String isNull=isNull11.substring(isNull11.indexOf("isNull=")+7, isNull11.indexOf(","));
                    if(isNull.equals("true")){
                        isNull="否";
                    }else{
                        isNull="否";
                    }
                    if(dataType.toUpperCase().endsWith("STRING")){
                        dataType="VARCHAR";
                    }
                    if(dataType.toUpperCase().endsWith("DECIMAL")){
                        dataType="DOUBLE";
                        length="0";
                    }
                    System.out.println(indexJ+" "+name+" "+desc+" "+" "+dataType+" "+length+" "+isNull);
                    World world=new World(indexJ,name, desc, dataType, Integer.valueOf(length), isNull);
                    list.add(world);
                    indexJ++;
                }
            }
            return list;
        }
        public static void main(String[] args) {
            //读取entity反射
            List<World> list=ExcuteClassEntityColumn.getTable(EcTowerEntity.class);
            ConnectionManager.save(list);
        }
        
        
        
        
    }
    /////////////////////////////////////////////////////////////////////////////Excel内容保持到数据库里////////////////////////////////////////////////////////////////////
    package com.winway.wcloud.protal.gym; import java.io.File; import java.io.IOException; import java.text.DecimalFormat; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Date; import java.util.List; import org.apache.poi.EncryptedDocumentException; import org.apache.poi.openxml4j.exceptions.InvalidFormatException; import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.DateUtil; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet; import org.apache.poi.ss.usermodel.Workbook; import org.apache.poi.ss.usermodel.WorkbookFactory; import com.winway.wcloud.protal.util.Excel2DBUtils; public class ExcuteExcelContent { static String[] heads={"Name","Code","Data Type","Length"}; public static List<World> readData(){ List<World> worlds=new ArrayList<World>(); Workbook workBook = null; Sheet sheet; Row row; Cell cell; try { workBook=WorkbookFactory.create(new File("C:/Users/gym/Desktop/world.xlsx")); sheet=workBook.getSheetAt(0); int rowlastNum=sheet.getLastRowNum(); int xh=1; for(int rowindex=2;rowindex<=rowlastNum;rowindex++){ boolean reg=false; row=sheet.getRow(rowindex); World world=new World(); if(row==null){ continue; } for(int i=0;i<heads.length;i++){ cell=row.getCell(i); String value=getCellValue(cell); System.out.println(value); if(i==0&&(value==null||value.equals(""))){ break; } changeValue(i, value, world); reg=true; } if(reg){ world.setRemark(""); world.setIsNull("否"); world.setXh(xh); System.out.println(); worlds.add(world); xh++; } } } catch (EncryptedDocumentException | InvalidFormatException | IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ try { if(workBook!=null)workBook.close(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } return worlds; } static void changeValue(int i,String value,World world){ switch (heads[i]) { case "Name": world.setDesc(value); break; case "Code": world.setName(value); break; case "Data Type": if(value.contains("varchar")){ value="VARCHAR"; } world.setDataType(value.toUpperCase()); break; case "Length": if(value==null||value.equals("")){ world.setLength(0); }else{ world.setLength(Integer.valueOf(value)); } break; default: break; } } public static String getCellValue(Cell cell) { if(cell==null){ return null; } String value = ""; // 以下是判断数据的类型 switch (cell.getCellType()) { case Cell.CELL_TYPE_NUMERIC: value = cell.getNumericCellValue() + ""; if (DateUtil.isCellDateFormatted(cell)) { Date date = cell.getDateCellValue(); if (date != null) { value = new SimpleDateFormat("yyyy-MM-dd").format(date); } else { value = ""; } } else { value = new DecimalFormat("0").format(cell.getNumericCellValue()); } break; case Cell.CELL_TYPE_STRING: // 字符串 value = cell.getStringCellValue(); break; case Cell.CELL_TYPE_BOOLEAN: // Boolean value = cell.getBooleanCellValue() + ""; break; case Cell.CELL_TYPE_FORMULA: // 公式 value = cell.getCellFormula() + ""; break; case Cell.CELL_TYPE_BLANK: // 空值 value = ""; break; case Cell.CELL_TYPE_ERROR: // 故障 value = "非法字符"; break; default: value = "未知类型"; break; } return value; } public static void main(String[] args) { List<World> list=ExcuteExcelContent.readData(); ConnectionManager.save(list); } }
    /*
    Navicat MySQL Data Transfer
    
    Source Server         : 广西
    Source Server Version : 50637
    Source Host           : localhost:3306
    Source Database       : c79740000011
    
    Target Server Type    : MYSQL
    Target Server Version : 50637
    File Encoding         : 65001
    
    Date: 2018-03-06 15:39:03
    */
    
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    -- Table structure for gym_world
    -- ----------------------------
    DROP TABLE IF EXISTS `gym_world`;
    CREATE TABLE `gym_world` (
      `xh` int(255) DEFAULT NULL,
      `name` varchar(255) DEFAULT NULL,
      `desc` varchar(255) DEFAULT NULL,
      `dataType` varchar(255) DEFAULT NULL,
      `length` int(100) DEFAULT NULL,
      `isNull` varchar(255) DEFAULT NULL,
      `remark` varchar(255) DEFAULT NULL
    ) ENGINE=InnoDB DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT;
    
    -- ----------------------------
    -- Records of gym_world
    -- ----------------------------
    INSERT INTO `gym_world` VALUES ('1', 'TF_EVALUATION_RESULT_ID', '结果ID', 'INT', '0', '', '');
    INSERT INTO `gym_world` VALUES ('2', 'EVALUATION_TIME', '评估时间', 'DATETIME', '0', '', '');
    INSERT INTO `gym_world` VALUES ('3', 'CAPTION', '标题', 'VARCHAR', '50', '', '');
    INSERT INTO `gym_world` VALUES ('4', 'GRADE', '评分', 'DOUBLE', '0', '', '');
    INSERT INTO `gym_world` VALUES ('5', 'GRADE_LEVEL', '评分等级', 'INT', '0', '', '');
    INSERT INTO `gym_world` VALUES ('6', 'RESULT_DESC', '结果描述', 'VARCHAR', '100', '', '');
    INSERT INTO `gym_world` VALUES ('7', 'RESULT_SHOW', '结果显示', 'VARCHAR', '300', '', '');
  • 相关阅读:
    面向对象--选课系统作业
    面向对象--本章总结
    面向对象--本章总结---练习题
    16 python 异常处理
    5.15 python 面向对象的软件开发&领域模型
    14 元类
    intellijidea课程 intellijidea神器使用技巧 6-2 数据库关联
    intellijidea课程 intellijidea神器使用技巧 6-1 Spring的关联
    intellijidea课程 intellijidea神器使用技巧 5-2 localhistory
    intellijidea课程 intellijidea神器使用技巧 5-1 svn相关
  • 原文地址:https://www.cnblogs.com/gym2017/p/8514654.html
Copyright © 2011-2022 走看看