package scala_mysql_DataRelation
case class Department(name: String)
case class Person(name: String)
case class PersonDepartment(person: Person, department: Department, isMainDepartment: Boolean)
import sorm._
object Db extends Instance(
entities = Set(
Entity[Department](),
Entity[Person](),
Entity[PersonDepartment]()
),
url = "jdbc:mysql://localhost/testscala",
user = "root",
password = "",
initMode = InitMode.DropAllCreate
)
/**
* Created by aminic on 2014-11-18.
*/
object Main {
def main(args: Array[String]) {
println("OK")
val p1 = Person("lucy")
Db.save(p1)
println("lucy is saved")
val p2 = Person("maven")
Db.save(p2)
println("maven is saved")
val d = Department("Basic Process Unit")
Db.save(d)
println("Basic Process Unit is saved")
val resultLucy = Db.query[Person].whereEqual("name", "lucy").fetchOne().get
val resultDepartment = Db.query[Department].whereEqual("name", "Basic Process Unit").fetchOne().get
val relation1 = PersonDepartment(resultLucy, resultDepartment, true)
Db.save(relation1)
println("lucy and Basic Process Unit relation is saved")
val resultMaven = Db.query[Person].whereEqual("name", "maven").fetchOne().get
val relation2 = PersonDepartment(resultMaven, resultDepartment, true)
Db.save(relation2)
println("maven and Basic Process Unit relation is saved")
val persons = Db.query[PersonDepartment]
.whereEqual("department.name", "Basic Process Unit")
.fetch()
.map(_.person)
println("Get Basic Process Unit PersonList:")
for (p <- persons)
println(p.name)
println("END")
}
}
SORM中的数据关系
最新推荐文章于 2024-08-02 22:16:19 发布