999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

淺談Spring數據庫開發的基本方法

2022-05-30 16:45:01翟高粵
客聯 2022年8期

翟高粵

摘 要:Spring是當今流行的Java Web開發框架,它能解決大部分企業應用開發的復雜性問題。對于Java開發人員來說,掌握Spring框架數據庫開發的基本方法,是進行編寫應用軟件的必備技能之一。本文主要介紹Spring框架數據庫開發的基本方法及應用,并通過一個實例說明Spring框架數據庫編程的基本使用方法,從而感受Spring數據庫編程的便利。

關鍵詞:Spring框架;MySQL;JDBC;數據庫編程

Spring 是在2003年興起的一個輕量級的Java應用開發框架,它是為了解決企業應用開發的復雜性而創建的。Spring框架降低了Java EE API的使用難度,特別是數據庫編程方面,Spring集成了JDBC,JDBC是Spring數據訪問/集成中的重要模塊,它負責數據庫資源管理和錯誤處理,大大簡化了開發人員對數據庫的操作,使得開發人員可以從煩瑣的數據庫操作中解脫出來,從而將更多的精力投入到編寫業務邏輯中。

1.相關理論

1.1 SpringJDBC

Spring JDBC是對傳統JDBC訪問的簡單封裝,使用Spring JDBC之后,可以省去一部分以前需要開發人員編寫的訪問數據的底層操作,比如注冊驅動、獲得連接、執行查詢等等。Spring JDBC相當于一個簡單封裝的持久層框架,原始功能比較簡單,使用起來也比較簡單,如果開發一些小型項目,是可以直接使用的,如果是一些大型項目,由于它并不是真正的orm框架,因此需要自己封裝一些工具,如果有能力封裝的話,那么Spring JDBC用起來是非常舒服的,性能也很強,不比mybatis差。

1.2 MySQL

MySQL是一個關系型數據庫管理系統,由瑞典MySQL AB 公司開發,屬于 Oracle 旗下產品。MySQL 是最流行的關系型數據庫管理系統之一,在 WEB 應用方面,MySQL是最好的 RDBMS (Relational Database Management System,關系數據庫管理系統) 應用軟件之一。

MySQL是一種關系型數據庫管理系統,關系數據庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度并提高了靈活性。

MySQL所使用的 SQL 語言是用于訪問數據庫的最常用標準化語言。MySQL 軟件采用了雙授權政策,分為社區版和商業版,由于其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型和大型網站的開發都選擇MySQL作為網站數據庫。

MySQL和Spring JDBC進行配合使用,兼容性好,開發效率高。

2.SpringJDBC模塊詳解

2.1 Spring JdbcTemplate

針對數據庫的操作,Spring框架提供了JdbcTemplate類,該類是Spring框架數據抽象層的基礎,其他更高層次的抽象類卻是構建于JdbcTemplate類之上。也就是說JdbcTemplate類是SpringJDBC的核心類。JdbcTemplate類的繼承關系如圖1所示。

從圖1可以看出,JdbcTemplate繼承自抽象類JdbcAccessor,同時實現了JdbcOperations接口。其中JdbcTemplate類的直接父類是JdbcAccessor,該類為子類提供了一些訪問數據庫時使用的公共屬性,具體如下。

(1)DataSource屬性

其主要功能是獲取數據庫連接,具體實現時還可以引入對數據庫連接的緩沖池和分布式事務的支持,它可以作為訪問數據庫資源的標準接口。

(2)SQLExceptionTranslator屬性

其主要功能通過必要的設置或者獲取SQLExceptionTranslator中的方法,可以使JdbcException在需要處理SQLException時,委托SQLExceptionTranslator的實現類來完成相關的轉譯工作。

(3)JdbcOperations接口

該接口定義了在JdbcTemplate類中可以使用的操作集合,包括添加、修改、查詢和刪

除等操作。

2.2 Spring JDBC的配置

Spring JDBC模塊主要由4個包組成,分別是core、dataSource、object和support包。Spring對數據庫的操作都封裝在這幾個包中,所以要想使用JDBC,就需要對其進行配置。

具體含義見表1所示。

定義JdbcTemplate時,需要將dataScource注入到JdbcTemplate中,而其他需要使用JdbcTemplate的Bean,也需要將JdbcTemplate注入到該Bean中。

3.SpringJDBC編程實現

在前面講到的JdbcTemplate類中,提供了大量的更新和查詢數據庫的方法,接下來本文使用這些方法來演示如何操作數據庫。

3.1 execute()方法

execute(String sql)方法能夠完成執行SQL語句的功能。

(1)首先我們先在MySQL中創建一個名為spring的數據庫,如圖1所示。

(2)在MyEclipse中,創建一個名為firstDataBase的Web項目,將運行Spring框架所需的5個基礎JAR包以及Spring事務處理的JAR包復制到項目的lib目錄并發布到類路徑中。

(3)在src目錄下,創建配置文件applicationContext.xml,在該文件中配置id為dataSource的數據源Bean和id為jdbcTemplate的JDBC模板Bean,并將數據源注入到JDBC模板中,具體代碼如下所示。

"org.springframework.jdbc.datasource.DriverManagerDataSource">

<!--數據庫驅動 -->

<!--連接數據庫的url -->

<!--連接數據庫的用戶名 -->

<!--連接數據庫的密碼 -->

<!-- 2配置JDBC模板 -->

class="org.springframework.jdbc.core.JdbcTemplate">

<!-- 默認必須使用數據源 -->

(4)在src目錄下,創建一個com.szjm.jdbc包,在該包中創建測試類JdbcTemplateTest。在該類的main()方法中通過Spring容器獲取在配置文件中定義的JdbcTemplate實例,然后用該實例的execute方法執行創建數據表的SQL語句,具體代碼如下。

@Test

public void mainTest() {

ApplicationContext applicationContext =

new ClassPathXmlApplicationContext("applicationContext.xml");

JdbcTemplate jdTemplate =

(JdbcTemplate) applicationContext.getBean("jdbcTemplate");

jdTemplate.execute("create table account(" +

"id int primary key auto_increment," +

"username varchar(50)," +

"balance double)");

System.out.println("創建成功”);

}

3.2 update方法

update方法可以完成插入、更新和刪除數據的操作。在JdbcTemplate類中,根據不同的參數,提供了一系列update方法,接下來本文使用這些方法來演示如何進行數據庫更新。

(1)創建實體類Account,在該類中定義id、username和balance屬性,以及其對應的getter/setter方法。

(2)創建接口AccountDao,并在接口中定義添加、更新和刪除賬戶的方法,部分代碼如下所示。

public interface AccountDao {

public int addAccount(Account account);

public int updateAccount(Account account);

public int deleteAccount(int id);

public Account findAccountById(int id);

public List findAllAccount();

}

(3)創建AccountDao接口的實現類AccountDaoImpl,并在類中實現添加、更新和刪除賬戶的方法。

public class AccountDaoImpl implements AccountDao {

private JdbcTemplate jdbcTemplate;

public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {

this.jdbcTemplate = jdbcTemplate;

}

public int addAccount(Account account) {

String sql = "insert into account(username,balance) value(?,?)";

Object[] obj = new Object[] {

account.getUsername(),

account.getBalance()

};

int num = this.jdbcTemplate.update(sql, obj);

return num;

}}

(4)在applicationContext.xml中,定義一個id為accountDao的Bean,該Bean用于將jadcTemplate注入到accountDao實例中,代碼如下所示。

<!-- 將jdbcTemplate注入到accountDao實例中 -->

4.結論

本文對Spring框架中使用JDBC進行數據操作的理論、方法和步驟進行詳細說明。首先了解了Spring JDBC中的核心類以及如何在Spring中配置JDBC,然后通過案例講解了Spring JDBC核心類JdbcTemplate中常用方法的使用,通過本文的學習,讀者能夠學會使用Spring框架進行數據庫開發,并能深切地體會到Spring框架進行數據庫編程的強大。

參考文獻:

[1]沃爾斯. Spring實戰 [M]. 人民郵電出版社,2016.

[2]卡內爾. Spring開發三劍客[M],人民郵電出版社, 2020.

[3] 陳恒等. Spring Boot從入門到實戰[M]. 清華大學出版社出版社,2020.

主站蜘蛛池模板: 四虎在线高清无码| 制服丝袜亚洲| 91精品国产一区| 欧美国产日韩在线观看| 无码中字出轨中文人妻中文中| 99伊人精品| 亚洲另类国产欧美一区二区| 亚洲精品成人片在线播放| 亚洲综合香蕉| 成人小视频网| 麻豆国产精品| 理论片一区| 5388国产亚洲欧美在线观看| 狠狠综合久久久久综| 少妇人妻无码首页| 久久亚洲国产最新网站| 国产网友愉拍精品视频| www.99在线观看| 国产丝袜丝视频在线观看| 日韩在线视频网| 久久综合色视频| www.国产福利| 亚洲国产精品日韩av专区| 思思99热精品在线| 色偷偷一区二区三区| 日韩在线欧美在线| 性做久久久久久久免费看| 日本三级欧美三级| 爽爽影院十八禁在线观看| 欧美一区二区三区不卡免费| 国产无码网站在线观看| 中文字幕av一区二区三区欲色| 无码免费视频| 国产AV无码专区亚洲A∨毛片| 欧美国产在线精品17p| 日韩a在线观看免费观看| 91色在线观看| 91免费国产在线观看尤物| 在线欧美一区| 久久国产精品夜色| 久久亚洲高清国产| AV不卡在线永久免费观看| 乱色熟女综合一区二区| 中文字幕 91| 亚洲天堂网站在线| 一区二区午夜| 色哟哟国产精品| 伊人久久大香线蕉影院| 国产拍在线| 国产精品无码AV中文| 97se亚洲综合不卡| 亚洲日韩精品综合在线一区二区| 久久精品视频亚洲| 99re精彩视频| 青青极品在线| 精品人妻一区二区三区蜜桃AⅤ| 亚洲欧美激情小说另类| 欧美精品成人| 国产97公开成人免费视频| 免费日韩在线视频| 久久semm亚洲国产| AV无码无在线观看免费| 欧美国产日韩在线播放| 97国产在线播放| 国产99精品久久| 国产美女91呻吟求| 欧美日韩v| a级高清毛片| 久久综合丝袜日本网| 高h视频在线| a色毛片免费视频| 亚洲人成网18禁| 一本一道波多野结衣av黑人在线| 美女被狂躁www在线观看| 国产成人综合亚洲欧美在| 欧美性色综合网| 麻豆精选在线| 91免费观看视频| 日本午夜三级| 亚洲无码四虎黄色网站| 成人欧美日韩| 一本大道无码高清|