快速开发演示:

目录结构:

本例采用的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

 

spring boot summer快速开发框架之《一、数据库操作》的更多相关文章

  1. Java Spring Boot VS .NetCore (四)数据库操作 Spring Data JPA vs EFCore

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...

  2. Spring及Spring Boot 国内快速开发框架

    http://www.javacoder.top/home.jsp# http://springboot.fun/ 一个常用的支付子项目 https://gitee.com/52itstyle/spr ...

  3. Spring Boot【快速入门】简单案例

    Spring Boot[快速入门]   Spring Boot 概述 Build Anything with Spring Boot:Spring Boot is the starting point ...

  4. Spring Boot中快速操作Mongodb

    Spring Boot中快速操作Mongodb 在Spring Boot中集成Mongodb非常简单,只需要加入Mongodb的Starter包即可,代码如下: <dependency> ...

  5. Spring Boot 如何快速集成 Redis 哨兵?

    上一篇:Spring Boot 如何快速集成 Redis? 前面的分享栈长介绍了如何使用 Spring Boot 快速集成 Redis,上一篇是单机版,也有粉丝留言说有没有 Redis Sentine ...

  6. Spring boot Jpa添加对象字段使用数据库默认值

    Spring boot Jpa添加对象字段使用数据库默认值 jpa做持久层框架,项目中数据库字段有默认值和非空约束,这样在保存对象是必须保存一个完整的对象,但在开发中我们往往只是先保存部分特殊的字段其 ...

  7. Spring Boot:快速入门教程

    什么是Spring Boot? Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程.该框架使用了特定的方式来进行配置,从而使开发人 ...

  8. Spring Boot框架——快速入门

    Spring Boot是Spring 全家桶非常重要的一个模块,通过 Spring Boot 可以快速搭建一个基于 Spring 的 Java 应用程序,Spring Boot 对常用的第三方库提供了 ...

  9. Spring Boot项目指定启动后执行的操作

    Spring Boot项目指定启动后执行的操作: (1)实现CommandLineRunner 接口 (2)重写run方法 (3)声明执行顺序@Order(1),数值越小,优先级越高 (4)如果需要注 ...

随机推荐

  1. MyBatis一个常见的错误

    最近在建一 个MyBatis项目的时候,觉得配置Spring和 MyBatis 的文件很复杂,所以就把以前的项目重新整理一下配置不改变,只修改ctr层和Mapper  .我把mapper 层和Ctr ...

  2. Java面试11|Maven与Git

    git的命令一定要掌握,如果学习可以参考:廖雪峰的官方网站 1.Maven 生命周期及Maven多项目聚合与继承 Maven的生命周期分如下的9个阶段. (1)clean 清理自动生成的文件,也就是t ...

  3. 1734: [Usaco2005 feb]Aggressive cows 愤怒的牛

    1734: [Usaco2005 feb]Aggressive cows 愤怒的牛 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 217  Solved: ...

  4. 1726: [Usaco2006 Nov]Roadblocks第二短路

    1726: [Usaco2006 Nov]Roadblocks第二短路 Time Limit: 5 Sec  Memory Limit: 64 MBSubmit: 835  Solved: 398[S ...

  5. 模态Model视图Push下一个视图(混合跳转)

    来自: http://www.cnblogs.com/dingding3w/p/6222626.html 如果没有UINavigationController导航栏页面之间切换是不能实现Push操作的 ...

  6. 一个服务器启动多个tomcat(详细图解)

    1.官网下载一个tomcat,复制一个副本(第二个tomcat) 2.添加2个环境变量(右键单击我的电脑->选择属性->选择高级->选择环境变量),是2个tomcat的位置,环境变量 ...

  7. click和onclick本质的区别

    原生javascript的click在w3c里边的阐述是DOM button对象,也是html DOM click() 方法,可模拟在按钮上的一次鼠标单击. button 对象代表 HTML 文档中的 ...

  8. IO 模型

    常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型. (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求soc ...

  9. Kali linux learning note

    from:http://blog.sina.com.cn/s/blog_40983e5e0101dhz0.html     因为kali linux基于debian 7,当然要把这台Acer 4736 ...

  10. Apache网页的缓存时间

    配置网页缓存时间概述 通过mod_expires模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求,减轻服务端工作压力. 启用mod_expires模块后,会自动生成页面头部信息 ...