1. 程式人生 > >playframework之連線MySQL資料庫

playframework之連線MySQL資料庫

如何使用playframework 來連線資料庫。playframework是當下比較流行的開發框架,java和Scala都可以使用,但是Scala用的比較多一點。在這裡我用的是Scala。

    正式開始:

    1、首先建立一個工程,名字為:HelloWorld;

     不建議用IDE建立,因為現在IntelliJ idea和Eclipse做的Scala外掛還不夠好用,開發中會出現很多問題,建議用typeSafe魔板建立。

    2、開啟工程的bulid.sbt檔案;加上這麼一句:

      
    3、然後將MySQL的驅動也加上

  

  在sbt中加入了新的依賴以後,一定要記得refresh一下,這樣sbt才能將新加的東西加入。

  4、接下來,我們開啟conf/application.conf檔案,



將自己的資料庫連結資訊添上去。

注意,如果想連結多個數據源,只需要修改“db.default.driver”就可以,注意“db.default.driver”中“default”是資料來源的名字,可以修改。例如,你想建立一個“abc”資料來源,就可以寫成“db.abc.driver”

,在程式碼中獲取資料來源的時候,就寫成DB.getDataSource("abc"),如果想獲取預設資料來源(default),可以直接寫成DB.getDataSource(),因為:

這是原始碼,顯而易見了吧。而且通過原始碼,可以知道,play用的資料庫連結池是BoneCP,這是一個很棒的資料庫連線池,比DBCP和C3P0要快很多,但是沒有HikariCP快,BoneCP的官方文件是這麼說的:“It beats older connection pools such as C3P0 and DBCP but should now be considered deprecated in favour of HikariCP

”不知道play以後會不會使用HikariCP作為資料庫連線池。而且,play的資料庫連線池是寫死的,沒法通過application.conf擴充套件資料庫連線池(可以用其他途徑擴充套件,如自己在sbt中依賴資料庫連線池,然後不通過配置檔案,用資料庫本身的方法來獲取資料來源實現連線。),個人感覺應該改良一下,呵呵,勿拍磚,已包紮。

6、用play自帶的連線池連結資料庫

建立一個Db object,在object中寫一個函式(或者一個成員變數也可以),獲取資料來源,連線資料庫。


注意,一定要“import scala.slick.driver.MySQLDriver.simple._”和“import play.api.Play.current”,特別是後者,非常容易忘,因為“DB.getDataSource()”會需要一個隱式引數(第五步的原始碼圖中可以看到),所以即使漏“play.api.Play.current”在IDE裡編寫也不會出錯。

7、根據自己的資料庫表,生成models(或者根據entity生成資料庫表也可以)。如何生成可以檢視slick文件

  當然嘍還有其他方式可以實現資料庫的連結,但是個人感覺這是最好的方式。typeSafe中的給的幾個例子都是基於DBAction的,個人感覺這樣有些弊端,因為如果用DBAction的話,controller層和model層就不緊密結合了,不符合play本身MVC的設計模式。

   以上。

原文:http://blog.csdn.net/i6448038/article/details/42155833

相關推薦

playframework連線MySQL資料庫

如何使用playframework 來連線資料庫。playframework是當下比較流行的開發框架,java和Scala都可以使用,但是Scala用的比較多一點。在這裡我用的是Scala。     正式開始:     1、首先建立一個工程,名字為:HelloWorl

PyCharm連線MySQL資料庫

1.在PyCharm右側工具欄有Database,點選開啟 如果沒有,則在view | Tool Windows | Database 選擇顯示 2.點選database中的“+”, 選擇Data S

【TCL】使用TCL連線Mysql資料庫編譯mysqltcl(TCL安裝在CentOS 7中)

最近在用tcl,想著連線mysql,從網上查了一下發現用mysqltcl比較好,不過需要自己編譯,使用過程遇上一些問題,因此就總結了一下。首先是先編譯mysqltcl。說明一下,我的tcl是通過yum install tcl命令直接安裝的,因此不同安裝方式tcl路徑可能有變化,例如如果是通過rpm安

【Mac系統 + Python + Django】開發一個釋出會系統【Django模型(二)】 【Mac系統 + Mysql安裝Mysql資料庫 【Python + Mysql用pymysql庫連線Mysql資料庫並進行增刪改查操作

上一部分給大家介紹Django的檢視。 接下來繼續來了解Django框架,來看第二部分,此部分是對資料庫的操作。   目錄: 一、設計系統表 二、admin後臺管理 三、基本資料訪問(SQLite資料庫) 四、Django配置MySQL   &

jmeterjdbc連線mysql資料庫

研究了一下jmeter如何連線mysql,進行增刪改查操作,下面記錄一下自己弄的時候的步驟 1.環境準備: 安裝jmeter(官網自行下載);下載一個mysql-connector-java-5.1.40.jar包,版本可以不一樣,放到jmeter的lib目錄下。(一

JDBC詳解mySQL資料庫連線和基本操作一

JDBC詳解 JDBC詳解 一 JDBC基本操作 MySQL的JDBC驅動包: mysql-connector-java-5.1.3

Jmeter取樣器——通過Jmeter JDBC Request連線MySQL資料庫

Jmeter中的Sampler(取樣器)是與伺服器進行互動的單元。 Jmeter JDBC Request的工作通常分3步進行: 向伺服器傳送請求; 記錄伺服器的響應資料; 記錄響應時間。 具體步驟如下: 一、配置JDBC Connection Configur

MySQL—— 使用Hibernate連線MySQL資料庫MySQL連線超時斷開的問題

最近讓人頭疼的一個問題,就是伺服器在不確定的時間點會出現關於資料庫連線的Exception,大致的Exception如下: org.hibernate.util.JDBCExceptionReporter - SQL Error:0, SQLState: 08S01 o

PHP連線mysql資料庫根據配置檔案選擇mysqli還是pdo方式

配置檔案config.php <?php return array( 'DB' => array( 'default_extension' => 'mysqli', ),

Java連線MySQL資料庫properties檔案配置

[ mysql-dbconfig.properties ] 檔案: # 資料庫驅動: driverClassName:com.mysql.jdbc.Driver # 資料庫連結地址: url:jdbc:mysql://localhost:3306/db_app

在eclipse上連線MySQL資料庫的步驟菜鳥入門

在網上搜了很多關於如何在eclipse上連線資料庫的問答和部落格,最終廢了好大勁才弄懂,於是做了這麼一個菜鳥級別的教程 一共有三個步驟吧: ①下載jdbc驅動jar包 ②建立資料庫 ③用eclipse嘗試載入sql驅動並獲得

Python道--Python連線MYSQL資料庫和傳送郵件

主機環境:Linux yan-Server 3.4.36-gentoo #3 SMP Mon Apr 1 14:09:12 CST 2013 x86_64 AMD Athlon(tm) X4 750K Quad Core Processor AuthenticAMD GNU

封裝類MYSQLHelper(C#連線MySql資料庫

using System; using System.Collections; using System.Configuration; using MySql.Data; using MySql.Data.MySqlClient; using System.Da

android連線Mysql資料庫JDBC方式

開篇之前,提醒一句,記得關閉電腦防火牆,我的Android手機一直連不上電腦MySQL,排查了兩天,結果竟然是電腦防火牆的原因,那股不爽之情,油然而生.切記!!! 一.建立一個資料庫和若干表,並匯入相關資訊.這裡以我之前使用的一個圖書系統的資料庫為例子. 首先假設已經安裝並配置好Mysql.(建議大家安裝W

ERROR:java連線mysql資料庫8.0以上版本

先上解決辦法: 1、修改jdbc.properties    原來是: jdbc.url=jdbc:mysql://localhost:3306/language_protection?useUnicode=true&characterEncoding=UTF

PHP 連線mysql資料庫

報錯: Warning: mysqli::mysqli(): (HY000/2002): No such file or directory <span style="font-size:18px;">cd /var sudo mkdir m

連線mysql資料庫連線報錯,是pom檔案配置mysql連線驅動版本號問題

前一段時間安裝了最新的mysql 8.0.11,然後啟動一個專案的時候報錯資訊如下: [ERROR] 2018-08-14 17:28:21,246 method:com.alibaba.druid.pool.DruidDataSource.init(DruidDataSource.java:6

mac下的用idea配置jsp+tomcat連線mysql資料庫的環境

第一步 這裡假設IDEA和tomcat都以配置完成,僅差連線資料庫。 去這裡下載連線Mysql所需要的驅動程式mysql-connector-java-5.1.47-bin.jar。 第二步 下載完成後解壓獲取 並把它放在和tomcat伺服器的lib同一個資料夾下

使用Eclipse的JDBC連線Mysql資料庫

因為好久沒有弄資料庫和程式碼,今天心血來潮,弄個簡單的連線恢復一下記憶。 環境:MySQL任意版本;eclipse任意版本;JDBC驅動jar包; 1.MySQL安裝完畢後,建立資料庫,建立表; Enter password:*******  //出現welcome to th

jdbc連線Mysql資料庫實現crud

一.首先下載jdbc連線包 https://www.mysql.com/products/connector/ 二:然後解壓出來就可以看見下面兩個壓縮檔案 開啟eclise,假設已經建立好一個java專案 右鍵單擊專案名然後選擇如下圖所示步驟操作就好: 專案名