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.

主站蜘蛛池模板: 狼友视频一区二区三区| 亚洲AV无码一二区三区在线播放| 国产精品免费电影| 在线观看亚洲精品福利片 | 中国一级特黄大片在线观看| 久久久久九九精品影院| 久久动漫精品| 国产在线观看人成激情视频| 孕妇高潮太爽了在线观看免费| 亚洲bt欧美bt精品| 99在线观看视频免费| 国产欧美日韩精品综合在线| 99偷拍视频精品一区二区| 免费可以看的无遮挡av无码 | 国产va免费精品观看| 青青草原偷拍视频| 欧美视频在线观看第一页| 亚洲色图欧美一区| 日韩一区二区三免费高清| 99re在线免费视频| 青青久久91| 无码视频国产精品一区二区 | 91视频首页| 一级毛片基地| 亚洲中文字幕23页在线| 亚洲欧洲天堂色AV| 日韩精品久久无码中文字幕色欲| 中文字幕久久亚洲一区| 啦啦啦网站在线观看a毛片 | 99精品免费欧美成人小视频| 国产精品免费p区| 一本一道波多野结衣av黑人在线| 韩日免费小视频| 97无码免费人妻超级碰碰碰| 人妻中文字幕无码久久一区| 色婷婷啪啪| 波多野结衣国产精品| 大陆国产精品视频| 亚洲另类国产欧美一区二区| 久久五月视频| 亚洲成A人V欧美综合| 色婷婷综合激情视频免费看| 手机在线免费毛片| 日韩欧美91| 97视频在线精品国自产拍| 亚洲精品无码AⅤ片青青在线观看| 永久在线精品免费视频观看| 欧美精品H在线播放| 久久频这里精品99香蕉久网址| 在线观看国产黄色| 91色在线观看| 亚洲美女视频一区| 99无码中文字幕视频| 亚洲女同欧美在线| 国产爽爽视频| 久久一色本道亚洲| 新SSS无码手机在线观看| 色婷婷成人网| 萌白酱国产一区二区| 精品久久久久久中文字幕女 | 国产后式a一视频| 久996视频精品免费观看| 日韩一级毛一欧美一国产 | 久久久噜噜噜| 国产嫖妓91东北老熟女久久一| 亚洲成a人片在线观看88| 国产精品白浆在线播放| 日韩中文精品亚洲第三区| 久久黄色影院| 国产AV无码专区亚洲A∨毛片| 国产日韩欧美在线视频免费观看| 人妻丰满熟妇av五码区| 免费国产高清精品一区在线| 国产综合另类小说色区色噜噜| 国产福利影院在线观看| 国产午夜精品一区二区三| 91精品免费高清在线| 日本在线欧美在线| 人妻丰满熟妇啪啪| 久青草国产高清在线视频| 国产视频你懂得| 四虎永久免费网站|