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.

主站蜘蛛池模板: 一区二区午夜| 久久精品视频一| 色网站免费在线观看| 国产激情第一页| 国产男女免费完整版视频| 国产成人高清精品免费| 亚洲码在线中文在线观看| 99久视频| 免费国产黄线在线观看| 欧美视频免费一区二区三区| 亚洲国产欧洲精品路线久久| 亚洲成人福利网站| 凹凸国产熟女精品视频| a级免费视频| 亚洲中文在线看视频一区| 伊人无码视屏| 无码内射在线| 精品国产自在在线在线观看| 午夜一区二区三区| 91麻豆精品国产91久久久久| 日韩123欧美字幕| 久草视频中文| 国产成人精品视频一区视频二区| 久久婷婷五月综合色一区二区| 亚洲欧洲日产国码无码av喷潮| 成人一级免费视频| 日本免费一区视频| 亚洲午夜福利精品无码| 亚洲一区第一页| 漂亮人妻被中出中文字幕久久| 国产女人综合久久精品视| 午夜精品久久久久久久无码软件| 中日韩欧亚无码视频| 经典三级久久| 欧美怡红院视频一区二区三区| 精品久久国产综合精麻豆| 国产成人久久综合一区| av一区二区三区在线观看 | 精品久久国产综合精麻豆| 国产自在线拍| 欧美不卡二区| 精品国产一二三区| 一级成人欧美一区在线观看| 亚洲网综合| 欧美日韩导航| 美女内射视频WWW网站午夜| 国产肉感大码AV无码| 久久久久久高潮白浆| 久久国产精品电影| 色婷婷国产精品视频| 亚洲成人高清无码| 国产福利大秀91| 色妞www精品视频一级下载| 日韩在线中文| 香蕉视频在线观看www| 精品少妇人妻一区二区| 91九色视频网| 国内精品免费| 在线观看亚洲精品福利片| 国产精品一区在线观看你懂的| 亚洲精品制服丝袜二区| 中文精品久久久久国产网址| 国产1区2区在线观看| 99激情网| 久久亚洲天堂| 亚洲永久色| 亚洲中文字幕在线观看| 国产成人a毛片在线| a级高清毛片| 中文字幕在线看| 亚洲国产精品国自产拍A| 福利视频一区| 亚洲福利片无码最新在线播放| 成人在线不卡视频| 狠狠做深爱婷婷久久一区| 一级毛片中文字幕| 亚洲午夜福利精品无码不卡| 狠狠五月天中文字幕| 久久久久久久久亚洲精品| 国产噜噜噜视频在线观看| 久久99热66这里只有精品一| 一个色综合久久|