在Maven或者Gradle构建配置中添加了必要的依赖

简介: 在Maven或者Gradle构建配置中添加了必要的依赖

假设你已经设置好了Oracle数据库,并在Maven或者Gradle构建配置中添加了必要的依赖。

 

### 1. Maven依赖

 

在你的 `pom.xml` 文件中添加Spring Boot、MyBatis和Oracle JDBC驱动的依赖:

 

```xml
    org.springframework.boot
    spring-boot-starter
 
    org.springframework.boot
    spring-boot-starter-jdbc
 
    org.mybatis.spring.boot
    mybatis-spring-boot-starter
    2.2.0
 
    com.oracle.database.jdbc
    ojdbc8
    19.8.0.0
```

### 2. 配置数据库属性

 

在 `application.properties` 文件中添加你的Oracle数据库连接属性:

```properties
spring.datasource.url=jdbc:oracle:thin:@//localhost:1521/YOUR_SID
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver
```

将 `YOUR_SID`、`your_username` 和 `your_password` 替换为你的Oracle数据库的SID、用户名和密码。

 

### 3. 创建MyBatis Mapper接口

 

创建一个MyBatis Mapper接口,定义你的SQL查询。例如:

```java
package com.example.mybatisdemo.mapper;
 
import com.example.mybatisdemo.model.User;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;
 
import java.util.List;
 
@Mapper
public interface UserMapper {
 
    @Select("SELECT * FROM users")
    List getAllUsers();
 
    @Select("SELECT * FROM users WHERE id = #{id}")
    User getUserById(Long id);
 
    // 添加其他的CRUD操作
}
```

### 4. 创建模型类

 

创建一个模型类来表示你的数据库实体(表)。例如:

```java
package com.example.mybatisdemo.model;
 
public class User {
 
    private Long id;
    private String username;
    private String email;
 
    // Getter和Setter方法
}
```

### 5. 配置MyBatis在Spring Boot中

 

创建一个配置类来配置Spring Boot中的MyBatis。通常,你可以在这个类上使用 `@MapperScan` 注解来扫描MyBatis Mapper接口。

 

```java
package com.example.mybatisdemo.config;
 
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.context.annotation.Configuration;
 
@Configuration
@MapperScan("com.example.mybatisdemo.mapper")
public class MyBatisConfig {
    // 如果需要,可以在这里添加特定的MyBatis配置
}
```

### 6. Service和Controller

 

创建一个Service类来使用你的MyBatis Mapper接口,并创建一个REST Controller来处理HTTP请求:

```java
package com.example.mybatisdemo.service;
 
import com.example.mybatisdemo.mapper.UserMapper;
import com.example.mybatisdemo.model.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.List;
 
@Service
public class UserService {
 
    @Autowired
    private UserMapper userMapper;
 
    public List getAllUsers() {
        return userMapper.getAllUsers();
    }
 
    public User getUserById(Long id) {
        return userMapper.getUserById(id);
    }
}
```
 
```java
package com.example.mybatisdemo.controller;
 
import com.example.mybatisdemo.model.User;
import com.example.mybatisdemo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
 
import java.util.List;
 
@RestController
@RequestMapping("/users")
public class UserController {
 
    @Autowired
    private UserService userService;
 
    @GetMapping("/")
    public List getAllUsers() {
        return userService.getAllUsers();
    }
 
    @GetMapping("/{id}")
    public User getUserById(@PathVariable Long id) {
        return userService.getUserById(id);
    }
}
```

### 7. 运行你的应用程序

 

运行你的Spring Boot应用程序。确保你的Oracle数据库正在运行并且可访问。

 

### 总结

 

这个例子涵盖了使用Spring Boot与MyBatis集成的基本步骤,以及如何与Oracle数据库配合使用。它包括设置依赖项、配置数据库属性、创建MyBatis Mapper接口、定义模型类、配置MyBatis和创建Service和Controller组件。根据你的具体应用需求和数据库架构进行调整。

 

当你完成了上述步骤之后,你可能还希望做一些额外的补充或优化:

 

### 1. MyBatis XML映射文件

 

除了注解方式,你也可以使用XML文件来定义SQL映射。在需要更复杂SQL语句或映射配置时,XML映射文件通常更灵活。例如,创建一个XML文件 `UserMapper.xml`:

 

```xml
    
        
        
        
    
 
            SELECT * FROM users    
 
            SELECT * FROM users WHERE id = #{id}    
 
    
```

然后在 `UserMapper` 接口中使用 `@Mapper` 注解指定XML文件:

```java
@Mapper
public interface UserMapper {
 
    List getAllUsers();
 
    User getUserById(Long id);
 
    // 添加其他的CRUD操作
}
```

### 2. 分页和排序

 

在实际应用中,通常需要对查询结果进行分页和排序。可以通过MyBatis的插件或者使用`PageHelper`来实现分页:

 

```xml
    com.github.pagehelper
    pagehelper-spring-boot-starter
    1.3.0
```
 
然后在你的Service层使用`PageHelper`进行分页:
 
```java
import com.github.pagehelper.PageHelper;
 
@Service
public class UserService {
 
    @Autowired
    private UserMapper userMapper;
 
    public List getAllUsers(int pageNum, int pageSize) {
        PageHelper.startPage(pageNum, pageSize);
        return userMapper.getAllUsers();
    }
 
    // 其他方法类似,根据需要进行分页和排序
}
```

### 3. 事务管理

 

如果你的应用需要事务管理,可以在Service方法上添加 `@Transactional` 注解来确保操作的原子性和一致性:

 

```java
import org.springframework.transaction.annotation.Transactional;
 
@Service
public class UserService {
 
    @Autowired
    private UserMapper userMapper;
 
    @Transactional
    public void updateUser(User user) {
        userMapper.updateUser(user);
    }
 
    // 其他需要事务管理的方法
}
```

### 4. 错误处理与异常

 

在处理数据库操作时,要考虑如何处理可能的异常情况。可以通过Spring Boot的异常处理机制或者自定义异常处理器来增强应用的稳定性和可靠性。

目录
相关文章
|
3月前
|
Java Maven
解决idea每次新建maven项目都需要重新配置maven的问题
解决idea每次新建maven项目都需要重新配置maven的问题
150 1
|
1月前
|
Java Shell 应用服务中间件
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
这篇文章介绍了如何在Mac系统下配置Java JDK、Maven和Tomcat的环境变量,包括配置文件的选择、解决环境变量在zsh shell中无效的问题、查看和设置系统环境变量的方法,以及JDK和Maven的下载、配置和测试步骤。
1325 1
Mac系统下配置环境变量:Javajdk、maven、tomcat 环境变量配置及对应配置文件
|
23天前
|
Java Spring
Gradle 如何确保依赖的版本兼容性
Gradle 通过依赖管理机制确保版本兼容性,使用声明式配置定义项目依赖,自动解析和下载所需库。它支持版本范围和动态版本,通过冲突解决策略选择最佳版本,保证构建的一致性和可靠性。
|
1月前
|
Java jenkins 持续交付
Centos7下docker的jenkins下载并配置jdk与maven
通过上述步骤,您将成功在CentOS 7上的Docker容器中部署了Jenkins,并配置好了JDK与Maven,为持续集成和自动化构建打下了坚实基础。
97 1
|
1月前
|
Java Shell Maven
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
Flink-11 Flink Java 3分钟上手 打包Flink 提交任务至服务器执行 JobSubmit Maven打包Ja配置 maven-shade-plugin
101 4
|
1月前
|
Java Maven
震惊!idea专业版如何配置maven国内源手把手教学
文章提供了如何在IDEA专业版中配置Maven使用国内源(如阿里云)的详细步骤,以加快依赖下载速度,并解释了配置国内源的原因。
438 0
震惊!idea专业版如何配置maven国内源手把手教学
|
2月前
|
XML Java Maven
idea配置maven步骤及常见问题
本文介绍了在IDEA中配置Maven的详细步骤,包括Maven的下载、系统环境变量的配置、Maven本地仓库的设置、镜像加速的配置,以及在IDEA中指定Maven路径和配置文件。同时,还提供了解决每次新建项目需要重新手动配置Maven问题的方法。
idea配置maven步骤及常见问题
|
3月前
|
安全 Java Maven
优化Maven镜像配置:使用阿里云加速依赖下载
更新Maven镜像配置至关重要,尤其使用阿里云仓库时。在`settings.xml`中加入特定镜像配置可显著提升依赖下载速度。示例配置指定了阿里云镜像ID、替代表态仓库、安全的URL、默认布局及启用版本管理。需定位至用户目录下的`.m2/`文件夹编辑`settings.xml`,添加镜像信息后保存测试。若下载仍慢,考虑网络状况或备选镜像。多镜像设置时需注意避免冲突。
536 3
|
7天前
|
Java Maven
maven项目的pom.xml文件常用标签使用介绍
第四届人文,智慧教育与服务管理国际学术会议(HWESM 2025) 2025 4th International Conference on Humanities, Wisdom Education and Service Management
53 8
|
5天前
|
Java 应用服务中间件 Maven
Maven的三种项目打包方式——pom,jar,war的区别
Maven 提供了多种打包方式,分别适用于不同类型的项目。pom 用于父项目或聚合项目,便于项目的结构和依赖管理;jar 用于Java类库或可执行的Java应用程序;war 则专用于Java Web应用程序的部署。理解这些打包方式的用途和特点,可以帮助开发者更好地配置和管理Maven项目,确保构建和部署过程的顺利进行。无论是单模块项目还是多模块项目,选择合适的打包方式对于项目的成功至关重要。
16 3