如何在weka中连接数据库(转)
相关准备:
Weka、mysql已安装
MYSQL Driver for JDBC
1、进入weka的安装目录
1)新建文件夹lib和文件夹weka,然后将mysql-connector-java-5.1.24-bin.jar复制到lib文件夹中
2)“我的电脑”属性,设置环境变量
新建变量WEKA_HOME=weka的安装目录,如(D:\Prgrams\weka-3.6)
在CLASSPATH变量中添加“;%WEKA_HOME%\lib\mysql-connector-java-5.1.24-bin.jar”
3)将weka.jar解压到weka文件夹(新建)中,然后进入weka\experiment,找到DatabaseUtils.props(缺省使用),然后做如下修改:
# JDBC driver (comma-separated list)
#jdbcDriver=org.gjt.mm.mysql.Driver
修改为:jdbcDriver=com.mysql.jdbc.Driver
# database URL,保持不变
jdbcURL=jdbc:mysql://server_name:3306/database_name
# specific data types,具体的数据类型修改如下,主要是去掉注释
string, getString() = 0; --> nominal
boolean, getBoolean() = 1; --> nominal
double, getDouble() = 2; --> numeric
byte, getByte() = 3; --> numeric
short, getByte()= 4; --> numeric
int, getInteger() = 5; --> numeric
long, getLong() = 6; --> numeric
float, getFloat() = 7; --> numeric
date, getDate() = 8; --> date
text, getString() = 9; --> string
time, getTime() = 10; --> date
BigDecimal,getBigDecimal()=11; -->nominal
#mysql-conversion --类型转换,做如下补充,否则mysql中的数据类型在weka中无法使用。
TINYINT=3
SMALLINT=4
SHORT=5
INTEGER=5
INT=5
INT_UNSIGNED=6
BIGINT=6
LONG=6
REAL=7
NUMERIC=2
DECIMAL=2
FLOAT=2
DOUBLE=2
CHAR=0
TEXT=0
VARCHAR=0
LONGVARCHAR=9
BINARY=0
VARBINARY=0
LONGVARBINARY=9
BIT=1
BLOB=8
DATE=8
TIME=8
DATETIME=8
TIMESTAMP=8
其他的暂时无需修改,保存
4)将刚刚修改的DatabaseUtils.props文件,复制到weka的安装目录下,然后可以删除上面创建的weka文件夹(并没有替换原有的weka.jar,替换了后weka反而无法打开)
5)打开runWeka.ini文件,到文件尾部
# The classpath placeholder. Add any environment variables or jars to it that
# you need for your Weka environment.
# Example with an enviroment variable (e.g., THIRD_PARTY_LIBS):
# cp=%CLASSPATH%;%THIRD_PARTY_LIBS%
# Example with an extra jar (located at D:\libraries\libsvm.jar):
# cp=%CLASSPATH%;D:\\\\libraries\\\\libsvm.jar
# Or in order to avoid quadrupled backslashes, you can also use slashes "/":
# cp=%CLASSPATH%;D:/libraries/libsvm.jar
修改为(添加driver的文件路径):cp=%CLASSPATH%;D:/Programs/Weka-3.6/lib/mysql-connector-java-5.1.24-bin.jar
#cp=%CLASSPATH%
保存
2、运行weka,进入explorer -->open DB
在URL框中输入:jdbc:mysql://localhost:3306/mysql (localhost是服务器名称,最后的mysql是要访问的数据库名,自行修改,确保要访问的数据库存在)
点击user: 输入用户名和密码后,点击connect,
如果在下面的info框中,显示connecting to: jdbc:mysql://localhost:3306/mysql = true,则连接成功;否则失败。
我这边试了是成功的。
可以在query框中输入sql语句,点击excute执行。
其他的数据库连接暂时还没有尝试,待续。
3 、eclipse调用weka
导入weka-src.jar和weka.jar包到项目中,在weka的安装目录下有着两个jar包;
将上面修改的DatabaseUtils.props文件导入项目中;
将mysql驱动导入项目。
转自:http://blog.sina.com.cn/s/blog_60fde0c701010hta.html
最新文章
- 51nod 1116 K进制下的大数 (暴力枚举)
- linux/windows 下kill某个pid的进程
- SyntaxHighlighter -- 代码高亮插件
- UCOS 中的中断处理
- 数据结构-C语言递归实现树的前中后序遍历
- [十二省联考2019]D1T1异或粽子
- django——面试题(已工作,暂停更新)
- MARK DOWN 书写格式说明
- ASP.NET Core 与支付宝开发文档
- requsets模块和beautifulsoup模块
- 10.1-uC/OS-III任务堆栈空间
- 【原理、应用】Quartz集群原理及配置应用
- rman备份恢复命令之switch
- 多数据源springboot-jta-atomikos
- TP中使用laravel那一套验证
- Postfix接收邮件后转向运行特定的脚本
- centos6.5修改root密码
- 键盘对应数字-keycode值大全(转)
- Java多线程编程实战指南(核心篇)读书笔记(四)
- 【转】Celery 分布式任务队列快速入门
热门文章
- [Java] 使用Java Visual VM寻找PermGen Space的解决办法
- ListView遍历每个Item出现NullPointerException的异常(转)
- 通信原理实践(四)——模拟通信系统性能分析
- java 请求 google translate
- jsp网站环境搭建
- loadrunner通过C语言实现自定义字符出现次数截取对应字符串
- PHP入门 - - 07-->;HTML的表单
- react-基础(2)
- 页面内容排序插件jSort的使用
- WPF ,listbox,平滑滚动的2种方式。