Scala操作MySQL数据库
来源:互联网 发布:java方法交换两个变量 编辑:程序博客网 时间:2024/05/18 03:15
一、工具IDEA+MAVEN
二、Pom文件添加依赖
1、更改成自己的scala版本
<properties> <scala.version>2.11.8</scala.version> </properties>
2、添加驱动依赖
<dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.12</version> </dependency>
三、代码书写
1、DBUtils
package com.encapsulationimport java.sqlimport java.sql.{Connection, DriverManager}/** * Created by A chun on 2017/10/18. */object DBUtils { val IP = "192.168.187.111" val Port = "3306" val DBType = "mysql" val DBName = "scala" val username = "root" val password = "123456" val url = "jdbc:" + DBType + "://" + IP + ":" + Port + "/" + DBName classOf[com.mysql.jdbc.Driver] def getConnection(): Connection = { DriverManager.getConnection(url, username, password) } def close(conn: Connection): Unit = { try { if (!conn.isClosed() || conn != null) { conn.close() } } catch { case ex: Exception => { ex.printStackTrace() } } }}
2、Operations
package com.encapsulationimport com.encapsulation.DBUtils.closeimport scala.collection.mutableimport scala.collection.mutable.ArrayBufferclass Operations { case class User(id: String, name: String, age: Int) //insert def add(user: User): Boolean = { val conn = DBUtils.getConnection() try { val sql = new StringBuilder() .append("INSERT INTO user(id, name, age)") .append(" VALUES(?, ?, ?)") val pstm = conn.prepareStatement(sql.toString()) pstm.setObject(1, user.id) pstm.setObject(2, user.name) pstm.setObject(3, user.age) pstm.executeUpdate() > 0 } finally { conn.close() } } //delete def delete(id: String): Boolean = { val conn = DBUtils.getConnection() try { val sql = "DELETE FROM user WHERE id = ?" val pstm = conn.prepareStatement(sql) pstm.setObject(1, id) pstm.executeUpdate() > 0 } finally { conn.close() } } //update def modify(user: User): Boolean = { val conn = DBUtils.getConnection() try { val sql = "UPDATE user SET age = ? WHERE id = ?" val pstm = conn.prepareStatement(sql) pstm.setObject(1, user.age) pstm.setObject(2, user.id) pstm.executeUpdate() > 0 } finally { conn.close() } } //select def query(id: Int): ArrayBuffer[mutable.HashMap[String, Any]] = { val conn = DBUtils.getConnection() try { val sql = new StringBuilder() .append("SELECT name, age") .append(" FROM user") .append(" WHERE id > ?") val pstm = conn.prepareStatement(sql.toString()) pstm.setObject(1, id) val rs = pstm.executeQuery() val rsmd = rs.getMetaData() val size = rsmd.getColumnCount() val buffer = new ArrayBuffer[mutable.HashMap[String, Any]]() while (rs.next()) { val map = mutable.HashMap[String, Any]() for (i <- 1 to size) { map += (rsmd.getColumnLabel(i) -> rs.getString(i)) } buffer += map } buffer } finally { conn.close() } }}
3、MySQLOperations
package com.encapsulationobject MySQLOperations { def main(args: Array[String]): Unit = { val op = new Operations() val user = op.User("5", "Allen", 34) //Insert //println(op.add(user)) //Delete println(op.delete("5")) //update //println(op.update(user)) }}
阅读全文
0 0
- 【scala 数据库操作】scala操作mysql数据库
- Scala操作MySQL数据库
- scala如何连接和操作mysql/oracle/sqlserver数据库
- Scala数据库操作
- scala操作数据库语句
- scala 连接mysql数据库
- scala-mysql数据库资源池
- spark连接数据库操作(scala实现)
- Scala 之 使用JDBC 操作 mysql
- scala使用JDBC连接mysql数据库
- scala使用JDBC连接mysql数据库
- mysql 数据库操作类
- mysql数据库操作
- mysql的数据库操作
- MYSQL 数据库操作类
- Mysql数据库操作新手入门
- mysql数据库操作
- Mysql数据库简单操作
- matlab中plot函数最简单应用
- 模板类实现顺序表
- 【NOIP2017提高A组集训10.21】 总结
- 【MySQL】MySQL API 示例代码
- Android移动开发-调用步行检测和步行计数传感器开发简易计步器的实现
- Scala操作MySQL数据库
- java的System.getProperty()方法可以获取的值
- [题解] P1955 程序自动分析 (并查集+哈希表)
- 【Leetcode-Medium-94】Binary Tree Inorder Traversal
- sql-server基础三(select 、update、insert,delete)
- HDU 2052 Picture(玩点不一样的)
- 如何测试一支笔
- 爬虫感悟1
- 文件对比工具