<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 環境搭建 創建一個Java類com.QuickTest,如下 ```java import com.zaxxer.hikari.HikariDataSource; import org.beetl.sql.core.*; import org.beetl.sql.core.db.H2Style; import org.beetl.sql.ext.DBInitHelper; import org.beetl.sql.ext.DebugInterceptor; import javax.sql.DataSource; import java.util.Set; public class QuickTest { private static DataSource datasource() { HikariDataSource ds = new HikariDataSource(); //內存數據庫 ds.setJdbcUrl("jdbc:h2:mem:dbtest;DB_CLOSE_ON_EXIT=FALSE"); ds.setUsername("sa"); ds.setPassword(""); ds.setDriverClassName("org.h2.Driver"); return ds; } private static SQLManager getSQLManager(){ //得到一個數據源 DataSource dataSource = datasource(); //得到一個ConnectionSource, 單數據源 ConnectionSource source = ConnectionSourceHelper.getSingle(dataSource); //SQLManagerBuilder 唯一必須的參數就是ConnectionSource SQLManagerBuilder builder = new SQLManagerBuilder(source); //命名轉化,數據庫表和列名下劃線風格,轉化成Java對應的首字母大寫,比如create_time 對應ceateTime builder.setNc(new UnderlinedNameConversion()); //攔截器,非必須,這里設置一個debug攔截器,可以詳細查看執行后的sql和sql參數 builder.setInters(new Interceptor[]{new DebugInterceptor()}); //數據庫風格,因為用的是H2,所以使用H2Style, builder.setDbStyle(new H2Style()); SQLManager sqlManager = builder.build(); return sqlManager; } public static void main(String[] args) throws Exception { SQLManager sqlManager = getSQLManager(); //初始化數據腳本,執行后,內存數據庫將有一個sys_user表和模擬數據 DBInitHelper.executeSqlScript(sqlManager,"db/schema.sql"); // 得到數據庫的所有表 Set<String> all = sqlManager.getMetaDataManager().allTable(); System.out.println(all); } } ``` 如上main方法將會得到一個sqlMannger類,這個是操作數據庫的的基礎類,提供了所有訪問數據庫的API。可以現在運行main方法,看看` System.out.println(all); `是否輸出了sys_user. > 實際項目,總是創建 Mapper接口 來代替SQLManager 的調用,SQLManager 屬于一個基礎底層的類。 關于Mapper,參考本章的《使用Mapper》 新建一個POJO對象 com.UserEntity,與sys_user表對應 ```java @Data @Table(name="sys_user") public class UserEntity { @AutoID private Integer id; private String name; private Integer departmentId; } ``` 這個Pojo對象我們注意到使用了@Table注解,表明了關聯的表是sys_user. @Table注解是非必須的,如果符合命名轉化(NameConversion).也可以不需要 @AutoID 作用于注解上,表示這是一個自增主鍵, 其他標識主鍵的注解還有@AssignID,@SeqID @Data注解是,來自lombok,自動實現getter和setter方法。BeetlSQL 同其他流行框架一樣,需要POJO遵循Java規范,如果你使用lombok,工程還需要依賴 ```xml <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.18</version> <scope>provided</scope> </dependency> ``` 如果你不是lombok,你需要為id和name屬性添加getter和setter方法,如下 ```java @Table(name="sys_user") public class UserEntity { @AutoID private Integer id; //通常數據庫實體屬性,都盡量避免原始類型 private String name; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } // 忽略name和departmentId } ``` > 注意,BeetlSQL并不要求POJO與表完全對應,BeetlSQL只處理POJO和表的交集,因此,MyUser對象只有id和name屬性。 > > 注意:BeetlSQL處理的POJO必須符合JavaBean規范,也就是有getter和setter方法,且這些方法符合JavaBean命名規范。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看