springBoot2集成mybatis (手敲学习版)java入门友好
springBoot2集成mybatis
1.第一步(创建springboot2项目)
国内的话就用阿里的镜像吧
这样就创建好了一个springboot2的基础项目
2.集成spring所需要的依赖
就是这两个
3.第三步在配置文件中去配置链接数据库的一些配置数据
spring.thymeleaf.suffix=.html
spring.datasource.url=jdbc:mysql://localhost:3306/xuejava?serverTimezone=GMT%2B8&characterEncoding=utf-8&useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
mybatis.mapper-locations=classpath:mapper/*.xml
4.第四步打开数据库,使用idea连接数据库
5.我们现在在mysql中新建一个数据库名字交xuejava,表结构如下图所示:
接下来按照如图所示建立目录
contriller.java
package com.example.controller;import com.example.entity.Name;
import com.example.service.NameService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;@RestController
public class NameController {private final NameService nameService;public NameController(NameService nameService) {this.nameService = nameService;}@RequestMapping("/second")public void second(){Name name = new Name("哈6666666");//在controller层调用servic层级代码//然后在servic层调用Mapper层代码//在mapper层写数据库操作的方法crud,使用配置文件的方式去配置nameService.create(name);}}
实体类 Name.java
package com.example.entity;import javax.persistence.*;//创建实体类 @Entity 注解指定表名 @column 注解指定字段
//建立实体类属性和数据库表中列的对应关系的注解配置
//为了让实体类和数据库表进行映射,我们需要在实体类的属性上添加注解。注解用于指定实体类属性与数据库表字段的对应关系
@Entity
@Table(name = "name")
public class Name {@Id@GeneratedValue(strategy = GenerationType.IDENTITY)private int id;@Column(name = "name")private String name;public Name(String name) {this.name = name;}public Name() {}public int getId() {return id;}public void setId(int id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}
}
service层 NameService.java
package com.example.service;import com.example.entity.Name;
import com.example.mapper.NameMapper;
import org.springframework.stereotype.Service;
import java.util.List;@Service
public class NameService {private final NameMapper ameMapper;public NameService(NameMapper nameMapper) {this.ameMapper = nameMapper;}public Name create(Name name) {ameMapper.insertName(name);return name;}}
配置文件 nameMapper.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- 创建一个Mapper XML文件,用于定义具体的SQL语句。在XML文件中,-->
<!-- 我们可以使用<select>、<insert>、<update>、<delete>等标签定义SQL语句-->
<mapper namespace="com.example.mapper.NameMapper">
<!-- 插入--><insert id="insertName" >insert into name(id,name)values(null,#{name})</insert></mapper>
最后在入口文件中去配置mybatis
package com.example;import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;@SpringBootApplication
//配置mybast,告诉扫描入口
@MapperScan("com.example.mapper")
public class DemoApplication {public static void main(String[] args) {SpringApplication.run(DemoApplication.class, args);}}