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品| 成人中文字幕在线| 亚洲av无码成人专区| 黄色网页在线播放| 久久久精品国产SM调教网站| 亚洲国产日韩在线成人蜜芽| 成人av手机在线观看| 亚洲视频在线观看免费视频| 一级香蕉视频在线观看| 五月天综合婷婷| 色偷偷av男人的天堂不卡| 久久久久九九精品影院| 亚洲人成影视在线观看| 国产麻豆另类AV| 97在线观看视频免费| 黄色网站在线观看无码| 欧美成人免费午夜全| 五月婷婷亚洲综合| 国产高清在线丝袜精品一区| 综合天天色| 亚洲天堂久久久| 素人激情视频福利| 国产乱子伦精品视频| 免费不卡视频| 视频二区欧美| 亚洲AV无码乱码在线观看裸奔| 一级香蕉人体视频| 亚洲成在人线av品善网好看| 亚洲成综合人影院在院播放| 精品亚洲麻豆1区2区3区| 免费A级毛片无码无遮挡| 中文字幕2区| 日韩精品无码免费专网站| 日韩成人在线一区二区| 亚洲精品动漫| 久久精品国产亚洲AV忘忧草18| 欧美精品v欧洲精品| 亚洲无码91视频| 中文字幕精品一区二区三区视频 | 色妞www精品视频一级下载| 制服丝袜一区| 97青草最新免费精品视频| 免费看美女自慰的网站| 亚洲免费播放| 国产精品三级专区| 亚洲天堂视频在线播放| 精品国产自| 国产欧美日韩在线在线不卡视频| 国产自产视频一区二区三区| 在线精品视频成人网| 国产精品福利导航| 日本亚洲成高清一区二区三区| 国产噜噜噜| 国产精品污视频| 国产精品精品视频| 福利一区三区| 久久久亚洲色| 欧美区一区| 无码中文字幕精品推荐| 久久精品一品道久久精品| 亚洲精品综合一二三区在线| 夜夜操天天摸| 热re99久久精品国99热| 本亚洲精品网站| 日本午夜视频在线观看| 国产精品99久久久久久董美香| 久久国语对白| 色悠久久久| 日韩成人免费网站| 欧美性精品不卡在线观看| 亚洲第一色视频| 毛片在线播放a| 潮喷在线无码白浆| 国产性爱网站| 99re热精品视频国产免费| 成人在线综合| 高h视频在线| 国产三区二区| 午夜精品影院| 视频国产精品丝袜第一页|