ScalikeJDBC是Scala开发人员基于SQL的简洁数据库访问库。该库自然包装JDBC API,为您提供易于使用且非常灵活的API。更重要的是,QueryDSL使您的代码类型安全且可重用。
ScalikeJDBC是一个实用且适合生产的产品。将此库用于实际项目。
在pom.xml文件中添加依赖
<dependency>
<groupId>org.scalikejdbc</groupId>
<artifactId>scalikejdbc_2.11</artifactId>
<version>3.3.2</version>
</dependency>
<dependency>
<groupId>org.scalikejdbc</groupId>
<artifactId>scalikejdbc-config_2.11</artifactId>
<version>3.3.2</version>
</dependency>
<!--mysql依赖的jar包-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.47</version>
</dependency>
在项目目录的resources下创建一个配置文件
在配置文件中写上
db.default.driver="com.mysql.jdbc.Driver"
db.default.url="jdbc:mysql://localhost:3306/g6_scala"
db.default.user="root"
db.default.password="root"
创建一个Scala类,再创建一个scala case class
package com.jeff
import scalikejdbc._
import scalikejdbc.config._
object ScalalikeJdbc {
def main(args: Array[String]): Unit = {
DBs.setupAll()
val people:List[user]= List(
user("1","jeff",21),
user("2","小十七",22),
user("3","大树",23),
user("4","zz",24),
user("5","小海",25),
user("6","蝶舞",26),
user("7","阿伟",27),
user("8","Mesut",28),
user("9","大国",29),
user("10","woods",30)
)
//往数据库中添加people List里面的对象到数据库中
val insert = DB.localTx { implicit session =>
for(x<-people){
SQL("insert into user values(?,?,?)").bind(x.id,x.name,x.age).update().apply()
}
}
//通过scalikejdbc查询user表所有的数据
val memberIds = DB readOnly { implicit session =>
sql"select * from
user".map(rs=>user(rs.string("id"),rs.string("name"),rs.int("age"))).list.apply()
}
//通过scalikejdbc将id=8的数据的age加10
val update = DB.autoCommit { implicit session =>
SQL("update user set age = age + 10 where id = ?").bind( "8").update().apply()
}
println(update)
DBs.closeAll()
}
}
package com.jeff
case class user(id:String,name:String,age:Int)