atitit.动态加载数据库配置in orm

1. 动态加载数据库配置的优点::: 1

1.1. 组合多个配置文件... 1

1.2. 连接多个数据库 1

2. 基本的流程:::getCfg内存对象,,,,生成工厂类,在opoenSession 1

2.1. Hibernate动态添加配置流程 1

2.2. mybatis动态添加配置流程 1

2.3. #===hb code 2

3. 参考 3

1. 动态加载数据库配置的优点:::

1.1. 组合多个配置文件...

1.2. 连接多个数据库

2. 基本的流程:::getCfg内存对象,,,,生成工厂类,在opoenSession

作者:: 老哇的爪子 Attilax 艾龙,  EMAIL:1466519819@qq.com

转载请注明来源: http://blog.csdn.net/attilax

2.1. Hibernate动态添加配置流程

原理配置configuration对象...是配置文件的java对象映射....再也configuration.buildSessionFactory();

=============

configuration.configure(propertyFile);

configuration.setProperty("connection.url", connection_url);

sessionFactory = configuration.buildSessionFactory();

2.2. mybatis动态添加配置流程

·  properties.setProperty("jdbc.password", "动态设置");

·

·  //加载mybatis配置文件和映射文件

·  String resource = "mybatis/mybatis-config.xml";

·  Reader reader = Resources.getResourceAsReader(resource);

·  SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();

·  SqlSessionFactory factory = builder.build(reader, properties);

·  SqlSession session = factory.openSession();

2.3. #===hb code

static  {

try {

configuration.configure(propertyFile);

// o8j

Properties properties = new Properties();

properties.load(new InputStreamReader(new FileInputStream(pathx

.classPath() + "/jdbc.properties"), "utf-8"));

String username = properties.getProperty("jdbc.username").trim();

String password = properties.getProperty("jdbc.password");

String driverClass = properties.getProperty("jdbc.driverClassName")

.trim();

String connection_url = properties.getProperty("jdbc.url").trim();

//configuration.setProperties(properties);

configuration.setProperty("connection.driver_class", driverClass);

configuration.setProperty("connection.url", connection_url);

configuration.setProperty("connection.username", username);

configuration.setProperty("connection.password", password);

configuration.setProperty("hibernate.connection.url",

connection_url);

configuration.setProperty("hibernate.connection.driver_class",

driverClass);

configuration

.setProperty("hibernate.connection.username", username);

configuration

.setProperty("hibernate.connection.password", password);

//end o8j

//当然,除了指定的XML文件外,还可以指定被映射的类,让Hibernate帮你寻找映射定义文件:

//configuration.addClass(GvMaterial.class);

//configuration.addAnnotatedClass(GvMaterial.class);

// configuration.set

//configuration.addResource(resourceName)

sessionFactory = configuration.buildSessionFactory();

} catch (Exception e) {

System.err

.println("%%%% Error Creating SessionFactory %%%%");

e.printStackTrace();

throw new RuntimeException(e);

//ati o8j

}

3. 参考

MyBatis动态连接数据库,动态传入数据库参数 - 海涛的CSDN博客 - 博客频道 - CSDN.NET.htm

转载于:https://www.cnblogs.com/attilax/p/5963883.html

atitit.动态加载数据库配置in orm hibernate mybatis相关推荐

  1. mysql 动态加载数据库数据库连接,如何根据每个客户端动态连接mysql数据库?

    我在这里使用mean stack m=mysql构建一个saas产品 我使用sequelize作为orm for mysql,我的连接: const sequelize = new Sequelize ...

  2. mysql动态加载数据库数据库_Mysql动态更新数据库脚本的示例讲解

    具体的upgrade脚本如下: 动态删除索引 DROP PROCEDURE IF EXISTS UPGRADE; DELIMITER $$ CREATE PROCEDURE UPGRADE() BEG ...

  3. Jquery导航条淡进淡出相册(动态无刷新加载数据库数据)

    原理:AJAX动态加载数据库中图片信息给游览器,利用2个叠词div动态修改内部图片透明度做出淡进淡出效果.(IE6无效) 难点:json数组操作. HTML:就是几个图片容器.加载大图的div pos ...

  4. java 手动加载数据库驱动_JAVA加载数据库驱动(JDBC)

    JAVA加载数据库驱动(JDBC) 前言 之前,对Class.forName("com.mysql.jdbc.Driver");这条动态加载JDBC驱动感觉很疑惑,故有了这篇短文. ...

  5. Linux 2.6内核的编译步骤及模块的动态加载

    本文是基于2.6的内核,也建议各位可以先看一下<Linux内核设计与实现(第二版)>作为一个基础知识的铺垫.当然,从实践角度来看,只要按着以下的步骤去做也应该可以实现成功编译内核及加载模块 ...

  6. Node.js项目中动态加载环境变量配置

    NODE_MODULES:项目中动态加载环境变量配置 开始 在平时的 Node.js 项目开发中,我们需要在项目中添加各种各样的配置:服务端口.服务地址.图片上传.数据库.Redis 等等. 通常情况 ...

  7. java web配置dll文件_JavaWeb项目中dll文件动态加载方法解析(详细步骤)

    相信很多做Java的朋友都有过用Java调用JNI实现调用C或C++方法的经历,那么Java Web中又如何实现DLL/SO文件的动态加载方法呢.今天就给大家带来一篇JAVA Web项目中DLL/SO ...

  8. 在.Net framework中动态加载Assembly的loadFromRemoteSources配置

    简介 在插件类型的应用开发中,我们可能会在程序中动态加载一个assembly文件,创建其中的类对象并使用. 这时,就涉及到了CAS(code access security)和信任沙盒. 一般,我们的 ...

  9. Spring 3.1 –从数据库加载XML配置的属性

    Spring使通过其PropertyPlaceholderConfigurer和(Spring 3.1之前)PropertySourcesPlaceholderConfigurer(Spring 3. ...

最新文章

  1. linux下g编译文件或目录,【转】在linux下使用gcc/g++编译多个.h文件
  2. linux iscsi 服务端,Linux的iscsi磁盘服务
  3. 信息学奥赛一本通 2068:【例2.6】鸡兔同笼
  4. Eigen 简明教程之如何从Python转到Eigen
  5. Kraft 0.50 发布,小型文档管理程序
  6. php高效获取数据分页
  7. win7计算机地址栏在那,win7系统如何使用地址栏功能|win7系统使用地址栏的方法...
  8. 代码修改及模型复查 12-6
  9. my sql实验视图_数据库SQL 视图的创建及使用实验报告(共5篇)
  10. esp8266开发入门教程(基于Arduino)——点亮LED灯
  11. 工作流:设置工作共享项目
  12. java affinity_sched_setaffinity()如何工作?
  13. 方正飞鸿:构建中小企业“两化融合”新模式
  14. 如何修复iPhone、iPad 或 Mac 上的 AirDrop 连接问题?
  15. shio世硕AI智慧指读学习机加入智能教育硬件新战场【无标题】
  16. PPT中含图片太大,需压缩
  17. java全文检索word中的内容_搜索引擎时对WORD,EXCEL,PDF,POWERPOINT文件全文检索的总结...
  18. 造成503 service unavailable常见的原因以及解决方法
  19. 安卓开发———打开相机拍照或者打开相册选择照片并显示出来
  20. 日语中那些表示复数概念的表达方式

热门文章

  1. Chapter7-11_Deep Learning for Question Answering (2/2)
  2. LeetCode 1717. 删除子字符串的最大得分
  3. LeetCode 996. 正方形数组的数目(回溯+剪枝)
  4. LeetCode 69. x 的平方根(二分查找)
  5. LeetCode 1008. 先序遍历构造二叉树(已知先序,求二叉搜索树)
  6. RDD持久化、广播、累加器
  7. 小小算法题(CCF)
  8. 解决mysql导数据时,格式不对、导入慢、丢数据的问题
  9. AllenAI | 用GPT-3帮助增建数据,NLI任务直接提升十个点!?
  10. 中科院博士整理的机器学习算法知识手册,完整 PDF 开放下载!