SpringBoot 中连接阿里云rds数据库

SpringBoot+Vue酒店管理系统实战:从数据库到上线部署 酒店管理系统是Java全栈开发中的典型业务型项目,涉及房态管理、订单流转、权限控制等核心领域。其技术本质是基于RESTful API的前后端分离架构,依托SpringBoot实现事务一致性与JWT鉴权,结合Vue实现响应式交互。系统强调业务规则驱动设计,如房态状态机、订单状态流转约束、库存锁定等,而非单纯技术堆砌。在工程实践中,需关注MySQL枚举约束、MyBatis-Plus分页、Redis缓存、Nginx反向代理及阿里云RDS连接池调优等生产就绪要点。本文以可上线的轻量级酒店SaaS原型为载体,覆盖从本 阅读详情

今天首次碰到在SpringBoot中使用阿里云rds数据库,搜索一了一番资料,最后成功实现。然后在这里做下自我总结。(个人用到是SSH方式进行连接)

1、在pom文件中添加jar包依赖

<dependency>
    <groupId>com.jcraft</groupId>
    <artifactId>jsch</artifactId>
    <version>0.1.53</version>
</dependency>

2、编写Listener
我这里使用注解方式,进行实现,SSH连接使用密钥方式

监听器类代码

@WebListener
public class MyContextListener implements ServletContextListener {

    private static final Logger LOGGER = LoggerFactory.getLogger(MyContextListener.class);

    private SSHConnection conexionssh;
    
    public MyContextListener() {
        super();
    }
    @Override
    public void contextInitialized(ServletContextEvent arg0) {
        LOGGER.info("初始化开始。。。。");
        try {
            conexionssh = new SSHConnection();
        } catch (Throwable e) {
            // error connecting SSH server
            LOGGER.error("error",e)
        }
    }
    @Override
    public void contextDestroyed(ServletContextEvent arg0) {
        LOGGER.info("关闭连接!");
        // disconnect
        conexionssh.closeSSH();
    }
}

SSHConnection代码

 /** 秘钥文件地址*/
    private final static String S_PATH_FILE_PRIVATE_KEY = "E:\\privateKey\\zr-jenkins.pem";
    /** konwn_hosts 文件*/
    private final static String S_PATH_FILE_KNOWN_HOSTS = "C:\\Users\\xuby\\.ssh\\known_hosts";
//    private final static String S_PASS_PHRASE = "D10mCUHIjQALb4sP";
    //选择本地一个未占用的端口(个人理解,这端口对应后面数据库连接的端口)
    private final static int LOCAl_PORT = 3307;
    //远程数据库端口
    private final static int REMOTE_PORT = "";
    //ssh端口
    private final static int SSH_REMOTE_PORT ="" ;
    //ssh 登录用户名
    private final static String SSH_USER = "";
    //远程ssh ip地址
    private final static String SSH_REMOTE_SERVER = "";
    //远程数据库地址
    private final static String MYSQL_REMOTE_SERVER = "";
    
    private Session sesion;
    public void closeSSH (){
        sesion.disconnect();
    }
    public SSHConnection () throws Throwable{
        JSch jsch = new JSch();
        jsch.setKnownHosts(S_PATH_FILE_KNOWN_HOSTS);
//        jsch.addIdentity(S_PATH_FILE_PRIVATE_KEY, S_PASS_PHRASE.getBytes());
        jsch.addIdentity(S_PATH_FILE_PRIVATE_KEY);
        sesion = jsch.getSession(SSH_USER, SSH_REMOTE_SERVER, SSH_REMOTE_PORT);
        //跳过检查
        Properties config = new Properties();
        config.put("StrictHostKeyChecking", "no");
        sesion.setConfig(config);
        sesion.connect();
        sesion.setPortForwardingL(LOCAl_PORT, MYSQL_REMOTE_SERVER, REMOTE_PORT);
    }

3、配置监听器
在pom文件中增加配置

<dependency>
       <groupId>org.springframework.boot</groupId>
       <artifactId>spring-boot-starter-web</artifactId>
</dependency>

入口启动类中增加注解@ServletComponentScan

4、yml文件中配置数据库连接
注意这里的端口号是前面的LOCAl_PORT一致,地址为:127.0.0.1
在这里插入图片描述
到这里已经完成所有的配置。(新手第一次写博客,请各位多多指教)。

参考网址:
https://www.cnblogs.com/hdwang/p/8670594.html

springboot+mybatis实现连接mysql登录 使用springboot和mybatis连接mysql数据库实现登录功能。IDEA和eclipse均可运行 立即下载

相关推荐

高通camx ThreadManager

m_pCore->AcceptNewJob是将一个Job或者任务插入一个Queue,有一个工作线程循环从Queue中取Job任务执行,执行任务就是回调任务中的callback函数,AcceptNewJob实现。调用AddToPriorityQueue将任务添加到queue任务队列,那么什么时候从这个queue中取任务执行呢?有个线程循环执行DoWork,最终调用checkAndDequeue取任务执行。

GetnextWindow的专栏 436

.metadata是什么项目文件_《深入微服务》之 如何给老婆解释什么是微服务的基础框架SpringBoot?

前言本章我们主要从以下几个方面夯实我们的基础:微框架 Spring Boot 的基本认识实战学习 Spring Boot 的基本使用多种方式获取 Spring Boot 配置如何自定义一个 Starter如何搭建一个 Spring Boot 的监控系统什么是 Spring BootSpring Boot 简介微框架,与 Spring 4 一起诞生,比如 RestController可以快速上手,整...

weixin_39595271的博客 245

QMI8658A和QMC5883L传感器校准全攻略:从零偏校准到椭球拟合

本文详细解析了QMI8658A和QMC5883L传感器的校准方法,从零偏校准到椭球拟合,涵盖了9轴运动传感器的核心误差来源及补偿技术。通过实战案例和数学建模,帮助开发者提升传感器精度,适用于无人机、AR/VR等智能硬件应用。

weixin_29189381的博客 158

springboot项目将本地的MySQL以及Redis数据库部署到阿里云

问题:负责前端的开发者目前没办法联调,所以我将Mysql以及redis部署到阿里云上,这样的话我们就可以使用了,本文主要说明一在springboot项目当中对应的配置的变更,这里要注意,改动实际上就是在阿里云拿一个访问路径以及对应的账号密码,我们springboo项目需要的对应依赖和代码实际上是不变的,只主要修改配置。而且对于相关的申请本文不作讲解这里用到阿里云的两个资源:1、云数据库RDS 2、云数据库Redis版本文是mysql与redis由本地到阿里云的基本配置。

qq_58024411的博客 544

通用策略04丨ORB魔改框架+自适应动量过滤模板

1、该策略第一次尝试使用低通滤波器进行行情择时过滤,同样该方法也可以用于主进场逻辑。2、出场逻辑适用于趋势、隔日波段、高低开等行情结构,对于日线级别长度K线一定积极作用,因此大家可以根据该逻辑进行反向品种筛选。3、在资金管理方面,我注意到一个问题,以往都是按照复权价格计算,但是资金却没有复权,所以这里实际上这里应该将价格除权计算,如下图所示:由于各平台差异,回测绩效以TBQ版本为准!!!本策略仅作学习、交流使用,实盘交易盈亏投资者个人负责!!!

松鼠宽客的博客 1176

一文入门BMS(电池管理系统)

本文章是基于曾师兄的文稿《具有组网扩展功能的新能源汽车电池管理系统》而写的文章。该文章主要是对BMS(Battery Management System,电池管理系统)做一些简要的介绍,借此助各位也助我入门BMS。有纰漏请指出,转载请说明。学习交流请发邮件 1280253714@qq.com。

weixin_45817947的博客 2万+

idea运行springboot项目,通过ssh代理ECS连接阿里云RDS

在你自己本机执行: ssh -N -f -L 0.0.0.0:3306:xxxxxxxxx.mysql.rds.aliyuncs.com:3306 yourname@xxx.xxx.xxx.xxx。你必须有一台与RDS同机房的ECS,并且ECS上是可以连接到RDS的,那么只要在ECS上开启ssh隧道转发就可以。其中:xxxxxxxxx.mysql.rds.aliyuncs.com为rds内网链接域名地址。yourname@xxx.xxx.xxx.xxx:为你的ecs服务器用户名和ip地址。

qq_42630678的博客 1008

VisionMaster -Group循环、数组数据格式化

这里创建一个格式化工具,按照自己想要的模式格式化刚刚输出的数据。因为是检测多个物体,所以这里选择输出的是数组。第一次的模板很不满意,反复调整参数也没好,边缘不整齐,强迫症患者受不了。实测如果输入设置太多,会导致模块失效,所以尽量选择需要的少量参数。这里要打开循环使能,循环数值就是高精度匹配的匹配个数。Group输出设置里选择刚刚建立的数据集。左边是主流程,右边是组合模块内部流程。修改采图这里的曝光值,图像提亮一点。建一个数据集,把想要的数据收集起来。用TCP助手测试一下OK。成功得到了想要的数据。

weixin_69505365的博客 4531

Springboot项目连接阿里云服务器MySql数据库(常见的报错)

Springboot项目连接阿里云服务器MySql数据库 1、首先springboot中要引用依赖: <!-- Mysql --> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <scope&g..

weixin_44919186的博客 4404

c# U盘禁用---守护进程(插入,拔出,卸载等操作)

一、简介 传统的对U盘禁用,我们多采用修改注册表的方式,详情参考:https://blog.youkuaiyun.com/qq_25372599/article/details/79815407;本文将介绍一种其他的方式–后台守护程序。其原理非常简单:当守护程序检测到U盘的插入信号,我们自动卸载U盘,致使系统无法识别U盘,达到禁用U盘的效果。 二、程序设计 2.1 变量定义 strin...

星星之火燃亮码空 2846

基于上下文的 Listwise 重排模型(一):miRNN

2018年阿里团队提出的miRNN(Mutual Influence aware RNN)模型,首次将电商搜索重排建模为全局优化问题,通过RNN捕捉商品序列的相互影响,结合Beam Search生成最优排序,在淘宝搜索中实现GMV(商品交易总额)提升5%的突破。本文将结合论文细节与通俗案例,拆解这一工业级重排框架的核心逻辑。

进一步有进一步的欢喜~ 1918

spring 数据源配置 将数据库连接的信息配置到属性文件中

数据源配置 配置 C3P0 数据源 <bean id="pooledDataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> <property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property> <property name="driverClass" value="${jdbc.driverClass}">&

weixin_43078586的博客 675

Cadence OrCAD Capture CIS元器件管理时ERROR(ORCIS-6454): Temporary part number tracking is turned on报错的解决方法

使用Part manager对工程的元器件进行批量管理时,出现如下图所示的ERROR(ORCIS-6454): Temporary part number tracking is turned on报错其解决方法如下。

fydar的博客 3503

SPring Boot3.x 连接阿里云数据库RDS

创建一个settings.xml文件,将以下代码复制到文件内。编辑 application.properties 文件。若以上步骤,可以连接到数据库,不用操作以下步骤。pom.xml 加入以下代码。找到你的.m2文件夹,打开,

guolinlin_0630的博客 604

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Spring Boot + 阿里云 RDS MySQL 项目搭建与连接问题解决全步骤

通过解决三类核心问题,成功搭建一个能稳定运行、且可正常连接阿里云 RDS MySQL 数据库的 Spring Boot Web 项目,为后续的业务功能开发(如实体映射、接口编写、前后端交互)扫清环境障碍。总而言之,就是让项目跑起来,能连的上,具备开发的基础条件。

yc919的博客 920

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

rds基于什么开发_java rds

关于java rds的搜索结果问题新手求问RDS使用相关问题刚接触RDS,根据阿里教程 https://help.aliyun.com/document_detail/rds/SDK-manual/JAVA.html,我想用java访问RDS,代码如下:结果显示如下:谁知道思路是什么,问题出在哪里...wuchao05082019-12-01 19:42:111301 浏览量回答数 2问题自己在...

weixin_39860064的博客 216

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

springboot配置连接rds_第六篇:SpringBoot 2.x添加Druid作为数据库连接池-阿里云开发者社区...

整合了一大堆ORM,是时候增加一个连接池了,此处选用了druid作为连接池,druid是alibaba开源平台上的一个数据库连接池实现,对比c3p0,dbcp加入了对数据库的监控,不知道甩出几条街的距离,个人推为数据库连接池的首选(手动摊手)这里仍然使用jpa+druid首先先来看看引入的依赖org.springframework.bootspring-boot-starter-data-jpao...

weixin_42405890的博客 600

阿里云数据库 mysql RDS 连接失败 HikariPool-1 - Exception during pool initialization.

springboot项目连接阿里云数据库RDS,报错 HikariPool-1 - Exception during pool initialization. 1. 先检查当前运行项目的服务器所在IP,是否加到了RDS的白名单 2. 项目内,根据需求,选择对应的内网地址或者外网地址进行连接 我的项目是部署在其他服务器上,所以这里选的是外网地址进行访问 ...

test 857

bug---Field jdbcTemplate in com.e.demo.controller.lianjie required a bean of type ‘org.springframewo

错误 springboot连接阿里云rds数据库报错 Field jdbcTemplate in com.e.demo.controller.lianjie required a bean of type ‘org.springframework.jdbc.core.JdbcTemplate’ that could not be found.Consider defining a bean of type ‘org.springframework.jdbc.core.JdbcTemplate’ in you

qw160的博客 974

数据库连接池选型 Druid vs HikariCP性能对比

这里主要比较HikariCP 和阿里的Druid springboot 现在官方默认的数据库连接池是 HikariCP,HikariCP的性能从测试的数据上来看也是最高的。 先来看下这个著名的issue 一个印度小哥提的 issue brettwooldridge 这边主要针对性能和在中国以外的地方用的少的问题 温绍这边说,由于使用公平锁所以降低了性能,至于为什么是因为在生产环境中遇到的一些问题,使设计使然。 温绍同时也强调我们淘宝体量大,并发高,顺便甩了个带有马爸爸照片的链接,让他了

weixin_39098944的博客 1万+

阿里云Secrets Manager JDBC客户端Java版使用指南

阿里云Secrets Manager JDBC客户端Java版使用指南 1. 项目介绍 阿里云Secrets Manager JDBC客户端是专为Java开发者设计的一款库,它使得连接到数据库变得更加简单,特别是使用在阿里云Secrets Manager中存储的动态RDS凭据时。这个库支持多种数据库类型如MySQL, MSSQL, PostgreSQL和MariaDB,提供了一种安全的方法来管理数...

gitblog_00366的博客 1103

踩坑历险记——阿里云mysql连接不上

1. 将Springboot项目打成war包, 在本地测试没问题后放到阿里云的服务器上,Tomcat启动后访问不了 2. 怀疑是Tomcat版本问题,将服务器的tomcat8 升级到了tomcat9  跟本地保持一致, 还是访问不了 3. 观察日志发现错误日志  数据路连接不上,但是数据库id能ping通, 怀疑是war包问题 4. 将项目打成jar包重新发布, 还是数据路连接不上 5. ...

Salen_走稳每一步 368

springBoot 连接 阿里云-云服务器redis版本

springBoot 连接 阿里云-云服务器redis版本 // yml配置文件: redis: host: r-xxx.redis.rds.aliyuncs.com # 云服务器Redis版本 域名地址 database: 0 # Redis数据库索引(默认为0) port: 6379 # Redis服务器连接端口 password: 账号:密码 # Redis服务器连接密码(默认为空) 阿里云-云服务器Redis版本 用户名加密码 (我的项目部署到ecs上,使用的是专网域

weixin_41088381的博客 736

springboot的文件配置,运行jar改变配置文件的参数,并且在类中使用占位符注入该参数

springboot的注入参数很强大,可以把配置文件中的参数在类中作为占位符就行多重使用。 比如 我定义一个active=dev ctive=dev #dev #read database dev.read.datasource.url=jdbc:mysql://rm-bp1cr63v22fwwqe5nqr6a4.mysql.rds.aliyuncs.com/ewe-hr dev.re

qq_28929589的博客 4237

解决使用spring boot连接云服务器mysql失败

开放数据库远程权限【参考:https://zhuanlan.zhihu.com/p/379095701】通过Spring Boot远程连接云服务器mysql。修改系统防火墙端口规则。

柠的博客 303

阿里云服务器部署springboot项目

第一步: 购买 阿里云云服务器,推荐双11购买,博主这里的配置是这样的: 第二步:添加安全组 需要添加安全组规则,简单的说就是添加允许外部网络能够访问的该服务器上的端口号 点击添加安全组,端口范围就填你的项目中配置的端口号就ok 授权对象一般填0.0.0.0/0 最后点击确定 注意,还需要添加MySQL 3306端口号安全组 否则本地navicat无法连接 (博主这边是用的云数据库rds,所以没配置这个本地的3306端口号) ...

weixin_42792315的博客 4750
下一篇: 使用Navicat连接阿里云rds数据库
joe_xby
博客等级 码龄12年 1粉丝 19原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值