日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

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

新聞中心

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

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

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

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

在項目中引入SpringMVC數(shù)據(jù)訪問支持,需要在pom.xml文件中添加對應(yīng)依賴。以下是集成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驅(qū)動。ojdbc6是Oracle的Java驅(qū)動。 mssql-jdbc是SQL Server的Java驅(qū)動。spring-data-mongodb是Spring封裝的操作MongoDB的Java包。mongodb-driver-sync是MongoDB的Java驅(qū)動。

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

在配置文件中添加數(shù)據(jù)源相關(guān)信息。以下是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)建對應(yī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接口的類,能夠?qū)⒁粋€ResultSet對象轉(zhuǎn)換成一個Java對象。MongoTemplate是Spring封裝的操作MongoDB的類。

4. 編寫Service層代碼

創(chuàng)建對應(yīng)的Service類,在其中調(diào)用Dao層提供的方法,實現(xiàn)業(yè)務(wù)邏輯的處理。以下是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)建對應(yīng)的Controller類,在其中調(diào)用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)站建設(shè)公司-創(chuàng)新互聯(lián),建站經(jīng)驗豐富以策略為先導(dǎo)10多年以來專注數(shù)字化網(wǎng)站建設(shè),提供企業(yè)網(wǎng)站建設(shè),高端網(wǎng)站設(shè)計,響應(yīng)式網(wǎng)站制作,設(shè)計師量身打造品牌風(fēng)格,熱線:028-86922220

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

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

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

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

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

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

  共方法。

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

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


名稱欄目:使用SpringMVC輕松處理多種數(shù)據(jù)庫(springmvc處理數(shù)據(jù)庫)
文章來源:http://m.5511xx.com/article/cogggpe.html