首页 > 其他分享 >mybits

mybits

时间:2024-05-11 10:42:10浏览次数:22  
标签:2024 Users data 2760045743 mybits 360MoveData nt

mybits配置

链接:https://pan.baidu.com/s/11-oQZgSosdcvUiEMxmRMkA?pwd=msdt
提取码:msdt

![6daa7e673d972cdd3a904b3bc10d63ee](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\6daa7e673d972cdd3a904b3bc10d63ee.png)

Mybits入门

1.mybits使用

1.创建工程
2.导入依赖
3.创建配置文件

![ec41d091b4bce7c755be59a726a2b433](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\ec41d091b4bce7c755be59a726a2b433.png)

mybatis默认使用log4j作为输出日志信息
4.SqlMapConfig.xml
在classpath下创建SqlMapConfig.xml

![8bf9ce528f5f925dcf5c015344ca832f](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\8bf9ce528f5f925dcf5c015344ca832f.png)

SqlMapConfig.xml是mybatis核心配置文件,上边文件的配置内容为数据源、事务管理

![46c9acc78e0d536ff75edb83b7f397f1](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\46c9acc78e0d536ff75edb83b7f397f1.png)

--sql已经编写--
加载映射文件

![9578b57a859e923c746a85e5941270db](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\9578b57a859e923c746a85e5941270db.png)

SQL使用代码

![ed2fb158888bd7c154807678359b9d05](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\ed2fb158888bd7c154807678359b9d05.png)

![1fea117e1a3268bef486542e61dab633](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\1fea117e1a3268bef486542e61dab633.png)

使用sql语句

![e96396142bcce4f8ef04fe8eb8ed7d95](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\e96396142bcce4f8ef04fe8eb8ed7d95.png)

![47c013d82e7c992de88a96a5c72a8776](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\47c013d82e7c992de88a96a5c72a8776.png)

如上mybits-帮我们简化了链接的创建和sql语句的生成

如图->想执行sql->会话工厂->给予一个会话

2.占位符

{} 实现向占位符添加值-自动进行java类型和jdbc类型转换-可以防止sql注入-可接收简单类型值和pojo属性值

¥s{}拼接sql传=不进行类型转换=

3.parameterType-resultType

parameterType-传入的参数类型

resultType返回值类型

4..selectOne和selectList

selectOne查询一条记录

selectList查询多条记录

5.mybits-主键添加

![3f2a7da3c2707062c15cbbfc7c5f51f9](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\3f2a7da3c2707062c15cbbfc7c5f51f9.png)

使用

SqlSession.insert("test.insertUser",user);

selectkey->select Last_INSERT_ID--用户添加后自动返回主键-

uuid生成主键

![69eddd3b9e877d74e91d107aad7b6940](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\69eddd3b9e877d74e91d107aad7b6940.png)

6.mybits-删除

![f16033409c2f9eb00418ede68cffc228](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\f16033409c2f9eb00418ede68cffc228.png)

sqlSession.delete("test.deleteUser",39);

7.mybiits->更新用户

![95864300169e8c1df1b79f4d0102505e](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\95864300169e8c1df1b79f4d0102505e.png)

sqlSession.update("test.updateUser",user);

mybits-Dao开发

1.Dao开发配置入门

![61928ee9fd81bc3528cdddda96a0d8be](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\61928ee9fd81bc3528cdddda96a0d8be.png)

![a59f5c6efc930fdf24b4753e2d6c0165](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\a59f5c6efc930fdf24b4753e2d6c0165.png)

![e8f73ed7437e15b3fd61ff570da0b265](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\e8f73ed7437e15b3fd61ff570da0b265.png)

![8f89faf38a206b6547777bbea1aa5e14](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\8f89faf38a206b6547777bbea1aa5e14.png)

![d751486c93be306c26947fa45914c821](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\d751486c93be306c26947fa45914c821.png)

dao层面-有非常多的重复代码-比如释放资源-拿取selSession-

2.Mapper开发

mapper代理方法(程序员只需要mapper接口(相当 于dao接口))
程序员编写mapper接口需要遵循一些开发规范,mybatis可以自动生成mapper接口实现类代理对象。

![a8d02d56bb89ffa8d43fd55385bb115a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\a8d02d56bb89ffa8d43fd55385bb115a.png)

需要一一对应进行映射

也就是mapper-函数映射到xml文件中--需要进行一一对应

3.mapper代理

xml定义

![ab74d1f694af3fb743e294f135a4041a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\ab74d1f694af3fb743e294f135a4041a.png)

![5eea9b8887ac8e1894fd8520adf4dcec](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\5eea9b8887ac8e1894fd8520adf4dcec.png)

加载

![922160ede6004b8fb5aea389641d68c2](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\922160ede6004b8fb5aea389641d68c2.png)

![45e07e2b4ddd60cd021dcc2f31c066c8](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\45e07e2b4ddd60cd021dcc2f31c066c8.png)

---如图--userMapper-来调用方法0由sqlSession-来生成代理对象

代理对象内部调用selectOne或selectList
如果mapper方法返回单个pojo对象(非集合对象),代理对象内部通过selectOne查询数据库。
如果mapper方法返回集合对象,代理对象内部通过selectList查询数据库


mapper接口方法参数只能有一个,系统是否不利于扩展维护。

系统 框架中,dao层的代码是被业务层公用的。
即使mapper接口只有一个参数,可以使用包装类型的pojo满足不同的业务方法的需求。

注意:持久层方法的参数可以包装类型、map。。。,service方法中建议不要使用包装类型(不利于业务层的可扩展)。

4.l配置

SqlMapConfig.xm

![0a05192e83f10245208db8c09e74468f](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\0a05192e83f10245208db8c09e74468f.png)

properties属性

将数据库连接参数只配置在db.properties中,原因:方便对参数进行统一管理,其它xml可以引用该db.properties

![5afb2ae748e665a0957970ae4a909e5d](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\5afb2ae748e665a0957970ae4a909e5d.png)

![2a29db16646c4c42d5d9896bd292741d](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\2a29db16646c4c42d5d9896bd292741d.png)

settings全局参数配置

![0070c06383100dde987ddc21ea4a4b3a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\0070c06383100dde987ddc21ea4a4b3a.png)

![62169f009b19205c6220b75f7a4bcb5a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\62169f009b19205c6220b75f7a4bcb5a.png)

类型别名

1.普通类型别名

如果在指定类型时输入类型全路径,不方便进行开发,可以针对parameterType或resultType指定的类型定义一些别名,在mapper.xml中通过别名定义,方便开发。

2.自定义别名

自定义别名-当我们参数的pojo大部分一致的时候 定义别名可以减少代码繁杂

![8e1d9343cb1eb8b59a484042657ed0f6](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\8e1d9343cb1eb8b59a484042657ed0f6.png)

![d7ae2a441a846072ed1c64575f9fa045](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\d7ae2a441a846072ed1c64575f9fa045.png)

批量别名-常用-扫描po文件 给所有pojo注册别名

3.mybits 类型处理器

typeHandlers
jdbc类型和java类型转换
例子
IntegerTypeHandler Integer,int 任何兼容的数字和整型

4. mappers 映射配置
  1. 通过resource加载单个映射文件

    ![982f90b2b3ead1f97c7560fa9326b4fe](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\982f90b2b3ead1f97c7560fa9326b4fe.png)

  2. 通过mapper接口加载单个mapper

![5c7c2136386dd9b06663cdf3631c412c](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\5c7c2136386dd9b06663cdf3631c412c.png)

按照上边的规范,将mapper.java和mapper.xml放在一个目录 ,且同名

![de35b2cb9ffb9c7af48ac36f9586f000](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\de35b2cb9ffb9c7af48ac36f9586f000.png)

3 . 批量加载mapper(推荐使用)

![3cc05d3339e8ebae691aaac0073392fa](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\3cc05d3339e8ebae691aaac0073392fa.png)

4.输入映射

通过parameterType指定输入参数的类型,类型可以是简单类型、hashmap、pojo的包装类型

总结

![80e95beb88e2a055ee91e47d12c5bc6e](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\80e95beb88e2a055ee91e47d12c5bc6e.png)

![16e891a8f40288f28679241a5f4a6dd0](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\16e891a8f40288f28679241a5f4a6dd0.png)

![eec86ff7c8c1cc0c909076d9d0827b36](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\eec86ff7c8c1cc0c909076d9d0827b36.png)

Mybits高级

![3ec78fe0039ba4d7a0f0e93edde34ffd](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\3ec78fe0039ba4d7a0f0e93edde34ffd.png)

1.一对一查询

查询订单信息,关联查询创建订单的用户信息
sql语句
select orders.*, USER.username,
USER.sex,
USER.address FROM ORDERS,USER WHRE ORDERS.USER_ID=USER.ID;

select orders.*, USER.username,
USER.sex,
USER.address FROM ORDERS JOIN USER ON ORDERS.USER_ID=USER.ID;


实现该查询

1.创建pojo

2.mapper

<SELECT ID="FINDorderUser" resultType='pojo'>
select orders.*,user.username,user.sexmuser.address from orders,user WHRE ORDERS.USER_ID=USER.ID;

</lelect>

3.mapper.java

![5efc0b312fab4d35aa879dd46fae93a0](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\5efc0b312fab4d35aa879dd46fae93a0.png)

这个时候-只需要获取即可使用该sql语句
-- 使用resultMap映射的思路
使用resultMap将查询结果中的订单信息映射到Orders对象中,在orders类中添加User属性,将关联查询出来的用户信息映射到orders对象中的user属性中。

![f8a7cbf8b3875476e103b0733ac7f7f5](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\f8a7cbf8b3875476e103b0733ac7f7f5.png)

定义resultMap

![ee4c7227c01ec39fa1bfa811976628dc](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\ee4c7227c01ec39fa1bfa811976628dc.png)

S定义

![e92a4eb35812042de17a350aa5405bc7](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\e92a4eb35812042de17a350aa5405bc7.png)


![55906bbde71b042c14daf40325e2734a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\55906bbde71b042c14daf40325e2734a.png)

2.一对多查询

查询订单及订单明细的信息。
SELECT
orders.*,
USER.username,
USER.sex,
USER.address,
orderdetail.id orderdetail_id,
orderdetail.items_id,
orderdetail.items_num,
orderdetail.orders_id
from
orders,
USER,
orderdetail
whrer
orders.user_id = user.id AND orderdetail.orders_id=orders.id





使用resultType将上边的 查询结果映射到pojo中,订单信息的就是重复
要求:
对orders映射不能出现重复记录。

![affb5c09f23f5c042208c4323940698f](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\affb5c09f23f5c042208c4323940698f.png)

![6c2accdfd7490aa05255bb2aaa6f9807](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\6c2accdfd7490aa05255bb2aaa6f9807.png)


![7c536bcee1988bbddfd784e6de1204ec](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\7c536bcee1988bbddfd784e6de1204ec.png)

map->映射关系
将数据库字段->对象的字段中
同时会指定映射的属性和集合中

![44c0fb3e4d6de667636651db0026ad85](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\44c0fb3e4d6de667636651db0026ad85.png)


![e59fc4b2bdacf3621426fec322ad24c3](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\e59fc4b2bdacf3621426fec322ad24c3.png)

3.多对多查询案例

查询主表是:用户表
关联表:由于用户和商品没有直接关联,通过订单和订单明细进行关联,所以关联表:
orders、orderdetail、items


![5d503cb8e549dc16e9fb2f3d9f972be9](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\5d503cb8e549dc16e9fb2f3d9f972be9.png)

映射

![b4c9ea555f307b956af31dbce8415170](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\b4c9ea555f307b956af31dbce8415170.png)

![bb9ca63b64a989b5b020ebe231fb555d](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\bb9ca63b64a989b5b020ebe231fb555d.png)

![314f0ba042424242c4135b4302a65f13](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\314f0ba042424242c4135b4302a65f13.png)

resultmap总结

![863ba0486e9be85c0c64ea7eccdead9a](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\863ba0486e9be85c0c64ea7eccdead9a.png)

延迟加载

如果查询两张表-如果只需要查询一张表即可满足条件的情况下-那么就不需要查询下一章表
关联查询->单表查询
1.使用association实现延迟加载

查询订单并且关联查询用户信息

案例

![cf67701ceb62d4d73d31491daee4f282](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\cf67701ceb62d4d73d31491daee4f282.png)

<resultMap type="orders" id"map">
<!--对订单信息进行映射配置  -->
            <id column="id" property="id"/>
            <result column="user_id" property="userId"/>
            <result column="number" property="number"/>
            <result column="createtime" property="createtime"/>
            <result column="note" property="note"/>
<!-- 实现对用户信息进行延迟加载
            select:指定延迟加载需要执行的statement的id(是根据user_id查询用户信息的statement)
            要使用userMapper.xml中findUserById完成根据用户id(user_id)用户信息的查询,如果findUserById不在本mapper中需要前边加namespace
            column:订单信息中关联用户信息查询的列,是user_id
<association property="user" javaType="user"
  select="cn.itcast.mybatis.mapper.UserMapper.findUserById" column="user_id">

</association>

</resultMap>

![62a5de17ceb2efb1cb23ce43c27b6311](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\62a5de17ceb2efb1cb23ce43c27b6311.png)

![83717cda1037366a4cc5b930afeefd1d](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\83717cda1037366a4cc5b930afeefd1d.png)

也就是-我们编译器没有访问到user内容就不会去加载吗 2.延迟加载配置
mybits默认没有开启延迟加载-需要自己手动开启
![img](file:///G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\f3055bee2e2c581a6d17f4c89b04fb4c.png)
3.

![img](file:///G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\41591507899361a44254c502150f44f5.png)

缓存

1.一级缓存

第一层查询-如果没有-从数据库查 再添加进缓存中
sqlSession去执行增删改-清空一级缓存
2次发起->缓存有直接返回

redis缓存思路

mybits默认支持一级缓存
Sqlsession sqlsession=sqlsessionfactry.ioensession();
UserMapper userMapper=sqlsession.getMapper(usermapper.class);
User user=usermapper.finduserbyid(1);第一层查询-如果没有-从数据库查 再添加进缓存中

User user=usermapper.finduserbyid(1); 2次发起->缓存有直接返回

usermapper.updateuser(user1);sqlSession去执行增删改-清空一级缓存

一级缓存应用

![2ada7a24f8aeae89ccbcdb1d4e103400](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\2ada7a24f8aeae89ccbcdb1d4e103400.png)

2.2级缓存

![0e49bf45af19e07fa4ee06a0b7335180](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\0e49bf45af19e07fa4ee06a0b7335180.png)

二级缓存范围大-多个sqlsession可以共享一个usermapper二级缓存区域
二级缓存区域是按照namespace分-其他不同的mapper也有自己的二级缓存区域

一个namespace的mapper都有一个二缓存区域,两个mapper的namespace如果相同,这两个mapper执行sql查询到数据将存在相同 的二级缓存区域中。

开启二级缓存
mybaits的二级缓存是mapper范围级别,除了在SqlMapConfig.xml设置二级缓存的总开关,还要在具体的mapper.xml中开启二级缓存。

![0a1dafc8e5fd22b6cf93d8e8aae31c4e](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\0a1dafc8e5fd22b6cf93d8e8aae31c4e.png)

mybits整合ehcache

mybits整合ehcache
ehcache是一个分布式缓存框架
缓存的数据-进行集中管理-分布式集中访问 整合方法

mybatis提供了一个cache接口,如果要实现自己的缓存逻辑,实现cache接口开发即可。
mybatis和ehcache整合,mybatis和ehcache整合包中提供了一个cache接口的实现类。
![img](file:///G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\45eaa4a652048030f4b17712288fbc56.png)
ehcache配置
![img](file:///G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\687820640853663a040469325cfb6a5b.png)

![img](file:///G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\68e729a0da44d9d806007bc8178478d5.png)

二级应用场景

![fcf22de20a326941945b31d902fd8608](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\fcf22de20a326941945b31d902fd8608.png)

Mybits整合Spring

1.bean配置

![af73e0779b8e3e14680320c06a1d3e29_720](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Thumb\af73e0779b8e3e14680320c06a1d3e29_720.jpg)

bean的配置

user.xml

![b13f504c2f17c64e26097dff4834aed8](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\b13f504c2f17c64e26097dff4834aed8.jpg)

![92c073b510f63afca1597faf32e1d6be](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\92c073b510f63afca1597faf32e1d6be.jpg)

![68ba41b8d0cb810134cb064e6eed67c5](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\68ba41b8d0cb810134cb064e6eed67c5.jpg)

![4b6944e971eb9c6af10fdffe3f6cd943](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-05\Ori\4b6944e971eb9c6af10fdffe3f6cd943.jpeg)

以上bean去读xml配置
然后mybits去注册 在接口实现类进行查询
之后注册为bean

后续直接使用

2.mapper

还是要在同级目录以下

注册为bean 扫描xml文件

![dad5b70ff70703d57a807c3d9a740926_720](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Thumb\dad5b70ff70703d57a807c3d9a740926_720.jpg)

![38fcb7f3871e63a3686786685b0671b7](G:\360MoveData\Users\nixg\Documents\Tencent Files\2760045743\nt_qq\nt_data\Pic\2024-04\Ori\38fcb7f3871e63a3686786685b0671b7.jpg)

标签:2024,Users,data,2760045743,mybits,360MoveData,nt
From: https://www.cnblogs.com/Agtw/p/18186037

相关文章

  • 关于Mybits三层架构的项目操作
    概述本篇文章用来记录如何使用mybits在三层架构中进行简单的增删改查操作,下面我们进入管理系统的场景下进行操作,这个管理系统中的增删改查的大体逻辑基本逻辑。首先三层架构中colltroller:用来接收和传递参数值service:在这层调用mapper接口中的方法或者回调的函数数据mapper:......
  • MyBits逆向工程
    MyBits逆向工程1.什么是逆向工程:逆向工程是MyBits基于表单从而自动生成的MyBits所需要执行的sql语句的一个功能,可以生成基础的增删改查功能,增加了开发的效率。2.如何构建一个MyBits工程的环境,以及如何使用它?1.首先需要构建一个maven项目2.通过pom.xml加入MyBits常用的依赖......
  • mybits_基础
    1.框架:一款半成品软件,我们可以基于框架继续开发,从而完成一些个性化的需求2.ORM:对象关系映射,数据和实体对象的映射3.MyBatis:是一个优秀的基于Java的持久层框架,它内部封......
  • Mybits
    MYbits1.是一种持久层框架JDBC缺点1.硬编码注册驱动,获取连接SQL语句2.操作繁琐手动设置参数手动封装结果集......