您好,登錄后才能下訂單哦!
今天就跟大家聊聊有關weed3-2.1中純java使用是怎樣的,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。
純java使用時,有三大接口可用:
db.table(..), db.call(..), db.sql()
。一般使用db.table(..)
接口進行鏈式操作居多。它的接口采用與SQL映射的方式命名。。。使用的人,容易想到能有哪些鏈式接口。像:.where(..) .and(..) .innerJoin(..)
等...
鏈式操作的套路: 以
db.table(..)
開始。 以.update(..)
或.insert(..)
或.delete(..)
或.select(..)
。 其中.select(..)
會返回IQuery
接口,提供了各種類型結果的選擇。
<dependency> <groupId>org.noear</groupId> <artifactId>weed3</artifactId> <version>3.2.2.4</version> </dependency> <!-- 數據庫連接器,我就不管了 -->
所有weed3的操作,都是基于DbContext。所以要先實列化一下。。。
需要有配置,可以在application.properties
獲取,可以通過配置服務獲取,可以臨時手寫一下。。
如果是 Spring 框架,可以通過注解獲取配置 如果是 solon 框架,可以通過注解 或 Aop.prop().get("xxx")獲取配置
2.有配置之后開始實列化DbContext。這里臨時手寫一下。
//使用Properties配置的示例 DbContext db = new DbContext(properties); //使用Map配置的示例 DbContext db = new DbContext(map); //使用proxool線程池配置的示例(好像現在不流行了) DbContext db = new DbContext("user","proxool.xxx_db"); //使用DataSource配置的示例(一般使用連接池框架時用;推薦 Hikari 連接池) //下行demo里用的正是 Hikari 連接池 DbContext db = new DbContext("user",new HikariDataSource(...)); //還有就是用url,username,password DbContext db = new DbContext("user","jdbc:mysql://x.x.x:3306/user","root","1234"); /* 我平時都用配置服務,所以直接由配置提供數據庫上下文對象。 */
常規查詢操作
//統計小于10的用戶數量 long num = db.table("user_info").where("user_id<?", 10).count(); //檢查用戶是不是存在 bool rst = db.table("user_info").where("user_id=?", 10).exists(); //獲取用戶性別 int sex = db.table("user_info").where("user_id=?", 10) .select("sex").getValue(); //獲取一個用戶信息 UserModel mod = db.table("user_info").where("user_id=?", 10).and("sex=1") .select("*").getItem(UserModel.class);
再來一把全套的"增刪改查"
//簡易.增 db.table("test").set("log_time", "$DATE(NOW())").insert(); //簡易.刪 db.table("test").where("id=?",1).delete(); //簡易.改 db.table("test").set("log_time", "$DATE(NOW())").where("id=?",1).update(); //簡易.查 var map = db.table("test").where("id=?",1).select("*").getMap();
//where 組 whreEq(filed,val) //filed等于val whereLt(filed,val) //小于 whereLte(filed,val) //小于等于 whereGt(filed,val) //大于 whereGte(filed,val) //大于等于 whereLk(filed,val) // LIKE //and 組 andEq(filed,val) //filed等于val andLt(filed,val) //小于 andLte(filed,val) //小于等于 andGt(filed,val) //大于 andGte(filed,val) //大于等于 andLk(filed,val) // LIKE //or 組 orEq(filed,val) //filed等于val orLt(filed,val) //小于 orLte(filed,val) //小于等于 orGt(filed,val) //大于 orGte(filed,val) //大于等于 orLk(filed,val) // LIKE //demo:: db.table("test").whereEq("id",1).delete(); db.table("test").whereEq("id",1).orEq("name","xidong").delete();
這是一個簡單的開始,希望能有個好的印象。
看完上述內容,你們對weed3-2.1中純java使用是怎樣的有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。