1)介绍

武汉达梦数据库股份有限公司,是专业提供集大数据平台架构咨询,数据技术方案规划,产品部署与实施于一体的大数据平台公司。40年来始终坚持原始创新、独立研发,掌握核心技术和前沿技术,掌握全部源代码,拥有完全自主知识产权。

数据库官网:https://www.dameng.com/DM8.html

新一代大型通用关系型数据库,全面支持 SQL 标准和主流编程语言接口/开发框架。行列融合存储技术,满足 HTAP 混合应用场景。

DM8文档:https://eco.dameng.com/document/dm/zh-cn/pm/index.html

2)安装

Linux环境安装

文档:https://eco.dameng.com/document/dm/zh-cn/start/install-dm-linux-prepare.html

重要-创建DB

./dminit path=/dmdata/data PAGE_SIZE=32 EXTENT_SIZE=32 CASE_SENSITIVE=y CHARSET=1 DB_NAME=DMTPFANG INSTANCE_NAME=DBSERVER PORT_NUM=5237 SYSDBA_PWD=Dm123456789  SYSAUDITOR_PWD=Dm123456789

重要-注册服务

./dm_service_installer.sh -t dmserver -dm_ini /dmdata/data/DMTPFANG/dm.ini -p DMTPFANG

3)远程链接

下载并且安装达梦客户端

https://eco.dameng.com/document/dm/zh-cn/start/dm-install-windows.html

4)springboot中使用

设置依赖

<!-- https://mvnrepository.com/artifact/com.dameng/DmJdbcDriver18 -->
<dependency>
  <groupId>com.dameng</groupId>
  <artifactId>DmJdbcDriver18</artifactId>
  <version>8.1.3.140</version>
</dependency>

<dependency>
  <groupId>com.baomidou</groupId>
  <artifactId>mybatis-plus-boot-starter</artifactId>
  <version>3.4.1</version>
</dependency>

创建配置文件application.yml,进行配置

server:
  port: 9300

spring:
  application:
    name: dm

  datasource:
    driver-class-name: dm.jdbc.driver.DmDriver
    url: jdbc:dm://192.168.10.110:5237/TEST
    username: SYSDBA
    password: Dm123456789

mybatis-plus:
  configuration:
    map-underscore-to-camel-case: true
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl  # 控制台打印SQL
  mapper-locations: classpath*:mapper/*.xml

创建实体类

package cn.vihub.dm.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;

@Data
public class UserInfo {

    @TableId(value = "USER_ID", type = IdType.AUTO)
    private Integer userId;

    @TableField(value = "USERNAME")
    private String username;

    @TableField(value = "PASSWORD")
    private String password;
}

创建mapper

package cn.vihub.dm.mapper;

import cn.vihub.dm.domain.UserInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;

@Mapper
public interface UserInfoMapper extends BaseMapper<UserInfo> {
}

创建service接口

package cn.vihub.dm.service;

import cn.vihub.dm.domain.UserInfo;
import com.baomidou.mybatisplus.extension.service.IService;

public interface UserInfoService extends IService<UserInfo> {
    Object listOrderUserId();

    Object listPage();
}


创建service实现类

package cn.vihub.dm.service.impl;


import cn.vihub.dm.domain.UserInfo;
import cn.vihub.dm.mapper.UserInfoMapper;
import cn.vihub.dm.service.UserInfoService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class UserInfoServiceImpl extends ServiceImpl<UserInfoMapper, UserInfo> implements UserInfoService {



    @Override
    public Object listOrderUserId() {

        List<UserInfo> userInfoList = query().orderByDesc("USER_ID").list();
        return userInfoList;
    }

    @Override
    public Object listPage() {
        IPage<UserInfo> iPage = new Page<>(1, 2);
        return page(iPage);
    }
}

创建controller

package cn.vihub.dm.controller;

import cn.vihub.dm.domain.UserInfo;
import cn.vihub.dm.service.UserInfoService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
@RequestMapping("userInfo")
public class UserInfoController {

    @Autowired
    private UserInfoService userInfoService;

    @GetMapping("list")
    public Object list(){
        return userInfoService.list();
    }

    @GetMapping("listPage")
    public Object listPage(){
        return userInfoService.listPage();
    }

    @GetMapping("listOrderUserId")
    public Object listOrderUserId(){
        return userInfoService.listOrderUserId();
    }


    @GetMapping("add")
    public Object add(){
        UserInfo userInfo = new UserInfo();
        userInfo.setUsername("user1");
        userInfo.setPassword("123456");
        return userInfoService.save(userInfo);
    }

    @GetMapping("edit")
    public Object edit(){
        UserInfo userInfo = new UserInfo();
        userInfo.setUserId(2);
        userInfo.setUsername("user2");
        userInfo.setPassword("123456");
        return userInfoService.updateById(userInfo);
    }

    @GetMapping("del")
    public Object del(){
        return userInfoService.removeById(2);
    }
}
Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐