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
    }

  }
}
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值