• result


    /**
    * Created by lkl on 2017/7/31.
    */
    /**
    * Created by lkl on 2017/6/26.
    *///spark-shell --driver-class-path /home/hadoop/test/mysqljdbc.jar
    import java.math.BigDecimal
    import java.sql.{DriverManager, ResultSet}
    import org.apache.spark.SparkContext
    import org.apache.spark.SparkConf

    object result {
    val rl= "jdbc:mysql://10.19.65.17:54321/emotion?user=emotion&password=qingxu&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false"
    classOf[com.mysql.jdbc.Driver]
    val conn = DriverManager.getConnection(rl)

    def main(args: Array[String]) {
    val conf = new SparkConf()
    val sc = new SparkContext(conf)
    val sqlContext = new org.apache.spark.sql.SQLContext(sc)

    val titlesplit1 = sqlContext.jdbc("jdbc:mysql://10.19.65.17:54321/emotion?user=emotion&password=qingxu", "middle")
    val titlesplit = titlesplit1.toDF().registerTempTable("middle")

    val format2 = new java.text.SimpleDateFormat("yyyy-MM-dd")
    val dat = format2.format(new java.util.Date().getTime() - 1 * 24 * 60 * 60 * 1000).toString
    import sqlContext.implicits._

    val value = sqlContext.sql("SELECT SUBSTR(middle.`times`,1,10) AS thetime,middle.`category`,SUM(middle.`svalue`)/COUNT(middle.`innserSessionid`) AS weight FROM middle WHERE " +
    " middle.`times` not LIKE "%鍗板彂" and middle.`svalue` IS NOT NULL AND middle.`category` IS NOT NULL GROUP BY SUBSTR(middle.`times`,1,10),middle.`category` ORDER BY category,thetime ")
    val df=value.toDF("thetime","category","weight")
    // df.insertIntoJDBC(rl,"result",false)

    val a=value.count()
    val p1 = value.map(p => {
    val v0 = p.getString(0)
    val v1 = p.getString(1)
    val v2 = p.getDecimal(2)
    (v0,v1,v2)

    })
    p1.foreach(p => {
    val v1=p._1
    val v2=p._2
    val v3=p._3
    val a=v1.split(" ").head==dat
    println(a,v1.split(" ").head,dat)
    if(v1==dat)
    {
    insert(v1,v2,v3)
    }
    })
    conn.close()

    }

    def insert (value0:String,value1:String,value2:BigDecimal): Unit ={


    val statement = conn.createStatement(ResultSet.TYPE_FORWARD_ONLY, ResultSet.CONCUR_UPDATABLE)
    // CREATE TABLE words2(innersessionId VARCHAR(100),words VARCHAR(100), VARCHAR(100),posit VARCHAR(100),va VARCHAR(100))
    try {
    val prep = conn.prepareStatement("INSERT INTO result(thetime,category,weight) VALUES (?,?,?) ")
    prep.setString(1,value0)
    prep.setString(2,value1)
    prep.setBigDecimal(3,value2)
    prep.executeUpdate
    } catch{
    case e:Exception =>e.printStackTrace
    }
    finally {
    }

    }

    }

  • 相关阅读:
    网络基础
    关于actionscript中新建一个sprite,设置大小(宽高)的问题。
    Android SDK无法更新问题解决 ---- 还可解决无法上google的问题
    android apk简单反编译
    Flash的坑之ExternalInterface.call只返回null值的解决办法
    Flash Socket简单调试工具
    进制转换 正进制
    Codeforces Div3 #498 A-F
    UVa10082
    div与div之间的拖拽
  • 原文地址:https://www.cnblogs.com/canyangfeixue/p/8566849.html
Copyright © 2020-2023  润新知