日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

【问题记录】进行mybatis实例查询测试时Error opening session. Cause: java.lang.NullPointerException

發布時間:2024/9/30 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【问题记录】进行mybatis实例查询测试时Error opening session. Cause: java.lang.NullPointerException 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.



去查了一下Resources.getResourceAsStream

試圖改變xml配置的位置:

結果報錯:

嘗試啟動 DemomybatisApplication

居然沒連接數據庫,于是連接數據庫:

再啟動test文件:仔細看報錯是

去查了一下,加上了mapper注解

然而報錯還是一樣的,又去查資料,在pom.xml中增加了一配置:

再次運行,成功了:


查到的結果也正常顯示了。

以上查詢的代碼:
全局配置:
mybatis-config.xml

<!DOCTYPE configurationPUBLIC "-//mybatis.org//DTD Config 3.0//EN""http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration><properties><property name="jdbc.driver" value="com.mysql.cj.jdbc.Driver"/><property name="jdbc.url"value="jdbc:mysql://localhost:3308/data1?characterEncoding=UTF-8"/><property name="jdbc.username" value="heziyi"/><property name="jdbc.password" value="123456"/></properties><!-- 環境配置,可以配置多個環境 --><environments default="test"><!--environment用來對某個環境進行配置id:環境標識,唯一--><environment id="test"><!-- 事務管理器工廠配置 --><transactionManager type="JDBC"/><!-- 數據源工廠配置,使用工廠來創建數據源 --><dataSource type="POOLED"><property name="driver" value="${jdbc.driver}"/><property name="url" value="${jdbc.url}"/><property name="username" value="${jdbc.username}"/><property name="password" value="${jdbc.password}"/></dataSource></environment></environments><mappers><package name="com.example.demomybatis.mapper"/></mappers> </configuration> <!-- 使用package 來讓mybatis加載com.javacode2018.chat03.demo3.mapper 包下--> <!-- 面所有的Mapper接口和Mapper xml文件。-->

實體類和接口:

package com.example.demomybatis.model;import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.ToString;@Data @AllArgsConstructor @Builder @ToString public class UserModel {private int id;private String name;private String pwd; } import java.util.List; @Mapper public interface UserMapper {List<UserModel>getList(); }

查詢的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.demomybatis.mapper.UserMapper"><!-- select用來定義一個查詢操作id:操作的具體標識resultType:指定查詢結果保存的類型--><select id="getList"resultType="com.example.demomybatis.model.UserModel"> <![CDATA[SELECT * FROM user]]> </select> </mapper>

運行的Test文件:

@Slf4j public class Demo3Test {private SqlSessionFactory sqlSessionFactory;@Beforepublic void before() throws IOException { //指定mybatis全局配置文件String resource = "mybatis-config.xml"; //讀取全局配置文件InputStream inputStream =Resources.getResourceAsStream(resource); //構建SqlSessionFactory對象SqlSessionFactory sqlSessionFactory = newSqlSessionFactoryBuilder().build(inputStream);this.sqlSessionFactory = sqlSessionFactory;}@Testpublic void test() {try (SqlSession sqlSession = this.sqlSessionFactory.openSession(true);) {UserMapper userMapper = sqlSession.getMapper(UserMapper.class); //執行查詢操作List<UserModel> userModelList = userMapper.getList();userModelList.forEach(item -> {log.info("{}", item);});log.info("----------------------------------");}} }

yml數據庫配置:

spring:datasource:url: jdbc:mysql://localhost:3308/data1?useUnicode=true&characterEncoding=UTF8username: heziyipassword: 123456driver-class-name: com.mysql.cj.jdbc.Driver

總結

以上是生活随笔為你收集整理的【问题记录】进行mybatis实例查询测试时Error opening session. Cause: java.lang.NullPointerException的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。