发表于: 2016-07-29 09:12:17

5 2259


【完成工作】

Springmvc+mybatis

springmvc的基础上,加上mybatis就可以在浏览器上访问数据库了。所以工程只需要在前文的工程上加上mybatis的配置文件就妥妥的。

源码链接: https://pan.baidu.com/s/1sl7YUuD

工程结构如下:

1.      jar

(1)     Mybatis中所需jar包;

(2)     spring-framework-3.2.0.RELEASE(带spring-web-mvc模块)

(3)     mybatis-spring-1.2.2.jar

2.      配置web.xml

本例中用到了@Autowired注解自动注入bean,所以需要自动生成spring容器加载spring配置文件。<context-param>标签为自动加载spring配置文件的参数。

PS: <url-pattern>/</url-pattern> dispatcherServleturl不能配成/*,或者报错。

3.      配置SqlMapConfig.xmlStudentMapper.xml和开发dao(与前文一致,不再赘述)。

如果采用dao注解开发,SqlMapconfig.xmlStudentMapper.xml都可以省略不写。只需要在dao中标注注解。

MapperScannerConfigurer会扫描到该dao并生成动态代理对象。

4.      配置ApplicationContext.xml

5.      开发serviceserviceImpl

6.      开发controller(注解开发)

7.      启动服务器用postmanget方法访问

妥妥滴。

【遇到问题】

1.      如果servlet-mappingurl-pattern配置为/*

华丽丽的说找不到页面了。配//*.action什么的就没事了。网上解释说/*的话controller返回的modelAndView直接由dispatcherServlet解析而不由视图解析器解析,所以报错。然而我并不知道这是个什么鬼意思。

2.      把处理器映射器和处理器适配器注释掉工程也跑得飞起,完全没有什么问题的样子。

是不是这两个玩意是多余的,根本就不需要配置啊。

答案是可以不配置,但是不是多余的。因为org.springframework.web.servlet包下有一个DispatcherServlet.properties。里面有一系列默认的配置。

里面就有DefaultAnnotationHandlerMappingAnnotationMethodHandlerAdapter。所以即使ApplicationContext.xml没有配置,但是dispatcherServlet会根据配置的controller路径信息自动调用相应的映射器和适配器。

【任务收获】

1.      mybatisspring+mybatis,再到springmvc再到springmvc+mybatis,算是把从浏览器访问数据库的流程捋清楚了。

2.      遇到了一些常见的错误,找到bug的时候简直跟找到女朋友的感觉是一样的。

【后续安排】

1.      学习http报文。(参考书籍:《http权威指南》,《RESTful Web Service》)

2.      进行任务3.



返回列表 返回列表
评论

    分享到