Resolving MyBatis OGNL Expression Evaluation Errors with Null Source
Problem Description
When executing MyBatis mapper methods, the folowing exception occurs:
org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.builder.BuilderException:
Error evaluating expression '_clause.operator.alias'.
Cause: org.apache.ibatis.ognl.OgnlException: source is null for getProperty(null, "opera ...
Posted on Sat, 07 Nov 2026 16:31:41 +0000 by 01706
Quarterly Capability Assessment System for Senior Citizens
Database Schema
CREATE TABLE daily_life (
id_card VARCHAR(20) PRIMARY KEY,
eating TINYINT,
bathing TINYINT,
grooming TINYINT,
dressing TINYINT,
bowel_ctl TINYINT,
bladder_ctl TINYINT,
toileting TINYINT,
transfer TINYINT,
ambulation TINYINT,
stair_climb TINYINT
);
...
Posted on Thu, 05 Nov 2026 16:40:36 +0000 by Masterchief07
Building a Pet Hospital Management System with Spring Boot
System Functionality Overview
The pet hospital management system built with Spring Boot supports multiple user roles with configurable permissions. Key features include:
User management and role assignment
Permission control system
Pet profile management
Medical case tracking
Health guide management
Health analytics and charting
Pet activity l ...
Posted on Sat, 31 Oct 2026 16:24:50 +0000 by ramkumar_unknow
MyBatis CRUD Operations, XML Mappings, and Dynamic SQL
MyBatis is an open-source Java persistence framework that simplifies data base interactions by reducing JDBC boilerplate code. It supports custom SQL, stored procedures, and advanced mappings. This article covers basic CRUD operations using annotations, XML mappings, and dynamic SQL.
Basic CRUD with MyBatis
Start by creating a Spring Boot pr ...
Posted on Thu, 29 Oct 2026 16:21:31 +0000 by mimcris
MyBatis Advanced Mapping and Lazy Loading Techniques
Database Schema Overview
Before implementing the code examples, it's essential to understand the database table structure that we'll be working with.
Many-to-One Relationships
For our examples, we'll consider a PostContent table (primary key) as the "many" side and a Post table as the "one" side.
Appproach 1: Cascade Propert ...
Posted on Thu, 29 Oct 2026 16:20:03 +0000 by jonemo
Implementing Role-Based Access Control in Spring Boot with Apache Shiro and MyBatis
Project Dependencies
To integrate Apache Shiro into a Spring Boot environment using Gradle, include the necessary starters for web support, MyBatis, and the Shiro core libraries. Below is the configuration for build.gradle:
plugins {
id 'org.springframework.boot' version '2.7.5'
id 'io.spring.dependency-management' version '1.0.15.RELEA ...
Posted on Wed, 28 Oct 2026 16:33:23 +0000 by nainil
Understanding MyBatis Core Mechanisms
MyBatis serves as a powerful persistence framework that facilitates custom SQL queries, stored procedures, and sophisticated object-relational mapping. It eliminates the need for extensive JDBC boilerplate code, including manual parameter binding and result set handling. Configuration and mapping of native types, interfaces, and Plain Old Java ...
Posted on Tue, 27 Oct 2026 16:30:02 +0000 by DoomyCheese
MyBatis SqlSession Creation Source Code Analysis and Key Questions
Why InputStream Doesn't Need Manual Closure When Using SqlSessionFactoryBuilder?
Consider this typical usage pattern:
public class StudentRepositoryImpl implements IStudentRepository {
private SqlSession session;
public void addStudent(Student student) {
try {
InputStream stream = Resources.getResourceAsStream(& ...
Posted on Mon, 26 Oct 2026 16:24:50 +0000 by PHP-Editors.com
Implementing Data Queries Using MyBatis Mapper Proxy
Define an interface that declares the query method.
package com.example.mapper;
import com.example.model.Employee;
import java.util.Collection;
public interface EmployeeMapper {
Collection<Employee> retrieveAllEmployees();
}
Create a XML mapping file that links the interface method to an SQL statement.
<?xml version="1.0&quo ...
Posted on Sun, 25 Oct 2026 16:46:05 +0000 by alanrenouf
Replacing MyBatis with MyBatis-Plus in a Spring Boot 3 Project That Includes Flowable
There is a common scenario where a project built solely on MyBatis must later incorporate MyBatis-Plus. Even though the goal appears to be "coexistence," MyBatis-Plus is effectively a superset of MyBatis, so the more practical path is switching to MyBatis-Plus and eliminating MyBatis’s dedicated configuration. The steps below describe ...
Posted on Sun, 25 Oct 2026 16:00:57 +0000 by chingwaah