5.4 Generator与JavaBean

    • 拥有IDE代码提示不用记忆数据表字段名,消除记忆负担,避免手写字段名出现手误

    • BaseModel设计令Model中依然保持清爽,在表结构变化时极速重构关联代码

    • 自动化table至Model映射

    • 自动化主键、复合主键名称识别与映射

    • 有利于分布式场景和无数据源时使用Model

    • 合体后JSP模板输出Bean中的数据将依赖其getter方法,输出的变量名即为getter方法去掉”get”前缀字符后剩下的字符首字母变小写,如果希望JSP仍然使用之前的输出方式,可以在系统启动时调用一下ModelRecordElResolver. setResolveBeanAsModel(true);

    • Controller之中的getModel()需要表单域名称对应于数据表字段名,而getBean()则依赖于setter方法,表单域名对应于setter方法去掉”set”前缀字符后剩下的字符串字母变小写。

    • 许多类似于jackson、fastjson的第三方工具依赖于Bean的getter方法进行操作,所以只有合体后才可以使用jackson、fastjson

    • 建议mysql数据表的字段名直接使用驼峰命名,这样可以令json的keyName完全一致,也可以使JSP在页面中取值时使用完全一致的属性名。注意:mysql数据表的名称仍然使用下划线命名方式并使用小写字母,方便在linux与windows系统之间移植。

    • 总之,合体后的Bean在使用时要清楚使用的是其BaseModel中的getter、setter方法还是其Model中的get(String attrName)方法

    < 5.3 Model