框架整合
来源:互联网 发布:淘宝u站首页在哪里 编辑:程序博客网 时间:2024/06/01 09:19
框架整合主要靠spring强大的DI和AOP(目前接触到的整合是酱紫的。。。),把所有套路化的东西都省略
spring整合mybatis
在spring配置文件中加入:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean" > <!-- 注入数据库连接池 --> <property name="dataSource" ref="dataSource"></property> <!-- 配置mybatis全局配置文件 --> <property name="configLocation" value="classpath:mybatis-config.xml"></property> <!-- 扫描entity包,com.diyun.entity.Seckill => Seckill --> <property name="typeAliasesPackage" value="com.diyun.entity"></property> <!-- 扫描sql配置文件 --> <property name="mapperLocations" value="classpath:mapper/*.xml"></property> </bean> <!-- 配置扫描Dao接口包,动态实现Dao接口,注入到spring容器中 --> <bean class="org.mybatis.spring.mapper.MapperScannerConfigurer"> <property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property> <property name="basePackage" value="com.diyun.dao"></property> </bean>
上面的配置做了什么?
1.配置数据库。这特么废话,肯定要有个数据源给mybatis
2.配置mybatis全局配置文件,一些诸如获取自增主键值,开启驼峰命名法之类的配置,总不能放spring配置文件中吧?
3.扫描entity包。
4.扫描sql配置文件。起码得告诉spring,它需要的文件到底在哪吧?
5.扫描Dao接口。这是关键,mybatis接口式编程中,我们通过设计接口来对应相应的sql语句。
比如接口中有这个方法:Seckill getById(long SeckillId);
这实际上已经能准确描述所有问题了:①sql执行结果打包成Seckill实体;②对应sql配置的id为‘getById’;③参数类型为long,且名字叫SeckillId。所以还需要写其他的嘛?不需要。只要任务明确,那就存在直接生成的可能,spring做到了。
另外:在未整合之前,向sql中传递多个参数是用map来打包传递的,现在所有都交给spring来做了。这样:@Param("seckillId") long seckillId,@Param("userPhone") long userPhone
,加一个@Param来告诉spring(因为编译之后是获取不到形参名的。spring用它牛叉的AOP,动态处理好sql执行前的一切套路代码,然后拿着两个不明所以的传参,在风中凌乱。。。。所以你要告诉它一声)
0 0
- 框架整合
- 框架整合
- 框架整合
- 框架整合
- 框架整合
- 框架整合
- 【框架整合】三、整合mybatis
- 【框架整合】四、整合redis
- 框架整合____Spring整合hibernate
- SSH框架整合笔记
- Spring整合Struts框架
- ssh框架整合
- SSH框架整合
- SSH+DWR 框架 整合
- SSH框架整合步骤
- SSH框架的整合
- SSH框架整合步骤
- SSH框架整合步骤
- 简易串口助手
- OpenGL 半透明效果的实现(混合)、雾效果 和 圆滑(抗锯齿)
- PHP通过COM操作EXCEL,的问题
- 问一个关于SharePreference 的问题
- 已知圆柱体的底面半径r和高h,计算圆柱体底面周长和面积、圆柱体侧面积以及圆柱体体积。
- 框架整合
- jQuery中attr和prop的区别
- 90,78. Subsets II I 典型的回溯算法,另 迭代解法和 位解法
- Linux部署初始化文档
- 写在2017展望与回顾
- SpringMVC详细示例
- View滑动效果常用属性详解:scroll、translation、LayoutParams
- iOS 开发 UITextField常用属性:文本框样式、文字样式、键盘样式、左右视图样式、清除按钮设置等
- CudaSharp —— 在 GPU 上允许你的 C# 代码