SSM框架 + 云数据 ClearDB 应用实践

SSM框架(spring + springmvc + mybatis)相信小伙伴们都已经比较熟悉了,但随着科技的发展,企业对运营成本、开发部署周期、数据安全性可用性的要求不断提高,很多应用已经选择发布到云平台,数据库采用云端的数据库,本文就和大家一起熟悉一下SSM框架 + 云数据 ClearDB 的应用实践及部署过程。

对学习者的基本要求

对以下内容的了解有助于您更好的理解本文的内容:

一个 Bluemix 帐户,您还没有? 点击这里注册,已经有,点击这里登录;

对spring、 springmvc、 mybatis基本了解;

对MySQL数据库及管理工具的基本了解;

对SQL语言的基本了解;

我提供了所有必要代码,可以到Github下载:https://github.com/ivu4e/ssmcleardb

创建 Java 应用程序

本来打算创建一个".yml"应用程序清单文件来创建一个云应用程序,但是发现只有和应用程序连接后,才能拿到数据库的访问凭证,所以我们先创建一个Java应用程序。

1、登录您的Bluemix帐户,打开目录页面;

2、可以通过左侧的类别快速定位,找到Liberty for Java™,点击它;

0?wx_fmt=png

3、输入一个应用程序名称,点击创建按钮;

0?wx_fmt=png

创建 ClearDB 数据服务

1、同样是打开目录页面;

2、可以通过左侧的类别快速定位,找到ClearDB Managed MySQL Database,点击它;

0?wx_fmt=png

3、输入服务名称,或者可以保持默认的;

4、在左侧连接到下拉列表中选择我们刚刚创建的Java应用程序;

0?wx_fmt=png

5、点击创建按钮;

ClearDB 数据库管理

应用程序和数据库服务已经创建完成了,并且我们选择将数据库服务连接到Java应用程序,这时我们可以打开Java应用程序的详细信息页面,获取数据库访问凭据;

1、点击左上角的菜单,选择仪表板,进入仪表板页面;

0?wx_fmt=png

2、找到刚刚创建的应用程序,点击空白处;

0?wx_fmt=png

3、点击左侧的“连接”,然后点击右侧的查看凭证;

0?wx_fmt=png

4、复制凭证到一个文本文件中,方便使用;

0?wx_fmt=png

5、使用Navicat for mysql 连接到ClearDB;

0?wx_fmt=png

主机名或IP地址对应凭证中的:hostname;

6、新建查询,初始化数据表;

0?wx_fmt=png

执行的SQL语句如下:

[sql] view plain copy

  1. SET NAMES utf8;  

  2. SET FOREIGN_KEY_CHECKS = 0;  

  3.   

  4. -- ----------------------------  

  5. --  Table structure for `user`  

  6. -- ----------------------------  

  7. DROP TABLE IF EXISTS `user`;  

  8. CREATE TABLE `user` (  

  9.   `ID` bigint(20) NOT NULL AUTO_INCREMENT COMMENT '编号',  

  10.   `NAMEvarchar(30) NOT NULL COMMENT '用户名',  

  11.   `PASSWORDvarchar(32) NOT NULL COMMENT '用户密码',  

  12.   `MOBILE` varchar(20) NOT NULL COMMENT '手机号码',  

  13.   `EMAIL` varchar(50) NOT NULL COMMENT '电子邮件',  

  14.   `STATUS` tinyint(4) NOT NULL DEFAULT '0' COMMENT '用户状态,默认为0,不可用,1为可用\r\n 0: 表示新建\r\n1:表示激活\r\n2:表示禁用\r\n3:表示删除\r\n',  

  15.   `TRUE_NAME` varchar(50) DEFAULT NULL COMMENT '真实姓名',  

  16.   `USER_CODE` varchar(50) DEFAULT NULL COMMENT '用户编码',  

  17.   `PHOTO` varchar(100) DEFAULT NULL COMMENT '头像相对路径',  

  18.   `CREATE_TIME` datetime DEFAULT NULL COMMENT '创建时间',  

  19.   `UPDATE_TIME` datetime DEFAULT NULL COMMENT '最后修改时间',  

  20.   PRIMARY KEY (`ID`)  

  21. ) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;  

  22.   

  23. -- ----------------------------  

  24. --  Records of `user`  

  25. -- ----------------------------  

  26. BEGIN;  

  27. INSERT INTO `userVALUES ('1''admin''admin''''''1'nullnullnullnullnull);  

  28. COMMIT;  

  29.   

  30. SET FOREIGN_KEY_CHECKS = 1;  

SSM框架应用

1、修改jdbc.properties 文件,修改数据库链接凭证;

[plain] view plain copy

  1. driver=com.mysql.jdbc.Driver  

  2. url=jdbc:mysql://us-cdbr-sl-dfw-01.cleardb.net/ibmx_ea6d0796680534e?user=b8370b2ea2c12b&password=08ab4a57af  

  3. username=b8370ba2ea2c12b  

  4. password=08b457af  

  5. #定义初始连接数  

  6. initialSize=0  

  7. #定义最大连接数  

  8. maxActive=20  

  9. #定义最大空闲  

  10. maxIdle=20  

  11. #定义最小空闲  

  12. minIdle=1  

  13. #定义最长等待时间  

  14. maxWait=60000  

  15. #&character_set_server=utf8mb4&  

jdbc链接字符串刚刚获取的凭证中已经给出;2、本地运行服务测试;

访问:http://localhost:8080/ssmcleardb/webapi/user/findList.do  以看到下面的输出:

0?wx_fmt=png

3、项目文件结构;

0?wx_fmt=png

让你的应用在云上运行

1、打包应用程序,执行maven clear,maven install;

2、在项目的根目录创建应用程序清单文件;

0?wx_fmt=png

内容如下:

[plain] view plain copy

  1. applications:  

  2. - path: target/ssmcleardb.war  

  3.   memory: 512M  

  4.   instances: 1  

  5.   domain: mychinabluemix.net  

  6.   name: ssmcleardb  

  7.   host: ssmcleardb  

  8.   disk_quota: 1024M  

path: target/ssmcleardb.war 就是应用程序打包后输出的路径名称;

name 就是应用程序的名称;

host 是一个二级域名的前缀,发布成功之后我们可以通过它来访问自己的应用;

具体细节请参考我的其它文章,如:Java中REST API使用示例——基于云平台+云服务打造自己的在线翻译工具

也可以参考文末给出的相关视频:一个简单应用程序的上云过程

4、发布应用程序

0?wx_fmt=png

0?wx_fmt=png

5、发布成功,访问测试:

0?wx_fmt=png

我这里是将应用程序发布到了bluemix 中国版上。

到这里可以看出,我没有使用刚刚在Bluemix上创建的Java应用程序名称,而是通过创建一个应用程序清单文件来创建了一个应用程序。

不要试图访问我发布的,做点小动作,0?wx_fmt=gif

我提供了所有必要代码,可以到Github下载:https://github.com/ivu4e/ssmcleardb

结束语

关于ClearDB的中文资料比较少,有小伙伴问ClearDB和MySQL的区别,通常我们理解mysql为数据库软件,而cleardb我们应该理解为数据库服务,我们可以像操作MySQL一样操作它。之前的文章都是在Bluemix创建一个应用,然后下载应用示例代码到本地进行修改和扩展,而本次我们先在本地创建项目或直接从GitHub上下载项目代码,然后通过创建一个".yml"应用程序清单文件来创建一个云应用程序,并将项目发布到云平台上。

你有没有跟随本文去手试一试呢?

有什么问题欢迎给我留言!

技术水平有限,欢迎各位大牛指教!

相关学习资源

Bluemix 中国版 云服务登录: https://console.chinabluemix.net/

Bluemix 国际版 云服务登录: https://console.ng.bluemix.net/

相关视频

云服务助力Java 应用程序开发及部署 http://edu.youkuaiyun.com/course/detail/5006

0?wx_fmt=jpeg

一个简单应用程序的上云过程 http://edu.youkuaiyun.com/course/detail/4857

0?wx_fmt=jpeg

基于云应用的公众号后台程序开发 http://edu.youkuaiyun.com/course/detail/5006

0?wx_fmt=jpeg

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值