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

温州网站建设公司公司哪家好天津建网站的公司

温州网站建设公司公司哪家好,天津建网站的公司,阿里云网站目录,潍坊网站建设wfyckjSpring Boot集成MyBatis访问MySQL 一、引言 在当今企业级应用开发中,Spring Boot、MyBatis与MySQL的组合凭借其高效性和灵活性,成为构建数据驱动型应用的首选方案。本文将带你从零开始搭建项目,掌握Spring Boot集成MyBatis的基础入门内容。…

Spring Boot集成MyBatis访问MySQL

一、引言

在当今企业级应用开发中,Spring Boot、MyBatis与MySQL的组合凭借其高效性和灵活性,成为构建数据驱动型应用的首选方案。本文将带你从零开始搭建项目,掌握Spring Boot集成MyBatis的基础入门内容。

二、项目搭建

1.1 初始化Spring Boot项目

访问Spring Initializr创建项目:

  • Project:Maven
  • Language:Java
  • Spring Boot:3.4.2
  • Dependencies
    • Spring Web
    • MyBatis Framework
    • MySQL Driver

Spring Initializr配置截图

1.2 项目结构预览

src
├── main
│   ├── java
│   │   └── com/example/hello/mybatis
│   │       ├── entity       # 实体类
│   │       ├── mapper       # Mapper接口
│   │       └── Application.java
│   └── resources
│       ├── mapper           # XML映射文件
│       └── application.yml  # 配置文件
└── test                     # 单元测试

三、依赖(POM)

MyBatis依赖(mybatis-spring-boot-starter-test)

        <dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter-test</artifactId><version>3.0.4</version><scope>test</scope></dependency>

MySQL驱动

        <dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency>

POM完整示例

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>3.4.2</version><relativePath/></parent><groupId>com.example</groupId><artifactId>hello-mybatis</artifactId><version>0.0.1-SNAPSHOT</version><name>hello-mybatis</name><description>Spring Boot 集成 MyBatis 访问 MySQL 数据库</description><properties><java.version>21</java.version></properties><dependencies><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>3.0.4</version></dependency><dependency><groupId>com.mysql</groupId><artifactId>mysql-connector-j</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><optional>true</optional></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter-test</artifactId><version>3.0.4</version><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><annotationProcessorPaths><path><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></path></annotationProcessorPaths></configuration></plugin><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin></plugins></build></project>

四、应用配置

spring:application:name: hello-mybatisdatasource:url: jdbc:mysql://localhost:3306/mybatis_testusername: mybatis_test_userpassword: 123456mybatis:mapper-locations:- classpath:mapper/*.xmlconfiguration:map-underscore-to-camel-case: true

1. 配置数据源

application.yml 文件中,添加数据源配置(MySQL数据库),包括:数据库url,用户名,密码。

spring:datasource:url: jdbc:mysql://localhost:3306/mybatis_testusername: mybatis_test_userpassword: 123456

注意:不配置数据源会导致应用启动失败。

2. 配置扫描路径

在Spring Boot中,默认的XML映射文件需要放在resources目录下,并且路径要和Mapper接口的包名一致。

自定义XML映射文件的存放目录,在 application.yml 中配置扫描路径:

mybatis:mapper-locations:- classpath:mapper/*.xml

3. 配置下划线转驼峰

map-underscore-to-camel-case: true 是 MyBatis 框架中的一个配置项,用于自动将数据库字段的下划线命名风格(如 user_name)映射到 Java 对象的驼峰命名风格属性(如 userName

mybatis:configuration:map-underscore-to-camel-case: true

通过 map-underscore-to-camel-case: true,MyBatis 自动处理数据库字段与 Java 属性之间的命名风格差异,显著减少手动映射的工作量,是提升 ORM 开发效率的实用配置。

五、配置Mapper接口和XML映射文件

1. Mapper接口(UserMapper接口)

package com.example.hello.mybatis.mapper;import com.example.hello.mybatis.entity.User;
import org.apache.ibatis.annotations.Mapper;import java.util.List;@Mapper
public interface UserMapper {List<User> listUser();
}

2. 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.hello.mybatis.mapper.UserMapper"><select id="listUser" resultType="com.example.hello.mybatis.entity.User">select * from user</select></mapper>

3. 实体类(User)

package com.example.hello.mybatis.entity;import lombok.Data;@Data
public class User {private String id;private String name;private Integer age;private String mobilePhone;
}

4. 单元测试

调用Mapper接口中方法查询数据库。

package com.example.hello.mybatis;import com.example.hello.mybatis.entity.User;
import com.example.hello.mybatis.mapper.UserMapper;
import lombok.extern.slf4j.Slf4j;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;import java.util.List;@Slf4j
@SpringBootTest
class HelloMybatisApplicationTests {@Autowiredprivate UserMapper userMapper;@Testpublic void testUserMapper() {List<User> users = userMapper.listUser();log.info("用户列表 :{}", users);}}

六、运行效果

执行单元测试,调用Mapper接口中方法查询数据库,运行成功,能够正常查询数据。

七、数据库:用户表

1. 列和DDL

DDL:

-- mybatis_test.`user` definitionCREATE TABLE `user` (`id` varchar(100) NOT NULL COMMENT '主键',`name` varchar(100) DEFAULT NULL COMMENT '姓名',`age` int DEFAULT NULL COMMENT '年龄',`mobile_phone` varchar(20) DEFAULT NULL COMMENT '手机号码',PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='用户表';

2. 用户数据

八、MyBatis官方文档

MyBatis官方文档

http://www.dtcms.com/a/591641.html

相关文章:

  • 网站备案要啥开发公司组织员工办按揭
  • 网站的总体方案与功能设计企业官网策划
  • 网站注册怎么做装饰网站建设优惠套餐
  • 电商网站首页可以免费生成网站的软件
  • 网站打不开 ...大丰企业做网站多少钱
  • 阿里云备案网站负责人网络营销有哪些理论和方法
  • 北京网站建设新鸿中国企业500强排行榜2021
  • wordpress与python怎么优化电脑系统
  • php网站后台访问统计分析建立什么样的网站赚钱
  • 百度企业云网站建设百度地图网页版首页
  • 手机网站设计方案网站seo排名优化工具在线
  • 哈尔滨做平台网站平台公司吗浙江省城乡建设厅官网
  • 南昌比较好的网站设计wordpress缓存头像
  • 如何免费建立个人网站微商客源人脉app下载
  • 宁波龙山建设有限公司网站iis php服务器搭建网站
  • 怎样搜网站本网站正在建设中
  • 如何看网站点击量微信免费建站
  • 网站建设公司山而北京哪家网站开发公司好
  • php做网站有哪些好处江门seo方法
  • 社交网站的优点和缺点用xml可不可以做网站
  • 查看服务器上的网站网站建设推广保举火13星
  • 海外如何 淘宝网站建设中国电子商务公司排名
  • 好网站的建设标准百度快照在哪里
  • wordpress 开启手机西安百度seo排名软件
  • 南宁营销型网站设计网上买吃的网站做代理
  • 淘客网站让别人做宜阳建站
  • 网站制作毕业设计论文网站运营有哪些岗位
  • 网站模板侵权问题wordpress如何禁止注册
  • 自己做的图片哪个网站可以出售网站建设 唐山
  • 包头市建设厅官方网站零食网站建设策划书模板