当前位置: 首页 > news >正文

济南网站优化技术厂家搜索引擎营销的典型案例

济南网站优化技术厂家,搜索引擎营销的典型案例,模型网站大全免费,软件制作需要多少钱需求 springboot设计开发一个系统,在这个系统的数据库表中存放着2000个数据库实例,有MySQL、Oracle、sql server3种数据库类型,用户可以在页面上选择不同的实例,连接这些实例上的数据库,来执行业务sql 实现 Service…

需求

springboot设计开发一个系统,在这个系统的数据库表中存放着2000个数据库实例,有MySQL、Oracle、sql server3种数据库类型,用户可以在页面上选择不同的实例,连接这些实例上的数据库,来执行业务sql

实现

@Service
public class DatabaseService {@Autowiredprivate DynamicDataSource dynamicDataSource;@Autowiredprivate JdbcTemplate jdbcTemplate;public void executeSqlOnDatabase(int instanceId, String sql) {// 根据实例ID获取数据库实例信息DatabaseInstance instance = databaseInstanceService.getInstanceById(instanceId);if (instance == null) {throw new IllegalArgumentException("Invalid database instance ID: " + instanceId);}// 构建数据源配置HikariConfig config = new HikariConfig();config.setJdbcUrl(generateJdbcUrl(instance));config.setUsername(instance.getUsername());config.setPassword(instance.getPassword());config.setDriverClassName(getDriverClassName(instance.getDatabaseType()));// 创建数据源HikariDataSource dataSource = new HikariDataSource(config);// 动态添加数据源String dataSourceKey = instance.getIp() + ":" + instance.getPort();dynamicDataSource.addTargetDataSource(dataSourceKey, dataSource);try {// 切换到新的数据源DynamicDataSourceContextHolder.setDataSourceKey(dataSourceKey);// 执行SQLjdbcTemplate.execute(sql);} catch (DataAccessException e) {// 处理异常e.printStackTrace();} finally {// 操作完成后,切换回默认数据源或清理当前数据源DynamicDataSourceContextHolder.clearDataSourceKey();dynamicDataSource.removeTargetDataSource(dataSourceKey);// 关闭数据源dataSource.close();}}private String generateJdbcUrl(DatabaseInstance instance) {String databaseType = instance.getDatabaseType();String ip = instance.getIp();int port = instance.getPort();String databaseName = instance.getDatabaseName();switch (databaseType.toLowerCase()) {case "mysql":return "jdbc:mysql://" + ip + ":" + port + "/" + databaseName;case "oracle":return "jdbc:oracle:thin:@" + ip + ":" + port + ":" + databaseName;case "sqlserver":return "jdbc:sqlserver://" + ip + ":" + port + ";databaseName=" + databaseName;default:throw new IllegalArgumentException("Unsupported database type: " + databaseType);}}private String getDriverClassName(String databaseType) {switch (databaseType.toLowerCase()) {case "mysql":return "com.mysql.cj.jdbc.Driver";case "oracle":return "oracle.jdbc.driver.OracleDriver";case "sqlserver":return "com.microsoft.sqlserver.jdbc.SQLServerDriver";default:throw new IllegalArgumentException("Unsupported database type: " + databaseType);}}
}
public class DynamicDataSourceContextHolder {private static final ThreadLocal<String> CONTEXT_HOLDER = new ThreadLocal<>();public static void setDataSourceKey(String key) {CONTEXT_HOLDER.set(key);}public static String getDataSourceKey() {return CONTEXT_HOLDER.get();}public static void clearDataSourceKey() {CONTEXT_HOLDER.remove();}
}
http://www.yayakq.cn/news/922295/

相关文章:

  • 网站网络投票建设模板网站建设不力 被问责
  • 阿里云建站是外包的吗网站页面设计师
  • 天水 网站建设微信公众官方平台入口
  • 外贸网站源码去一品资源怎么发布网站
  • 有哪些做平面设计好素材网站站长统计网站
  • 如何弄网站深圳网络推广引流
  • 志愿海南网站深圳12个区排名
  • 公司网页网站建设ppt模板下载德州营销型网站
  • 福建省住房和城乡建设厅门户网站住房城乡住房和城乡建设部网站首页
  • 长沙网站托管哪家好html5手机资讯网站模板
  • 上虞中国建设银行官网站免费咨询话术
  • visio网站开发流程图长春seo网站排名优化
  • 网站建设论证方案赣州培训学做网站
  • 云羽网络做网站怎么样wordpress 安卓主题
  • 溧水114网站开发php+ajax网站开发典型实例 pdf
  • 广告设计公司深圳策划设计公司天津关键词优化平台
  • 诱导网站怎么做网站有pc站和手机站
  • 外企网站建设湖南佳程建设有限公司网站
  • 开发小网站排名ip域名查询地址
  • 做的网站客户拿去维违法小广告治理
  • 贵州手机网站建设网站建设邮
  • 掌握商务网站建设内容腾讯企业邮箱入口网页版
  • 南宁做网站方案网站注册查询
  • 天津武清网站开发网站seo优化技巧
  • 哪些网站可以免费做h5智慧团建官网pc端
  • 网站推广怎么做关键词知名设计公司
  • 装修网站平台推荐南宫28在线注册网站
  • wap网站 劣势同城app开发价目表
  • 在线免费解答网站怎么建佛山市禅城网站建设公司
  • 网站程序怎么做做神秘顾客哪个网站好