SpringMVC整合国产达梦数据库

因业务要求,需要使用国产数据库,了解了几大国产数据库,最后决定使用达梦数据库,本文记录了达梦数据库的数据库迁移功能、springmvc整合达梦数据库具体的操作过程

1、达梦数据库安装

       访问达梦数据库官网(http://www.dameng.com/)下载适合自己环境的安装文件,需要注册成为会员,下载zip包,解压zip发现是一个百度网盘地址以及提取码,下载....下载完成按照提示安装(不得不说,国产数据库安装在用户体验上做的还是不错的)

补充:对于开发人员来说,达梦数据库在sql语法使用发面和oracle语法基本一致,只是达梦数据库引入了“模式”的概念,以前oracle数据库或者mysql数据库我们使用都是直接用户登录,sql就直接开始按照业务去写 select user_name from user_table 这样,达梦数据库引入“模式”后,sql变成了   select user_name from 模式.user_table   而且必须得加入模式.表名这种方式,如果还是按照oracle那种方式来做的话,创建完数据库用户之后,会自动生成一个和用户名相同的模式,而且该用户下面不能在新建其它的模式,个人理解的“模式”更像是业务系统中对模块的划分,通过模式更便于管理模块中涉及的表。

2、达梦数据迁移工具

达梦对于以前上线系统数据迁移也考虑的比较详细,为了解决数据割接,达梦数据库自带了达梦数据迁移工具

SpringMVC整合国产达梦数据库

打开达梦数据迁移工具--->点击新建工程--->新建工程成功后点击迁移--->新建迁移--->右侧工作区点击下一步--->选择需要进行的转换(我是从oracle转到DM7)--->配置数据源---->指定数据源驱动(ojdbc14-10.2.0.2.0.jar)--->配置目的源(DM7)--->指定目的源驱动(达梦数据库新建用户步骤省略。达梦数据库驱动下载地址,https://download.****.net/download/xiangxu_hu/11774977)--->选择导入的模式(及数据库用户名)--->选择需要进行迁移的表---->进行数据迁移

SpringMVC整合国产达梦数据库

数据迁移完成

3、springmvc整合达梦数据库

完成数据库创建后,下一步进行springmvc的整合,由于我的项目中用到了jpa,需要使用hibernate,达梦数据库也支持hibernate,将DmDialect-for-hibernate4.0.jar和Dm7JdbcDriver17.jar包加入的项目lib下,通过修改pom.xml文件进行本地jar引入

<!--达梦数据库jpa-->
<dependency>
  <groupId>com.dm.dialect</groupId>
  <artifactId>hibernate4</artifactId>
  <version>4.0</version>
          <scope>system</scope>
          <systemPath>${basedir}/webapp/WEB-INF/lib/DmDialect-for-hibernate4.0.jar</systemPath>
 </dependency>
<!--达梦数据库驱动-->
<dependency>
   <groupId>com.dm</groupId>
   <artifactId>Dm7JdbcDriver</artifactId>
   <version>1.8</version>
   <scope>system</scope>
   <systemPath>${basedir}/webapp/WEB-INF/lib/Dm7JdbcDriver18.jar</systemPath>
</dependency>

 

修改数据库配置文件

jdbc.driver=dm.jdbc.driver.DmDriver
jdbc.url=jdbc:dm://127.0.0.1:5236
jdbc.accout=账号
jdbc.password=密码

修改springmvc配置文件中 指定hibernate引用

<!-- 用于设置JPA实现达梦数据库的特定属性 -->
<bean id="hibernateJpaVendorAdapter" class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter">
   <property name="databasePlatform" value="org.hibernate.dialect.DmDialect">

   </property>
</bean>

 打包测试,通过