myBatis是持久层框架。相对于hibernate是半自动的——手写sql语句,较灵活。
myBatis中个人觉得主要是对sql语句的练习,对要实现业务层的功能在mapper.java中写出相应或辅助的功能,把mapper.java映射在对应的mapper.xml。
写出对应的功能的增删改查语句<insect><delete><update><select>
其他就是关键字的理解和运用。
还有就是动态语句的运用。
<foreach>、循环批量操作
<where><if>、 where是关键是where if是条件,当满足条件就执行中间的代码,和java中的if没多大区别
<include>、当我们的代码是公共的(其他地方都能公用的。减少代码的重复),单独提取出来
<set><if>、set一般和update联合使用,相当于sql语句中的set
<trim><if>、
trim 属性
prefix:前缀覆盖并增加其内容
suffix:后缀覆盖并增加其内容
prefixOverrides:前缀判断的条件
suffixOverrides:后缀判断的条件
用法和where。if基本一样
<choose><when> 和java中的switch case类似
在我的理解中,无论是myBatis在运用过程中要处理的各种事务,其中遇到的one2one,one2more,more2more,等关系,都是用增删改查的方法对数据库进行操作,主要是sql语句的操作,其他都是框架套路。
对于spring容器,主要是对一个有一个的组件(类)进行管理。通过工厂和反射对类实例化(applicationContext和BeanFactory)。IOc——控制反转/依赖注入
spring特点:1支持与其他框架的组合
2低侵入式框架(应用程序与spring没有多大的联系)
3降低了业务对象替换的复杂性,提高了组件之间的解耦
4spring的AOP(面向切面编程)支持允许将一些通知和任务如:安全、事务、日志等,进行集中式处理,从而提供了更好的复用