MyBatis, XML və ya annotasiyalardan istifadə edərək proqramdaxili obyektləri verilənlər bazası proseduraları və SQL ilə birləşdirən Java freymvorkdur.
| MyBatis | |
|---|---|
| Tipi | Persistence framework |
| Tərtibatçı | The MyBatis team |
| Repozitoriya | github.com/mybatis/mybat… |
| Proqramlaşdırma dili | Java |
| Əməliyyat sistemi | Cross-platforma |
| Sonuncu versiya | preferred (preferred) |
| Lisenziya | Apache License 2.0 |
| Sayt | mybatis.org |
ORM framevorklardan fərqli olaraq, MyBatis Java obyektlərini verilənlər bazası cədvəllərinə deyil, Java metodlarını SQL sorğularına çevirir.
MyBatis proqramçıya DB proseduraları, görünüşlər, istənilən mürəkkəb sorğular və verilənlər bazansının bütün funksionallıqlarından istifadə etməyə imkan verir.
SQL sorğuları XML faylları və ya annotasiyalarda saxlanılır. Aşağıda MyBatis mapper nümunəsi göstərilib. Proqram kodu parçasında MyBatis annotasiyaları olan Java interfeys təsvir olunub.
package org.mybatis.example;
public interface BlogMapper {
@Select("select * from Blog where id = #{id}")
Blog selectBlog(int id);
}
Bu hissə aşağıdakı kimi icra edilir
BlogMapper mapper = session.getMapper(BlogMapper.class);
Blog blog = mapper.selectBlog(101);
SQL sorğusu aşağğıdakı kimi external XML faylına çıxarıla bilir.
<?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="org.mybatis.example.BlogMapper">
<select id="selectBlog" parameterType="int" resultType="Blog">
select * from Blog where id = #{id}
</select>
</mapper>