¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.vci.ubcs.ddl.processor.ddl; |
| | | |
| | | |
| | | import com.vci.ubcs.ddl.mapper.DdlMapper; |
| | | import com.vci.ubcs.ddl.mapper.DdlMySqlMapper; |
| | | import com.vci.ubcs.starter.util.VciSpringUtil; |
| | | import com.vci.ubcs.starter.web.util.VciBaseUtil; |
| | | import org.springframework.stereotype.Component; |
| | | import org.springframework.stereotype.Repository; |
| | | import org.springframework.util.CollectionUtils; |
| | | |
| | | import javax.annotation.PostConstruct; |
| | | import javax.annotation.Resource; |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * Description:MySqlçæ°æ®åºæä½ |
| | | * |
| | | * @author LiHang |
| | | * @date 2023/4/24 |
| | | */ |
| | | @Component |
| | | public class DdlMySqlMapperProcessor extends DdlMapperProcessor{ |
| | | |
| | | private static DdlMapper mapper = VciSpringUtil.getBean(DdlMySqlMapper.class); |
| | | |
| | | public DdlMySqlMapperProcessor() { |
| | | super(mapper); |
| | | System.out.println("-----------------"); |
| | | if (mapper != null){ |
| | | System.out.println("[success]::å è½½MySqlæ°æ®åºDDLæä½æå¡æå"); |
| | | }else { |
| | | System.out.println("[fail]::å è½½MySqlæ°æ®åºDDLæä½æå¡å¤±è´¥"); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public boolean support(String url) { |
| | | return "com.mysql.cj.jdbc.Driver".equals(url); |
| | | } |
| | | |
| | | @Override |
| | | public void modifyTableBySqlBase(String tableName, String attributeSql) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | List<String> modifyColumnSqlList = VciBaseUtil.str2List(attributeSql); |
| | | if (!CollectionUtils.isEmpty(modifyColumnSqlList)) { |
| | | modifyColumnSqlList.stream().forEach(s -> { |
| | | sb.append(SPACE).append("modify").append(SPACE).append(s).append(SPACE).append(","); |
| | | }); |
| | | } |
| | | modifyTableBySql(tableName,sb.substring(0, sb.lastIndexOf(","))); |
| | | } |
| | | |
| | | /** |
| | | * åæ°æ®åºè¡¨ä¸æ·»å åä¸ªåæ®µ |
| | | * |
| | | * @param tableName è¡¨æ ¼çåç§° |
| | | * @param attributeSql è¦æ·»å çæ°çsql |
| | | * @return å½±åçè¡æ° |
| | | */ |
| | | @Override |
| | | public int addColumn2TableBySql(String tableName, String attributeSql) { |
| | | StringBuilder sb = new StringBuilder(); |
| | | List<String> modifyColumnSqlList = VciBaseUtil.str2List(attributeSql); |
| | | if (!CollectionUtils.isEmpty(modifyColumnSqlList)) { |
| | | modifyColumnSqlList.stream().forEach(s -> { |
| | | sb.append(SPACE).append("add").append(SPACE).append(s).append(SPACE).append(","); |
| | | }); |
| | | return mapper.addColumn2TableBySql(tableName, sb.substring(0, sb.lastIndexOf(","))); |
| | | } |
| | | return 0; |
| | | } |
| | | } |