先上原文

https://blog.csdn.net/Helloworld_pang/article/details/114266130

一、SpringBoot + 神通数据库

基本上按照上面的参考,是可以连接上神通数据库的,主要注意几点:

1、依赖

目前公共仓库应该没有神通数据库所需要的依赖,按照参考,引入oscarJDBC16到自己的仓库,然后就可以引用了。当然,如果只是先测试一下,也可以先不用maven直接导入。注意,oscarJDBC16.jar在神通数据安装目录下应该能找到。下面是导入本地仓库的方法

mvn install:install-file -DgroupId=com.stdb -DartifactId=stoscarJDBC16 -Dversion=1.0 -Dpackaging=jar -Dfile=G:\evm-tools\evm-tools\st-jar\oscarJDBC16.jar 

// -Dfile:jar包在硬盘上的位置
// -DgroupId, -DartifactId, -Dversion:三个参数,指定存放maven仓库中的位置(与引入依赖时的属性相对应,自定义);
// -Dpackaging :打包类型,例如JAR;
 <dependency>
<groupId>com.stdb</groupId>
<artifactId>stoscarJDBC16</artifactId>
<version>1.0</version>
</dependency>

2、配置文件

看参考就行(类似集成mysql的配置)

spring.datasource.url=jdbc:oscar://127.0.0.1:2003/OSRDB?serverTimezone=UTC&useSSL=FALSE
spring.datasource.username=SYSDBA
spring.datasource.password=szoscar55
spring.datasource.driver-class-name=com.oscar.Driver

至此,启动SpringBoot项目,应该是没问题的

二、SpringBoot + 神通数据库 + JPA

SpringBoot + mysql + JPA 还是挺好用的,在这里也可以实现 SpringBoot + 神通数据库 + JPA。喜欢MyBits的,若有问题,可以去咨询原文的博主。

以下代码都是手打,若有拼写错误,请见谅。

1、JPA的自动建表功能还是挺方便的,需要在SpringBoot配置文件中加入(在此之前,记得加入JPA依赖到maven中)

import lombok.Data
import javax.persistence.* @Entity
@Table(name="T1",shema="YQQ")
@Data // 这个注解是lombok的
public class YqqT1 { @Id
private String id; private String name; }

2、现在启动会发现报dialect错误,需要增加hibernate依赖

类似这种报错:https://blog.csdn.net/boling_cavalry/article/details/79342319

 刚才已经添加了oscarJDBC16,同理需要添加OscarHibernate,方法同添加oscarJDBC16一样

添加到本地仓库后,在pom.xml中引用就行

然后在配置文件中增加

spring.jpa.database-platform=org.hibernate.dialect.OscarHibernate

3、现在启动项目,就不会报错了,并且在神通数据库中自动建表成功。当然,前提是要开启自动建表

spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true

4、接下来可以尝试一下JPA简单的增删查改

在写接口之前,再说一下实体类YqqT1

主键自增是经常用到的,如果要连接神通数据库使用主键自增,可以增加一些注解,需要使用 @GeneratedValue等注解

参考:https://blog.csdn.net/weixin_34097242/article/details/89649815

1)第一种方法

修改后的YqqT1如下:

import lombok.Data
import javax.persistence.* @Entity
@Table(name="T1",shema="YQQ")
@Data // 这个注解是lombok的
public class YqqT1 { @Id
@sequenceGenerator(sequenceName="sequence1", name="t1",allocationSize=1)
@GeneratedValue(strategegy =GenerationType.SENQUENCE,generator = "t1")
private Integer id;

private String name;
}

这样的话,在新增数据时,只需要传入name参数,id会自动生成,不过呢,我看了看神通数据库中,id字段属性中,‘自动生成’ 这个字段并没有被打钩

注意一下 sequenceName,可以使用

select nextval('sequence1');    查询

drop sequence sequence1;    删除

create sequence sequence1 start with 1 increment by 1;    创建

2)第二种方法

我发现改成  @GeneratedValue(strategegy =GenerationType.IDENTITY,generator = "t1") 也可以,(可能存在问题)

3)第三种方法

修改后的YqqT1如下:

import lombok.Data
import javax.persistence.* @Entity
@Table(name="T1",shema="YQQ")
@Data // 这个注解是lombok的
public class YqqT1 { @Id
@GeneratedValue(strategegy =GenerationType.IDENTITY)
private Integer id; private String name; }

但是!使用上面这种,需要手动在数据库 id字段的 ‘自动生成’ 属性打钩

-----

未完

SpringBoot+神通数据库+JPA的更多相关文章

  1. [转] Springboot的数据库操作

    转载自:https://www.cnblogs.com/juncaoit/p/7789034.html springBoot的数据库操作 一:操作数据库起步 1.Spring-Data-Jpa JPA ...

  2. Springboot spring data jpa 多数据源的配置01

    Springboot spring data jpa 多数据源的配置 (说明:这只是引入了多个数据源,他们各自管理各自的事务,并没有实现统一的事务控制) 例: user数据库   global 数据库 ...

  3. SpringBoot基于数据库实现简单的分布式锁

    本文介绍SpringBoot基于数据库实现简单的分布式锁. 1.简介 分布式锁的方式有很多种,通常方案有: 基于mysql数据库 基于redis 基于ZooKeeper 网上的实现方式有很多,本文主要 ...

  4. SpringBoot系列教程JPA之新增记录使用姿势

    SpringBoot系列教程JPA之新增记录使用姿势 上一篇文章介绍了如何快速的搭建一个JPA的项目环境,并给出了一个简单的演示demo,接下来我们开始业务教程,也就是我们常说的CURD,接下来进入第 ...

  5. 测试开发专题:spring-boot如何使用JPA进行双向一对多配置

    本片文章我们主要介绍spring-boot如何进行JPA的配置以及如何进行实体间的一对多配置. 依赖准备 要在spring-boot使用jpa需要在项目中有进入相关的依赖,pom文件里加入下面内容 & ...

  6. 国产神通数据库操作备忘(Linux)

    最近接触到国产神通数据库的一个项目,发现这个数据库还是挺有技术含量的,看起来做的还不错. 1.启动停止 在终端窗口中输入以下命令启动数据库: # /etc/init.d/oscardb_<数据库 ...

  7. SpringBoot整合StringData JPA

    目录 SpringBoot整合StringData JPA application.yml User.class UserRepository.java UserController SpringBo ...

  8. SpringBoot使用数据库

    这一篇简单介绍一下SpringBoot配置数据库的配置(依赖和application.properties),以下全是以本地数据库为例子,具体用户名密码地址都根据实际去修改. Mysql数据库: po ...

  9. 解决springboot druid 数据库批量更新错误问题

    原文:https://www.2cto.com/kf/201712/706399.html springboot druid 数据库多SQL错误multi-statement not allow Ca ...

随机推荐

  1. URL+http协议

  2. velocity示例

    创建maven项目 pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns ...

  3. Selenium和PhantomJS

    Selenium Selenium是一个Web的自动化测试工具,最初是为网站自动化测试而开发的,类型像我们玩游戏用的按键精灵,可以按指定的命令自动操作,不同是Selenium 可以直接运行在浏览器上, ...

  4. 【C/C++】习题3-7 DNA/算法竞赛入门经典/数组与字符串

    [题目] 输入m组n长的DNA序列,要求找出和其他Hamming距离最小的那个序列,求其与其他的Hamming距离总和. 如果有多个序列,求字典序最小的. [注]这道题是我理解错误,不是找出输入的序列 ...

  5. 学习整理--flex布局(1)

    父元素容器属性 flex-direction: row(默认).row-reverse.column.column-reverse row: 横向正序排列子元素 colimn: 竖向正序排列子元素 r ...

  6. ASP.NET WebApi 依赖 SAP Connector dll 报错

    说明 本地 VS 开发 ASP.NET WebApi 调试运行没有问题,但发布到服务器 IIS 上就报错.结果发现是 SAP 依赖库的问题:sapnco.dll.sapnco_utils.dll. 错 ...

  7. ORALE 误删表 Flashback 恢复表

    昨天因为种种原因误删了很多表(160多个),一下炸了锅. 我知道影响很大,第一时间想到使用 Flashback 恢复过来.Flashback 听过很久,但是没真正上手过,恢复之后发现使用起来也很简单. ...

  8. 解析Redis操作五大数据类型常用命令

    摘要:分享经常用到一些命令和使用场景总结,以及对Redis中五大数据类型如何使用cmd命令行的形式进行操作的方法. 本文分享自华为云社区<Redis操作五大数据类型常用命令解析>,作者:灰 ...

  9. 巧用符号链接迁移 HDFS 数据,业务完全无感知!

    问题 JuiceFS 是一个基于对象存储的分布式文件系统,在之前跟对象存储比较的文章中已经介绍了 JuiceFS 能够保证数据的强一致性和极高的读写性能,因此完全可以用来替代 HDFS.但是数据平台整 ...

  10. CF157A Game Outcome 题解

    Content 有一个 \(n\times n\) 的矩阵,每个元素都有一个权值.求所有满足其所在纵列所有元素权值和大于其所在横列所有元素权值和的元素个数. 数据范围:\(1\leqslant n\l ...