日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關咨詢
選擇下列產(chǎn)品馬上在線溝通
服務時間:8:30-17:00
你可能遇到了下面的問題
關閉右側工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
使用SpringMVC輕松處理多種數(shù)據(jù)庫(springmvc處理數(shù)據(jù)庫)

隨著互聯(lián)網(wǎng)的發(fā)展和數(shù)據(jù)量的不斷增加,各種數(shù)據(jù)庫也應運而生。其中常見的關系型數(shù)據(jù)庫有MySQL、Oracle、SQL Server等,非關系型數(shù)據(jù)庫有MongoDB、Redis等。在實際的項目開發(fā)中,我們往往需要同時連接和操作多個不同類型的數(shù)據(jù)庫。SpringMVC提供了強大的數(shù)據(jù)訪問層支持,能夠輕松處理多種數(shù)據(jù)庫,本文將介紹如何使用SpringMVC實現(xiàn)多種數(shù)據(jù)庫的連接和操作。

成都創(chuàng)新互聯(lián)是一家以網(wǎng)站建設、網(wǎng)頁設計、品牌設計、軟件運維、seo優(yōu)化排名、小程序App開發(fā)等移動開發(fā)為一體互聯(lián)網(wǎng)公司。已累計為混凝土攪拌機等眾行業(yè)中小客戶提供優(yōu)質的互聯(lián)網(wǎng)建站和軟件開發(fā)服務。

1. 引入SpringMVC數(shù)據(jù)訪問支持

在項目中引入SpringMVC數(shù)據(jù)訪問支持,需要在pom.xml文件中添加對應依賴。以下是集成MySQL、Oracle、SQL Server和MongoDB的依賴:

“`

org.springframework

spring-jdbc

5.1.8.RELEASE

mysql

mysql-connector-java

8.0.13

com.oracle

ojdbc6

11.2.0.3

com.microsoft.sqlserver

mssql-jdbc

7.0.0.jre8

org.springframework.data

spring-data-mongodb

2.1.7.RELEASE

org.mongodb

mongodb-driver-sync

3.12.2

“`

其中,spring-jdbc是Spring JDBC的核心包,包含了Spring JDBC的所有功能。mysql-connector-java是MySQL的Java驅動。ojdbc6是Oracle的Java驅動。 mssql-jdbc是SQL Server的Java驅動。spring-data-mongodb是Spring封裝的操作MongoDB的Java包。mongodb-driver-sync是MongoDB的Java驅動。

2. 配置數(shù)據(jù)源

在配置文件中添加數(shù)據(jù)源相關信息。以下是MySQL、Oracle、SQL Server和MongoDB的配置示例:

MySQL:

“`

spring.datasource.url=jdbc:mysql://localhost:3306/test

spring.datasource.username=root

spring.datasource.password=123456

spring.datasource.driverClassName=com.mysql.cj.jdbc.Driver

“`

Oracle:

“`

spring.datasource.url=jdbc:oracle:thin:@localhost:1521:XE

spring.datasource.username=system

spring.datasource.password=123456

spring.datasource.driverClassName=oracle.jdbc.driver.OracleDriver

“`

SQL Server:

“`

spring.datasource.url=jdbc:sqlserver://localhost:1433;databaseName=test

spring.datasource.username=sa

spring.datasource.password=123456

spring.datasource.driverClassName=com.microsoft.sqlserver.jdbc.SQLServerDriver

“`

MongoDB:

“`

spring.data.mongodb.uri=mongodb://localhost:27017/test

“`

3. 編寫Dao層代碼

創(chuàng)建對應的Dao類,在其中提供操作數(shù)據(jù)庫的方法,實現(xiàn)數(shù)據(jù)的增刪改查等操作。以下是MySQL、Oracle、SQL Server和MongoDB的Dao類示例:

MySQL:

“`

@Repository

public class UserDao {

@Autowired

JdbcTemplate jdbcTemplate;

public List findAll() {

return jdbcTemplate.query(“select * from user”, new BeanPropertyRowMapper(User.class));

}

public void add(User user) {

jdbcTemplate.update(“insert into user (name, age) values (?, ?)”, user.getName(), user.getAge());

}

public void delete(long id) {

jdbcTemplate.update(“delete from user where id = ?”, id);

}

public void update(User user) {

jdbcTemplate.update(“update user set name = ?, age = ? where id = ?”, user.getName(), user.getAge(), user.getId());

}

}

“`

Oracle:

“`

@Repository

public class UserDao {

@Autowired

JdbcTemplate jdbcTemplate;

public List findAll() {

return jdbcTemplate.query(“select * from \”user\””, new BeanPropertyRowMapper(User.class));

}

public void add(User user) {

jdbcTemplate.update(“insert into \”user\” (name, age) values (?, ?)”, user.getName(), user.getAge());

}

public void delete(long id) {

jdbcTemplate.update(“delete from \”user\” where id = ?”, id);

}

public void update(User user) {

jdbcTemplate.update(“update \”user\” set name = ?, age = ? where id = ?”, user.getName(), user.getAge(), user.getId());

}

}

“`

SQL Server:

“`

@Repository

public class UserDao {

@Autowired

JdbcTemplate jdbcTemplate;

public List findAll() {

return jdbcTemplate.query(“select * from [user]”, new BeanPropertyRowMapper(User.class));

}

public void add(User user) {

jdbcTemplate.update(“insert into [user] (name, age) values (?, ?)”, user.getName(), user.getAge());

}

public void delete(long id) {

jdbcTemplate.update(“delete from [user] where id = ?”, id);

}

public void update(User user) {

jdbcTemplate.update(“update [user] set name = ?, age = ? where id = ?”, user.getName(), user.getAge(), user.getId());

}

}

“`

MongoDB:

“`

@Repository

public class UserDao {

@Autowired

private MongoTemplate mongoTemplate;

public List findAll() {

return mongoTemplate.findAll(User.class);

}

public void add(User user) {

mongoTemplate.save(user);

}

public void delete(User user) {

mongoTemplate.remove(user);

}

public void update(User user) {

mongoTemplate.save(user);

}

}

“`

其中,JdbcTemplate是Spring提供的JDBC模板,能夠簡化JDBC的操作。BeanPropertyRowMapper是Spring提供的一個實現(xiàn)了ResultSetExtractor接口的類,能夠將一個ResultSet對象轉換成一個Java對象。MongoTemplate是Spring封裝的操作MongoDB的類。

4. 編寫Service層代碼

創(chuàng)建對應的Service類,在其中調用Dao層提供的方法,實現(xiàn)業(yè)務邏輯的處理。以下是MySQL、Oracle、SQL Server和MongoDB的Service類示例:

MySQL:

“`

@Service

public class UserService {

@Autowired

UserDao userDao;

public List findAll() {

return userDao.findAll();

}

public void add(User user) {

userDao.add(user);

}

public void delete(long id) {

userDao.delete(id);

}

public void update(User user) {

userDao.update(user);

}

}

“`

Oracle:

“`

@Service

public class UserService {

@Autowired

UserDao userDao;

public List findAll() {

return userDao.findAll();

}

public void add(User user) {

userDao.add(user);

}

public void delete(long id) {

userDao.delete(id);

}

public void update(User user) {

userDao.update(user);

}

}

“`

SQL Server:

“`

@Service

public class UserService {

@Autowired

UserDao userDao;

public List findAll() {

return userDao.findAll();

}

public void add(User user) {

userDao.add(user);

}

public void delete(long id) {

userDao.delete(id);

}

public void update(User user) {

userDao.update(user);

}

}

“`

MongoDB:

“`

@Service

public class UserService {

@Autowired

UserDao userDao;

public List findAll() {

return userDao.findAll();

}

public void add(User user) {

userDao.add(user);

}

public void delete(User user) {

userDao.delete(user);

}

public void update(User user) {

userDao.update(user);

}

}

“`

5. 編寫Controller層代碼

創(chuàng)建對應的Controller類,在其中調用Service層提供的方法,實現(xiàn)接口的處理。以下是MySQL、Oracle、SQL Server和MongoDB的Controller類示例:

MySQL:

“`

@RestController

public class UserController {

@Autowired

UserService userService;

@GetMapping(“/user”)

public List findAll() {

return userService.findAll();

}

@PostMapping(“/user”)

public void add(@RequestBody User user) {

userService.add(user);

}

@DeleteMapping(“/user/{id}”)

public void delete(@PathVariable(“id”) long id) {

userService.delete(id);

}

@PutMapping(“/user”)

public void update(@RequestBody User user) {

userService.update(user);

}

}

“`

Oracle:

“`

@RestController

public class UserController {

@Autowired

UserService userService;

@GetMapping(“/user”)

public List findAll() {

return userService.findAll();

}

@PostMapping(“/user”)

public void add(@RequestBody User user) {

userService.add(user);

}

@DeleteMapping(“/user/{id}”)

public void delete(@PathVariable(“id”) long id) {

userService.delete(id);

}

@PutMapping(“/user”)

public void update(@RequestBody User user) {

userService.update(user);

}

}

“`

SQL Server:

“`

@RestController

public class UserController {

@Autowired

UserService userService;

@GetMapping(“/user”)

public List findAll() {

return userService.findAll();

}

@PostMapping(“/user”)

public void add(@RequestBody User user) {

userService.add(user);

}

@DeleteMapping(“/user/{id}”)

public void delete(@PathVariable(“id”) long id) {

userService.delete(id);

}

@PutMapping(“/user”)

public void update(@RequestBody User user) {

userService.update(user);

}

}

“`

MongoDB:

“`

@RestController

public class UserController {

@Autowired

UserService userService;

@GetMapping(“/user”)

public List findAll() {

return userService.findAll();

}

@PostMapping(“/user”)

public void add(@RequestBody User user) {

userService.add(user);

}

@DeleteMapping(“/user”)

public void delete(@RequestBody User user) {

userService.delete(user);

}

@PutMapping(“/user”)

public void update(@RequestBody User user) {

userService.update(user);

}

}

“`

6. 測試接口

啟動項目,在瀏覽器或Postman中訪問接口,測試數(shù)據(jù)的增刪改查功能。以下是MySQL、Oracle、SQL Server和MongoDB的測試接口:

MySQL:

“`

GET http://localhost:8080/user

POST http://localhost:8080/user Body: {“name”:”tom”,”age”:18}

PUT http://localhost:8080/user Body: {“id”:1,”name”:”tom”,”age”:19}

DELETE http://localhost:8080/user/1

“`

Oracle:

“`

GET http://localhost:8080/user

POST http://localhost:8080/user Body: {“name”:”tom”,”age”:18}

PUT http://localhost:8080/user Body: {“id”:1,”name”:”tom”,”age”:19}

DELETE http://localhost:8080/user/1

“`

SQL Server:

“`

GET http://localhost:8080/user

POST http://localhost:8080/user Body: {“name”:”tom”,”age”:18}

PUT http://localhost:8080/user Body: {“id”:1,”name”:”tom”,”age”:19}

DELETE http://localhost:8080/user/1

“`

MongoDB:

“`

GET http://localhost:8080/user

POST http://localhost:8080/user Body: {“name”:”tom”,”age”:18}

PUT http://localhost:8080/user Body: {“id”:”5e6cef61f6fb8a43b0e6b9a9″,”name”:”tom”,”age”:19}

DELETE http://localhost:8080/user Body: {“id”:”5e6cef61f6fb8a43b0e6b9a9″,”name”:”tom”,”age”:18}

“`

成都網(wǎng)站建設公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導10多年以來專注數(shù)字化網(wǎng)站建設,提供企業(yè)網(wǎng)站建設,高端網(wǎng)站設計,響應式網(wǎng)站制作,設計師量身打造品牌風格,熱線:028-86922220

springmvc+mybatis怎么使用線程進行數(shù)據(jù)庫操作

首先,你的確定數(shù)據(jù)的主鍵是否可以返配使用序列自增。

  如果可以那么你可以在插入數(shù)察純據(jù)的時候獲取序列里的值,這樣數(shù)據(jù)就不會重復了。

其次,可以創(chuàng)建一個公共方漏沒指法,進行數(shù)據(jù)的插入操作,并且方法類型聲明為 static synchronized

  類型,這樣基本上就不會出現(xiàn)數(shù)據(jù)重復的現(xiàn)象了

最后,要看你是怎么獲得待插入源數(shù)據(jù)了,這個獲得數(shù)據(jù)源的方法也做成static synchronized的公

  共方法。

關于springmvc處理數(shù)據(jù)庫的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。

創(chuàng)新互聯(lián)是成都專業(yè)網(wǎng)站建設、網(wǎng)站制作、網(wǎng)頁設計、SEO優(yōu)化、手機網(wǎng)站、小程序開發(fā)、APP開發(fā)公司等,多年經(jīng)驗沉淀,立志成為成都網(wǎng)站建設第一品牌!


本文名稱:使用SpringMVC輕松處理多種數(shù)據(jù)庫(springmvc處理數(shù)據(jù)庫)
網(wǎng)頁地址:http://www.dlmjj.cn/article/cogggpe.html