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