Matlab调用Java类访问数据库
2019独角兽企业重金招聘Python工程师标准>>>
一、eclipse创建一个普通的java工程命名为mdt
package www.zjptcc.wxw.matjdbctest;import java.sql.*;public class TestMysql {static String url = "jdbc:mysql://localhost:3306/mymotif?useSSL=false&user=mymotif&password=wxwpxh";public void showatable(){Connection conn = null;try {Class.forName("com.mysql.jdbc.Driver");conn = DriverManager.getConnection(url);Statement st = conn.createStatement();ResultSet rs = st.executeQuery("SELECT * FROM COURSE");int colcount=st.getResultSet().getMetaData().getColumnCount();while (rs.next()) {for(int col=1;col<=colcount;col++){System.out.print(rs.getString(col));System.out.print(" ");}System.out.println();}rs.close();st.close();conn.close();} catch (Exception e) {e.printStackTrace();}}}
二、把项目mdt导出到一个jar文件:mdt.jar
三、把mdt.jar和mysql的jdbc驱动都放入专门的目录
我把它们放到我的matlab工作目录下面的java子目录
mkdir ${HOME}/matlab_workplace/java
cp mdt.jar ${HOME}/matlab_workplace/java
cp mysql-connector-java-5.1.44-bin.jar ${HOME}/matlab_workplace/java
$ ls ${HOME}/matlab_workplace/java
mdt.jar mysql-connector-java-5.1.44-bin.jar
四、启动matlab把上面两个jar追加到matlab的classpath
执行
>> edit classpath.txt
注意:该命令需要用户对$matlabroot/toolbox/local/classpath.txt有写的权限,如果普通用户运行matlab需要执行:sudo chmod a+rw,另外matlab无法识别环境变量HOME,classpath.txt中需要追加jar文件的全路径
五、需要访问mysql建表脚步:
-- phpMyAdmin SQL Dump
-- version 4.1.2
-- http://www.phpmyadmin.net
--
-- Host: 127.0.0.1
-- Generation Time: 2018-06-13 23:07:24
-- 服务器版本: 5.7.22
-- PHP Version: 5.6.36SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO";
SET time_zone = "+00:00";/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;--
-- Database: `mymotif`
---- ----------------------------------------------------------
-- 表的结构 `COURSE`
--CREATE TABLE IF NOT EXISTS `COURSE` (`CNO` char(6) NOT NULL,`CNAME` char(12) NOT NULL,`TEACHER` char(8) NOT NULL,`TIME` smallint(6) NOT NULL,PRIMARY KEY (`CNO`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;--
-- 转存表中的数据 `COURSE`
--INSERT INTO `COURSE` (`CNO`, `CNAME`, `TEACHER`, `TIME`) VALUES
('000001', '数学分析', '徐森林', 120),
('000003', '数据库设计', '王斌能', 60),
('000004', '数据库原理', '王珊', 120),
('000005', '数据结构', '苏运霖', 120),
('000006', '分析力学', '钱伟长', 80),
('000007', '高等分析', '徐治利', 80);/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
五、运行
重启matlab(修改classpath重启后才能生效)
>> t = www.zjptcc.wxw.matjdbctest.TestMysql;
>> t.showatable();
000001 数学分析 徐森林 120
000003 数据库设计 王斌能 60
000004 数据库原理 王珊 120
000005 数据结构 苏运霖 120
000006 分析力学 钱伟长 80
000007 高等分析 徐治利 80
转载于:https://my.oschina.net/u/2245781/blog/1829924
Matlab调用Java类访问数据库相关推荐
- oracle 调用java 类_oracle数据库PL SQL调用Java类程序代码
作为JAVA程序员,对ORACLE的javasource一直是想找个机会下手的.呵呵!风高月夜,此时正下手之机. Oracle有提供一个叫"外部例程"来实现与其他编程语言的访问.例 ...
- Oracle数据库中调用Java类开发存储过程、函数的方法
Oracle数据库中调用Java类开发存储过程.函数的方法 时间:2014年12月24日 浏览:5538次 oracle数据库的开发非常灵活,不仅支持最基本的SQL,而且还提供了独有的PL/SQL, ...
- 在JSP中调用JAVA类和使用JavaBean有什么区别?
在JSP中调用JAVA类和使用JavaBean有什么区别? 可以像使用一般的类一样使用JavaBean,Bean只是一种特殊的类.特殊在可以通过<jsp:useBean />调用Jav ...
- (转)在JSP中调用JAVA类和使用JavaBean有什么区别?
在JSP中调用JAVA类和使用JavaBean有什么区别? 可以像使用一般的类一样使用JavaBean,Bean只是一种特殊的类.特殊在可以通过<jsp:useBean />调用Jav ...
- Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别?
Java 中访问数据库的步骤?Statement 和PreparedStatement 之间的区别? Java 中访问数据库的步骤 1)注册驱动: 2)建立连接: 3)创建Statement: 4)执 ...
- thymeleaf 调用java,thymeleaf模板引擎调用java类中的方法(附源码)
前言 由于开源了项目的缘故,很多使用了My Blog项目的朋友遇到问题也都会联系我去解决,有的是把问题留在项目的issue里提出,有的是在我的私人博客里留言,还有的则是直接添加我的qq来找我讲自己遇到 ...
- PHP使用PHPRPC协议调用JAVA类
SOAP(Simple Object Access Protocol,简单对象访问协议) 随着厂商的不断竞争和设计,并由于传对象无法实现互通,SOAP逐渐改为传字符串,并最终被设计为传XML的WebS ...
- Java虚拟机调用jni_JNI攻略之十一――启动虚拟机调用java类
JNI攻略之十一――启动虚拟机调用java类 江苏无锡缪小东 一.一个简单的java程序 下面是一个简单的java程序!主要是供虚拟机直接调用的!我们可以编写任意的java程序,然后在c中调用虚拟机执 ...
- python中如何调用类_python如何调用java类
由于 python 本身为脚本语言,且经常存在调用第三方库的情况,有的时候用 java 调用 python 不如用 python 调用 java 方便.下面就整理一下在 python 调用 java ...
最新文章
- VirtualBox中Ubuntu的全屏
- 一份超详细的 Java 问题排查工具单
- C++接口工程实践:有哪些实现方法?
- 第二十一章:变换(三)
- Hibernate基本概念 (2)
- 从ASP.NET Core 3.1中的当前URL获取主机信息
- 使用SQLite3支持中文路径
- 基于UCenter关联第三方网站与Discuz用户
- Ubuntu 16.04中的Dock的应用顺序调整
- Atiitt 文档处理之道 attilax著
- 【生信进阶练习1000days】day11day12-GEO data mining
- 编辑器 的保存怎么绑定事件_小鹿百度编辑器新增小程序URL,抢占百度新流量...
- PHP--ThinkPHP6.0怎么打开debug模式
- linux 实验感悟_linux实验心得
- Markdown基础语法详细版
- 为什么我们需要表明身份:EV证书的价值
- android 仿美团日历,仿小米日历 纵享丝滑切换的周月效果
- 博士申请 | 华东师范大学张凯教授课题组招收图神经网络方向博士生
- 亚马逊英国站小风扇UKCA认证办理流程
- Java 中tag配置文件中的标签属性意思
热门文章
- java 定义类变量初始化吗_Java的变量有哪些类型?变量如何定义?如何初始化?请说明理由并举例_学小易找答案...
- Formik官方应用案例解析( 五)React Native
- 学习微信小程序之css14浮动的特性
- Html.BeginForm 与Section、Partial View 和 Child Action
- C++ string详解
- JAVA版连连看算法研究
- maskrcnn用于目标检测_用于目标检测的池化渐进网络(Pooling Pyramid Network)
- 在iframe内页触发顶层页面body的blur事件
- .NET 中使用 Mutex 进行跨越进程边界的同步 - walterlv
- (转)flask的context机制