Scala编程基础6:连接mysql数据库、在scala中使用fastJson

一、scala连接mysql数据库

/**
 * scala连接mysql数据库
 */
object JDBCDEmo8 {
  def main(args: Array[String]): Unit = {
    //加载驱动
    Class.forName("com.mysql.jdbc.Driver")

    //创建与数据库连接对象
    val conn: Connection = DriverManager.getConnection("jdbc:mysql://192.168.19.100/bigdata29?useUnicode=true&characterEncoding=utf8&useSSL=false", "root", "123456")

    //为了防止sql注入
    val state: PreparedStatement = conn.prepareStatement("select * from bigdata29.student where sage > ?")
    state.setString(1,"18")

    //执行sql语句
    val resultSet: ResultSet = state.executeQuery()
   while (resultSet.next()){
     val sno: String = resultSet.getString("sno")
     val sname: String = resultSet.getString("sname")
     val sgender: String = resultSet.getString("sgender")
     val sage: Int = resultSet.getInt("sage")
     val sclass: String = resultSet.getString("sclass")
     println(f"${sno},${sname},${sgender},${sage},${sclass}")
   }
    //释放资源
    state.close()
    conn.close()
  }
}

二、在scala中使用fastJson

import com.alibaba.fastjson.{JSON, JSONArray, JSONObject}
import scala.io.Source

/**
 * 使用第三方的json解析工具:fastjson(fastjson是阿里很有名的json处理工具包) 或者 Gson(谷歌的)
 */
object JsonDemp9 {
  def main(args: Array[String]): Unit = {
    val stuList1: List[String] = Source.fromFile("scala/data/stu2.json").getLines().toList
    val jsonStr: String = stuList1.mkString("\n")


//    //使用fastjson获取json对象
//    val jsonObject: JSONObject = JSON.parseObject(jsonStr)
//    //通过json对象使用键获取值
//    val name: String = jsonObject.getString("name")
//    println(name)

    //数据:[{"address":"安徽合肥","name":"张三","age":18},{"like":["踢足球","打篮球","举杠铃"],"name":"李四","age":18}]
    val jsonarray: JSONArray = JSON.parseArray(jsonStr)
    //通过索引获取数组中第二个json串
    val jSONObject: JSONObject = jsonarray.getJSONObject(1)
    println(jSONObject)  //{"like":["踢足球","打篮球","举杠铃"],"name":"李四","age":18}
    val habbyValue: String = jSONObject.getString("like")
    println(habbyValue)  //["踢足球","打篮球","举杠铃"]
println("="*100)


    //遍历
    var index = 0
    while (index<jsonarray.size()){
      //通过索引下表获取每一个json串
      println(jsonarray.getJSONObject(index))
      index+=1
    }

  }
}

相关推荐

  1. 基于scala使用flink将kafka数据写入mysql示例

    2024-05-15 15:38:12       59 阅读
  2. Scala】一、Scala 语法基础

    2024-05-15 15:38:12       44 阅读
  3. Scala基础面向对象编程

    2024-05-15 15:38:12       22 阅读
  4. <span style='color:red;'>Scala</span>

    Scala

    2024-05-15 15:38:12      38 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-15 15:38:12       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-15 15:38:12       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-15 15:38:12       87 阅读
  4. Python语言-面向对象

    2024-05-15 15:38:12       96 阅读

热门阅读

  1. uniapp实现拖拽排序+滑动删除功能

    2024-05-15 15:38:12       31 阅读
  2. SQL Server BULK INSERT

    2024-05-15 15:38:12       38 阅读
  3. 常见网络攻击及解决方案

    2024-05-15 15:38:12       34 阅读
  4. 2024年广东省助理工程师职称评审指南!

    2024-05-15 15:38:12       39 阅读
  5. 【数据库】银行转账并发问题

    2024-05-15 15:38:12       34 阅读
  6. 学习MySQL(一):了解数据库

    2024-05-15 15:38:12       34 阅读
  7. Flink中基于Chandy-Lamport算法的分布式快照实现详解

    2024-05-15 15:38:12       37 阅读
  8. Qt中的TCP通信:一个详细指南

    2024-05-15 15:38:12       35 阅读
  9. LeetCode1523.在区间范围内统计奇数数目

    2024-05-15 15:38:12       36 阅读
  10. 桥接模式

    2024-05-15 15:38:12       31 阅读