当前位置: 首页 > article >正文

【intellij idea 创建springBoot 搭配mybatis oracle】

在 IntelliJ IDEA 中创建一个 Spring Boot 项目并搭配 MyBatis 和 Oracle 数据库,可以按照以下步骤进行:

1. 创建 Spring Boot 项目

项目配置方式可以参考第7大点

  • 打开 IntelliJ IDEA,选择 File -> New -> Project。
  • 在弹出的窗口中,选择 Spring Initializr,确保 Service URL 是默认的 https://start.spring.io,然后点击 Next。
    注意: 我采用的是自定义的Service URL:
https://start.aliyun.com/

在这里插入图片描述

  • 填写项目的基本信息:
  • Group: 你的组织或个人域名反写,例如 com.example。
  • Artifact: 项目名称,例如 demo。
  • Name: 项目名称,例如 demo。
  • Description: 项目描述。
  • Package name: 包名,例如 com.example.demo。
  • Packaging: 选择 Jar。
  • Java: 选择你使用的 Java 版本,例如 8 , 11 或 17 (我选择的是8)
  • 点击 Next,选择项目依赖:
  • Spring Web: 用于构建 Web 应用。
  • MyBatis Framework: 用于 MyBatis 集成。
  • Oracle Driver: 用于 Oracle 数据库连接。
  • 点击 Finish,IntelliJ IDEA 会自动下载依赖并创建项目。

2. 配置 Oracle 数据库连接

  1. 添加 Oracle JDBC 驱动:
  • 如果你没有在 pom.xml 中添加 Oracle JDBC 驱动,可以手动添加:
<dependency>
    <groupId>com.oracle.database.jdbc</groupId>
    <artifactId>ojdbc8</artifactId>
    <version>19.8.0.0</version>
</dependency>
  • 然后在 IntelliJ IDEA 中右键点击 pom.xml,选择 Maven -> Reload Project。
    配置数据库连接:
  1. 打开 application.properties 或 application.yml 文件,添加以下配置:
spring.datasource.url=jdbc:oracle:thin:@localhost:1521:orcl
spring.datasource.username=your_username
spring.datasource.password=your_password
spring.datasource.driver-class-name=oracle.jdbc.OracleDriver

3. 配置 MyBatis

  1. 创建 MyBatis 配置文件:

在 src/main/resources 目录下创建 mybatis-config.xml 文件,内容如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE configuration
  PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-config.dtd">
<configuration>
    <typeAliases>
        <package name="com.example.demo.entity"/>
    </typeAliases>
    <mappers>
        <package name="com.example.demo.mapper"/>
    </mappers>
</configuration>
  1. 配置 MyBatis 扫描包:

在 application.properties 或 application.yml 文件中添加以下配置:

mybatis.config-location=classpath:mybatis-config.xml
mybatis.type-aliases-package=com.example.demo.entity
mybatis.mapper-locations=classpath:mapper/*.xml

4. 创建实体类和 Mapper 接口

创建实体类:

在 src/main/java/com/example/demo/entity 目录下创建一个实体类,例如 User.java:

package com.example.demo.entity;

public class User {
    private Long id;
    private String name;
    private String hobby;

    // Getters and Setters
}

创建 Mapper 接口:

在 src/main/java/com/example/demo/mapper 目录下创建一个 Mapper 接口,例如 UserMapper.java:

package com.example.demo.mapper;

import com.example.demo.entity.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<User> findAll();
}

创建 Mapper XML 文件:

在 src/main/resources/mapper 目录下创建一个 Mapper XML 文件,例如 UserMapper.xml:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
  PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.example.demo.mapper.UserMapper">
    <select id="findAll" resultType="com.example.demo.entity.User">
        SELECT * FROM users
    </select>
</mapper>

5. 创建 Service 和 Controller

创建 Service:

在 src/main/java/com/example/demo/service 目录下创建一个 Service 类,例如 UserService.java:

package com.example.demo.service;

import com.example.demo.entity.User;
import com.example.demo.mapper.UserMapper;
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<User> findAll() {
        return userMapper.findAll();
    }
}

创建 Controller:

在 src/main/java/com/example/demo/controller 目录下创建一个 Controller 类,例如 UserController.java:

package com.example.demo.controller;

import com.example.demo.entity.User;
import com.example.demo.service.UserService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/users")
public class UserController {
    @Autowired
    private UserService userService;

    @GetMapping
    public List<User> findAll() {
        return userService.findAll();
    }
}

6. 运行项目

运行 Spring Boot 应用:
在 IntelliJ IDEA 中找到 DemoApplication.java 文件,右键点击并选择 Run ‘DemoApplication’。
测试 API:
打开浏览器或使用 Postman 访问 http://localhost:8080/users,你应该能看到从 Oracle 数据库中查询到的用户数据。
这样,你就成功在 IntelliJ IDEA 中创建了一个 Spring Boot 项目,并集成了 MyBatis 和 Oracle 数据库。

7. 项目配置方式

参考了这个优秀文章IDEA创建SpringBoot项目教程

8. 浏览器调用接口时:报错

java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK
经排查发现缺少oracle字符集的依赖包导致的

  1. 解决方案
    如果oracle驱动包是database.jdbc,使用以下maven配置
		<!-- Oracle 驱动包 -->
		<dependency>
			<groupId>com.oracle.database.jdbc</groupId>
			<artifactId>ojdbc8</artifactId>
			<version>21.5.0.0</version>
			<scope>runtime</scope>
		</dependency>
		<!-- Additional library required to support Internationalization -->
		<dependency>
			<groupId>com.oracle.database.nls</groupId>
			<artifactId>orai18n</artifactId>
			<version>21.5.0.0</version>
			<scope>provided</scope>
		</dependency>

如果oracle驱动包是oracle.jdbc,使用以下maven配置

<!-- Oracle 驱动包 -->
		<dependency>
			<groupId>com.oracle.jdbc</groupId>
			<artifactId>ojdbc8</artifactId>
			<version>19.3.0.0</version>
		</dependency>
		<!-- Additional library required to support Internationalization -->
		<dependency>
			<groupId>cn.easyproject</groupId>
			<artifactId>orai18n</artifactId>
			<version>12.1.0.2.0</version>
		</dependency>

在这里插入图片描述


http://www.kler.cn/a/456226.html

相关文章:

  • C# 简单使用NModbus
  • 5.系统学习-PyTorch与多层感知机
  • JavaFX FXML模式下的布局
  • 尚硅谷Vue3入门到实战 —— 01 创建 VUe3工程
  • unity中Timeline动画的播放和播放中如何判断播放结束
  • springboot整合log4j2日志框架1
  • 25秋招面试总结
  • Kotlin快速入门
  • 惠州市政数局局长杨伟斌:惠州市公共数据授权运营模式探索
  • 雷池 WAF 搭配阿里云 CDN 使用教程
  • javaEE-多线程案例-单例模式
  • 深度学习:从原理到搭建基础模型
  • RabbitMQ HAProxy 负载均衡
  • 应对TensorFlow导入Keras时发生的错误问题
  • SPI实验 LED数码管
  • 用三种安全思维重新审视零信任网络
  • 云效流水线自动化部署web静态网站
  • opencl 封装简单api
  • CSDN编辑器
  • 长沙景区数据分析项目实现