springboot-day02-整合mybatis与简单使用
前言:该文章是紧接上一篇文章springboot-day01-引入如何读取配置文件以及helloWorld
1.springboot整合mybatis
1.添加jar包依赖
1 <?xml version="1.0" encoding="UTF-8"?> 2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> 4 <modelVersion>4.0.0</modelVersion> 5 6 <groupId>com.example</groupId> 7 <artifactId>demo</artifactId> 8 <version>0.0.1-SNAPSHOT</version> 9 <packaging>jar</packaging> 10 11 <name>demo</name> 12 <description>Demo project for Spring Boot</description> 13 <!--设置spring boot的parent--> 14 <parent> 15 <groupId>org.springframework.boot</groupId> 16 <artifactId>spring-boot-starter-parent</artifactId> 17 <version>1.5.9.RELEASE</version> 18 <relativePath/> <!-- lookup parent from repository --> 19 </parent> 20 21 <properties> 22 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 23 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> 24 <java.version>1.7</java.version> 25 </properties> 26 27 <dependencies> 28 <!--添加依赖 可以访问html页面--> 29 <dependency> 30 <groupId>org.springframework.boot</groupId> 31 <artifactId>spring-boot-starter-thymeleaf</artifactId> 32 </dependency> 33 <!-- spring boot的web支持--> 34 <dependency> 35 <groupId>org.springframework.boot</groupId> 36 <artifactId>spring-boot-starter-web</artifactId> 37 </dependency> 38 <!--mybatis-spring桥梁--> 39 <dependency> 40 <groupId>org.mybatis.spring.boot</groupId> 41 <artifactId>mybatis-spring-boot-starter</artifactId> 42 <version>1.1.1</version> 43 </dependency> 44 <!--mysql驱动包--> 45 <dependency> 46 <groupId>mysql</groupId> 47 <artifactId>mysql-connector-java</artifactId> 48 <scope>runtime</scope> 49 </dependency> 50 <!--aop--> 51 <dependency> 52 <groupId>org.springframework.boot</groupId> 53 <artifactId>spring-boot-starter-aop</artifactId> 54 </dependency> 55 <!--jdbc--> 56 <dependency> 57 <groupId>org.springframework.boot</groupId> 58 <artifactId>spring-boot-starter-jdbc</artifactId> 59 </dependency> 60 <dependency> 61 <groupId>org.springframework.boot</groupId> 62 <artifactId>spring-boot-starter-test</artifactId> 63 <scope>test</scope> 64 </dependency> 65 </dependencies> 66 67 <build> 68 <plugins> 69 <plugin> 70 <groupId>org.springframework.boot</groupId> 71 <artifactId>spring-boot-maven-plugin</artifactId> 72 </plugin> 73 </plugins> 74 </build> 75 76 77 </project>
2.在application.properties添加数据库连接信息
代码
1 ##########################数据库连接信息################################### 2 spring.datasource.url=jdbc:mysql://localhost:3306/station 3 spring.datasource.username=root 4 spring.datasource.password=admin 5 spring.datasource.driverClassName=com.mysql.jdbc.Driver 6 spring.jpa.database = mysql
3.创建标准web目录结构
4.创建数据库表User
.
5.创建User实体 USer.java

1 package com.example.demo.model; 2 3 /** 4 * Created by Administrator on 2017/12/20. 5 */ 6 public class User { 7 private Integer id; 8 private String userName; 9 private String password; 10 private String qq; 11 private String wx; 12 13 public Integer getId() { 14 return id; 15 } 16 17 public void setId(Integer id) { 18 this.id = id; 19 } 20 21 public String getUserName() { 22 return userName; 23 } 24 25 public void setUserName(String userName) { 26 this.userName = userName; 27 } 28 29 public String getPassword() { 30 return password; 31 } 32 33 public void setPassword(String password) { 34 this.password = password; 35 } 36 37 public String getQq() { 38 return qq; 39 } 40 41 public void setQq(String qq) { 42 this.qq = qq; 43 } 44 45 public String getWx() { 46 return wx; 47 } 48 49 public void setWx(String wx) { 50 this.wx = wx; 51 } 52 }
6.创建dao接口

1 package com.example.demo.dao; 2 3 import com.example.demo.model.User; 4 import org.apache.ibatis.annotations.Mapper; 5 import org.springframework.stereotype.Repository; 6 7 /** 8 * Created by Administrator on 2017/12/20. 9 */ 10 //声明是一个Mapper,与springbootApplication中的@MapperScan二选一写上即可 11 @Mapper 12 @Repository 13 public interface UserMapper { 14 /** 15 * 根据名称获取一个用户 16 * @param name 17 * @return 18 */ 19 User getUserByName(String name); 20 }
7.创建service接口

1 package com.example.demo.service; 2 3 import com.example.demo.model.User; 4 import org.springframework.stereotype.Service; 5 6 7 /** 8 * Created by Administrator on 2017/12/20. 9 */ 10 @Service 11 public interface IUserService { 12 /** 13 * 根据名称获取一个用户 14 * @param name 15 * @return 16 */ 17 User getUserByName(String name); 18 }
8.编辑service实现类

1 package com.example.demo.service.impl; 2 3 import com.example.demo.dao.UserMapper; 4 import com.example.demo.model.User; 5 import com.example.demo.service.IUserService; 6 import org.springframework.beans.factory.annotation.Autowired; 7 import org.springframework.stereotype.Service; 8 9 /** 10 * Created by Administrator on 2017/12/20. 11 */ 12 @Service 13 public class UserService implements IUserService { 14 @Autowired 15 private UserMapper userMapper; 16 17 @Override 18 public User getUserByName(String name) { 19 return userMapper.getUserByName(name); 20 } 21 }
9.编辑UserControlle控制层

1 package com.example.demo.controller; 2 3 import com.example.demo.model.User; 4 import com.example.demo.service.IUserService; 5 import org.springframework.beans.factory.annotation.Autowired; 6 import org.springframework.stereotype.Controller; 7 import org.springframework.web.bind.annotation.RequestMapping; 8 import org.springframework.web.bind.annotation.ResponseBody; 9 10 /** 11 * Created by Administrator on 2017/12/20. 12 */ 13 @Controller 14 @RequestMapping("/") 15 public class UserController { 16 @Autowired 17 private IUserService userService; 18 19 /** 20 * 获取用户 21 * @return 22 */ 23 @RequestMapping("/getUser") 24 @ResponseBody 25 public User getUserByName(){ 26 User user= userService.getUserByName("姿势帝"); 27 System.out.println("id="+user.getId()+" userName="+user.getUserName()+" qq="+user.getQq()); 28 return user; 29 } 30 }
10.将sql写到xml配置文件中,添加映射
userMapper.xml代码

1 <?xml version="1.0" encoding="UTF-8" ?> 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" > 3 <mapper namespace="com.example.demo.dao.UserMapper" > 4 5 <select id="getUserByName" resultType="User"> 6 SELECT id,user_name userName,`password`,qq,wx FROM `user` WHERE user_name=#{userName} 7 </select> 8 9 </mapper>
11.非常重要--在application.properties添加mybatis相关配置
1 #Mybatis xml文件扫描 2 mybatis.mapper-locations=classpath*:mapper/*.xml 3 #起别名。可省略写mybatis的xml中的resultType的全路径 4 mybatis.type-aliases-package=com.example.demo.model
12.重启项目并访问
基于springboot的ssm整合以及简单使用已完成,很简单吧! 下章我们基于这个结构完成页面上的 CRUD+高级查询+分页
下一章见!
有问题或获取源码请留言,或加 QQ:851298348 加QQ时请注明博客springboot
分类:
java 高级
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人