栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringBoot实验笔记

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringBoot实验笔记

SpringBoot实验笔记 实验一、SpringBoot整合mybatis (一)、SpringBoot的数据访问(mysql和mybatis依赖) ①sprngboot项目的pom.xml文件中引入的依赖


    4.0.0
    
        org.springframework.boot
        spring-boot-starter-parent
        2.5.5
         
    

    com.example
    integrate-mybatis
    0.0.1-SNAPSHOT

    integrate-mybatis
    Demo project for Spring Boot

    
        11
    

    
        
        
            org.springframework.boot
            spring-boot-starter-web
        
        
        
            org.mybatis.spring.boot
            mybatis-spring-boot-starter
            2.2.0
        
        
        
            mysql
            mysql-connector-java
            runtime
        
        
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
        
        
            junit
            junit
            4.13.2
            test
        
    

    
        
            
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    


②数据库的创建(mybatisdb)

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-s1V9tSNT-1633015286097)(C:UserslenovoAppDataRoamingTyporatypora-user-imagesimage-20210930222336627.png)]

③application.properties中配置数据库连接配置
# mysql数据库连接配置
spring.datasource.url=jdbc:mysql://localhost:3306/mybatisdb?serverTimezone=UTC
spring.datasource.username=root
spring.datasource.password=admin
④创建数据库表对应的实体类

Role类(用于配置方式)

public class Role {
    private Integer ID;
    private String ROLE_NAME;
    private String ROLE_DESC;
    //省略setter和getter方法
}

User类(用于注解方式)

public class User {
    private Integer id;
    private String username;
    private String birthday;
    private String sex;
    private String address;
    //省略setter和getter方法
}
(二)、注解方式整合mybatis ①创建Mapper接口文件UserMapper
package com.example.integratemybatis.mapper;

import com.example.integratemybatis.domain.User;
import org.apache.ibatis.annotations.*;

@Mapper //表示该类是一个mybatis的接口文件,并且保证springboot能够将其扫面到spring容器中
public interface UserMapper {
    //查询数据库操作
    @Select("select * from user where id=#{id}")
    public User findById(Integer id);

    //插入操作
    @Insert("insert into User(username,birthday,sex,address) values (#{username},#{birthday},#{sex},#{address})")
    public int insertUser(User user);

    //修改操作
    @Update("update user set username=#{username} where id=#{id}")
    public int updateUser(User user);

    //删除操作
    @Delete("delete from user where id=#{id}")
    public int deleteUser(Integer id);
}

注意:@Mapper,当编写的Mapper接口过多时,需要重复为每一个接口文件添加@Mapper注解,为了避免麻烦,可以直接在SpringBoot项目的启动类上添加@MapperScan(“接口所在包名的全限定名称”)。

②测试类(已通过)
package com.example.integratemybatis;

import com.example.integratemybatis.domain.Role;
import com.example.integratemybatis.domain.User;
import com.example.integratemybatis.mapper.RoleMapper;
import com.example.integratemybatis.mapper.UserMapper;
import org.junit.jupiter.api.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner;

import java.util.List;


@RunWith(SpringRunner.class)
@SpringBootTest //标记单元测试类,并加载项目的额上下文环境ApplicationContext
class IntegrateMybatisApplicationTests {
    @Autowired //自动注入将UserMapper接口自动装配为Spring容器中的bean,然后使用@Test注解标注测试类
    private UserMapper userMapper;

    @Test
    void testDelete() {
        //删除数据
        int num2=userMapper.deleteUser(43);
        if(num2>0){
            System.out.println("删除数据成功");
        }else{
            System.out.println("删除数据失败");
        }
    }
    @Test
    void testFind(){
        //查询数据
        User user=userMapper.findById(42);
        
        System.out.println("姓名:"+user.getUsername());
        System.out.println("出生日期:"+user.getBirthday());
        System.out.println("性别:"+user.getSex());
        System.out.println("地址:"+user.getAddress());
    }

    @Test
    void testInsert(){
        //插入数据
        User user1=new User();
        user1.setUsername("乔峰");
        user1.setBirthday("1008-02-27 17:47:08");
        user1.setSex("男");
        user1.setAddress("蒙古");
        int num=userMapper.insertUser(user1);
        if(num>0){
            System.out.println("插入数据成功!");
        }else{
            System.out.println("插入数据失败!");
        }
    }

    @Test
    void testUpdate(){
        //修改数据
        User user=userMapper.findById(46);
        user.setUsername("张无忌");
        int num1=userMapper.updateUser(user);
        if(num1>0){
            System.out.println("修改数据成功");
        }else{
            System.out.println("修改数据失败");
        }
    }
}
(三)、配置文件方式整合mybatis ①创建Mapper接口文件RoleMapper
package com.example.integratemybatis.mapper;

import com.example.integratemybatis.domain.Role;
import org.apache.ibatis.annotations.Mapper;

import java.util.List;

@Mapper
public interface RoleMapper {
    public List selectRole(Integer ID);
    public int updateRole(Role role);
}
②创建Mybatis关于Mapper操纵的xml文件user-mapper.xml