前言
作为一个视频点播系统的后台,应该为客户端(见 《写一套简易的视频点播系统–Android视频播放器》) 提供合理良好的API接口。同样,这里我们完成了最简单最基本的功能: 基于Spring MVC结构,当有http请求到来时,从MySQL数据库获取数据,返回json格式的数据。
工程代码结构
如下所示(省略了一些文件):
.
├── main/
│ ├── java/
│ │ └── com/
│ │ └── yuantops/
│ │ ├── exception/ //Exception包
│ │ ├── tv/
│ │ │ ├── bean/ //Video对象,对应数据库中数据模型
│ │ │ ├── controller/ //Spring MVC中的C
│ │ │ ├── dao/ //数据库增删改查
│ │ │ ├── impl/ //service接口实现
│ │ │ └── service/ //service接口
│ │ └── utils/ //工具类
│ ├── resources/
│ │ ├── application-root-context.xml //Spring MVC启动加载的初始化上下文
│ │ ├── com/
│ │ │ └── yuantops/
│ │ │ └── tv/
│ │ │ ├── dao/ //对应dao java文件的xml文件,属于MyBatis配置
│ │ │ └── settings/ //MyBatis的配置信息
│ │ ├── config/ //编码、jdbc等配置文件
│ │ ├── front-servlet-context.xml //有HttpRequest时加载的上下文的配置
│ │ ├── log4j.xml //log4j的配置
│ │ └── properties/ //properties文件
│ │ └── jdbc.properties
│ └── webapp/
│ ├── WEB-INF/
│ │ ├── front_page/ //Spring MVC中的V
│ │ └── web.xml //整个web app的配置文件
│ └── index.jsp
└── test/ //测试文件
数据加载流程
和所有基于Servlet的Web Application一样,app的入口在web.xml,会加载application-root-context.xml和front-servlet-context.xml两个context。在这两个context中,会分别load一些config/目录下的配置文件。
项目除了Spring MVC框架,还用了log4j(日志记录),MyBatis(数据库连接)两个开源插件。