自己折腾了好几天,终于构建出了第一个SSM项目。虽然以前也构建过,但是对于各个配置文件之间的关系根本不理解。所以不能算构建了。虽然这个构建还不足以满足我的目标,但是后续我会一直持续更新直到认为完善为止,届时我会将代码贴出来,共小白参考。避免像我一样乱撞。。。。(PS,感谢度娘的帮助!)
配置文件是整个框架的基本构成,了解各个配置文件之间的相互协作关系,才能帮助我们更快的理解整个构建过程。
1. web.xml
众所周知,这是搭建Web App的基本,是用来初始化配置信息。当然,还有JavaConfig的配置方式,但这里不做讨论。
本构建的此配置文件中,需要配置Spring以及SpringMVC。所以,自然而然,后面提到的applicationContext.xml以及springmvc-config.xml就是在这个文件中配置加载的。
Spring的配置文件在web.xml中
SpringMVC的配置文件在web.xml
2. applicationContext.xml
这份就是配置spring的配置文件。一般情况下,我们会把mybatis的session托管给spring,所以这就到了我们的mybatis的配置文件的加载啦。但是在配置sqlSession的时候我们需要配置DataSource,于是这里就引出了C3P0连接池。有了连接池,自然就需要数据库的配置。Well, 这就是jdbc.properties的存在意义啦。
Jdbc.properties ——> C3P0 ——> MyBatis(托管) ——>Spring
当然整合的时候,还需要加上事务管理。在service的方式加上@Transactional注解,spring就会管理事物了。
值得留意的是,此配置将让mybatis自动识别mapper文件以及映射的POJO路径。
其他的就是Spring的其他配置了,例如:以注解方式+扫描包路径方式,让spring去发现带注解的主键并自动注入相关发现的依赖实现POJO。
3. mybatis-config.xml
由于托管到spring了,所以这个配置相对简单。当然,不同的构建方案,例如,有的方案在配置sqlsession的时候没有配置mybatis自动扫描mapper和bean,就需要在这里配置每一个mapper跟bean了.
4. Jdbc.properties
这个就不必多说了吧,你在application里面引用的${jdbc.user}之类的数据库配置都要在这里配置好。以下的配置对应我再applicationContext.xml里面引
用的占位符。
5. springmvc-config.xml
在这里我只配置了controller的扫包路径,以及视图解析器
6. generator-config.xml
此配置文件可以说与我们的项目无关,因为他是我们用mybatis的代码生成工具的配置文件,用来帮助我们生成Javabean以及mapper的。也就是当我们发布项目的时候并不需要将他也打包。
这个在此就不累赘了,有兴趣的小伙伴可以自行百度。