找回密码
 立即注册
查看: 145|回复: 0

springboot项目操作数据库之XML配置文件实现

[复制链接]

73

主题

3

精华

77

金币

技术维护QQ:515138

积分
165
发表于 2025-11-18 17:04:44 | 显示全部楼层 |阅读模式
springboot项目操作数据库之XML配置文件实现

配置文件:
  1. #数据库访问的url地址
  2. spring.datasource.url=jdbc:mysql://localhost:3306/web
  3. #数据库驱动类类名
  4. spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
  5. #访问数据库-用户名
  6. spring.datasource.username=root
  7. #访问数据库-密码
  8. spring.datasource.password=root
  9. #mybatis的配置
  10. mybatis.configuration.log-impl=org.apache.ibatis.logging.stdout.StdOutImpl
  11. #指定XML映射配置文件的位置,按照规范路径可以忽略不配置
  12. mybatis.mapper-locations=classpath:mapper/*.xml
复制代码
XML文件
  1. <?xml version="1.0" encoding="UTF-8" ?>
  2. <!DOCTYPE mapper
  3.         PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
  4.         "https://mybatis.org/dtd/mybatis-3-mapper.dtd">
  5. <mapper namespace="com.zidiu.mapper.UserMapper">
  6.     <select id="findAll" resultType="com.zidiu.pojo.User">
  7.         select * from User
  8.     </select>
  9. </mapper>
复制代码
Mapper.java
  1. package com.zidiu.mapper;
  2. import com.zidiu.pojo.User;
  3. import org.apache.ibatis.annotations.*;
  4. import java.util.List;
  5. @Mapper
  6. public interface UserMapper {
  7.     /**
  8.      * 查询全部
  9.      */
  10.     // @Select("select * from user")
  11.     List<User> findAll();
  12.     /**
  13.      * 根据id删除
  14.      */
  15.     @Delete("delete from user where id = #{id}")
  16.     Integer deleteById(Integer id);
  17.     /**
  18.      * 添加用户
  19.      */
  20.     @Insert("insert into user(username,password,name,age) values(#{username},#{password},#{name},#{age})")
  21.     void insert(User user);
  22.     /**
  23.      * 根据id更新用户信息
  24.      */
  25.     @Update("update user set username = #{username},password = #{password},name = #{name},age = #{age} where id = #{id}")
  26.     void update(User user);
  27.     /**
  28.      * 根据用户名和密码查询用户信息
  29.      */
  30.     @Select("select * from user where username = #{username} and password = #{password}")
  31.     User findByUsernameAndPassword(@Param("username") String username, @Param("password") String password);
  32. }
复制代码
测试类:
  1. package com.zidiu;
  2. import com.zidiu.mapper.UserMapper;
  3. import com.zidiu.pojo.User;
  4. import org.junit.jupiter.api.Test;
  5. import org.springframework.beans.factory.annotation.Autowired;
  6. import org.springframework.boot.test.context.SpringBootTest;
  7. import java.util.List;
  8. @SpringBootTest
  9. public class SpringbootMybatisQuickstartApplicationTests {
  10.     @Autowired
  11.     private UserMapper userMapper;
  12.     @Test
  13.     public void testFindAll(){
  14.         List<User> userList = userMapper.findAll();
  15.         userList.forEach(System.out::println);
  16.     }
  17.     @Test
  18.     public void testDeleteById(){
  19.         Integer i = userMapper.deleteById(36);
  20.         System.out.println("影响行数" + i);
  21.     }
  22.     @Test
  23.     public void testInsert(){
  24.         User user = new User();
  25.         user.setUsername("admin");
  26.         user.setPassword("123456");
  27.         user.setName("管理员");
  28.         user.setAge(30);
  29.         userMapper.insert(user);
  30.     }
  31.     @Test
  32.     public void testUpdate(){
  33.         User user = new User();
  34.         user.setId(6);
  35.         user.setUsername("admin666");
  36.         user.setPassword("123456");
  37.         user.setName("管理员阿祥");
  38.         user.setAge(30);
  39.         userMapper.update(user);
  40.     }
  41.     @Test
  42.     public void testFindByUsernameAndPassword(){
  43.         User user = userMapper.findByUsernameAndPassword("admin666", "123456");
  44.         System.out.println(user);
  45.     }
  46. }
复制代码
Mybatis官方说明:https://mybatis.net.cn/getting-started.html

1.jpg
标红警告,因为存在同名同包,把其他项目删除就好了。
1.jpg
其他项目移除后就正常了。

SpringBoot3+Vue3开发综合实战项目:
JavaWeb(SpringBoot3+vue3)开发+教学管理系统项目实战

网站建设,公众号小程序开发,系统定制,软件App开发,技术维护【联系我们】手机/微信:17817817816 QQ:515138

QQ|Archiver|自丢网 ( 粤ICP备2024252464号-1 )

GMT+8, 2025-12-1 07:01

专注于网站建设,公众号小程序制作,商城小程序,系统定制,软件App开发

【联系我们】手机/微信:17817817816 QQ:515138

快速回复 返回顶部 返回列表