# SMVC
**Repository Path**: atm_java/SMVC
## Basic Information
- **Project Name**: SMVC
- **Description**: SMVC 是基于java开发的轻量级MVC框架,框架宗旨:方法加上注解即接口。
- **Primary Language**: Java
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: https://git.oschina.net/1028125449/SMVC
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 34
- **Created**: 2022-03-30
- **Last Updated**: 2022-03-30
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# SMVC
====================


> **SMVC** 是基于java开发的轻量级MVC框架,框架依赖于spring-core。
框架开发宗旨:业务方法加上注解就是接口。
框架开发目的:该框架原型是为了学习spring而写的demo(原型,https://github.com/feichendingxiangyong/Smvc
,该框架在原型基础做了优化和简化),但后来该框架在实际项目中得到了应用,该框架具有如下特点:
* 框架无入侵,只要注解即可完成路由配置;
* 路由配置灵活,业务service即加上注解就是接口,返回值就是json或者页面名字;
* HTTP/JSON参数自动注入接口方法参数;
* 请求值要求json还是form、返回json还是返回页面 只需要注解即可搞定;request中的参数自动注入到接口方法参数中;
* 拦截器配置极为简单,只需要简单注解。
* 统一的异常处理,代码中再也不需要管任何异常,直接抛出去就好,出错了框架会为你返回错误码。
## Installation
maven依赖:
```
wang.moshu
smvc-framework
0.0.3
```
## DEMO
运行smvc-demo,打开index.html运行测试例子。演示地址:http://123.206.202.189:8080/smvc-demo/
## Requirements
* java 6.0+
## License
SMVC is available under the Apache license, see the LICENSE file for more information.
## 使用指南
### 1.接口返回类型:页面或JSON
> 只需要在接口方法上指定returnType
#### 1.1 返回页面
```
@RequestMapping(value = "", returnType = ReturnType.PAGE)
public String index()
{
// 返回index页面
return "index";
}
```
#### 1.2 返回JSON
只需要在接口方法上指定returnType
```
@RequestMapping(value = "returnData", returnType = ReturnType.JSON)
public String returnData()
{
// 返回数据(框架自动打包为json)
return "smvc maybe good.";
}
```
### 2. 返回数据
#### 2.1 对于返回页面,在接口方法上指定增加Map类型参数,接口中增加入Map的值就是返回给页面的值
```
@RequestMapping(value = "returnValue", returnType = ReturnType.PAGE)
public String returnValue(Map