spring boot summer快速开发框架之《一、数据库操作:一分钟完成json接口》

软件设计 2017-04-19

快速开发演示:

目录结构:

本例采用的mysql自带的sakila示例库,脚本DumpAddress.sql。

步骤:1、 修改application.properties中数据库连接2、 在App.java中配置自动生成实体类存放目录

Config.dbBeanScanFilter=".*sample.*db";

3、 在App.java中配置生成实体类规则这里采用下划线风格(即将字段名yourname转换成yourName)_

@Bean
 public IBeanMapperRule getBeanMapperRule(){
   return new UnderlinedBeanMapperRule();
 }

4、 设置ControllerAspect.java中拦截的规则

@Pointcut("execution(public * summer.sample..*.*Controller.*(..))")

5、 配置自动生成实体类规则、数据库类型、源码目录和资源目录

new EntityGenerator(
    new UnderlinedBeanMapperRule(""),
    new MysqlTypeMapperRule()
).autoGenEntity("/src/main/java","src/main/resources");

6、 执行AppTool启动自动实体生成(一旦有脚本更新或添加就会生成对应的实体类文件)7、 使用数据库工具生成Address_create.sql建表脚本放在resources对应模块db目录此时可以看到在对应包目录已经生成了Address.java文件8、 新建AreaController类

@Controller
@RequestMapping("/area")
public class AreaController {
    @Autowired
    BaseDao baseDao;

    @RequestMapping("/getAddresses")
    public List<Address> getAddresses(){
        return baseDao.list(Address.class);
    }
}

9、 在html/area目录新建getAddresses.html页面

@import summer.sample.area.db.*
@args List<Address> addressList
    <table>
        @if(addressList){
        @for(Address a : addressList){
        <tr>
            <td>@a.getAddress()</td>
            <td>@a.getDistrict()</td>
            <td>@a.getPostalCode()</td>
            <td>@a.getPhone()</td>
        </tr>
          }}
    </table>

然后启动App访问/area/getAddresses.html就能看到结果。如果只需json数据则不用建页面,直接访问/area/getAddresses.json即可。以后新增只需要执行7、8、9步。

项目地址:http://git.oschina.net/xiwa/summer

相关推荐