美文网首页
JavaWeb电商项目笔记(七、mybatis-generato

JavaWeb电商项目笔记(七、mybatis-generato

作者: 鲁克巴克诗 | 来源:发表于2017-05-20 17:57 被阅读90次

    一、mybatis-generator生成数据对象

    确保mybatis的generatorConfig.xml配置文件和datasource.properties文件都没有问题。
    双击右侧已经下载安装好的mybatis-generator插件下的generate命令。

    Paste_Image.png

    这时下方运行窗口会输出【BUILD SUCCESS】,如图:

    Paste_Image.png

    这时左侧的项目结构:

    • 在dao包下会多出对应数据表的各种增删改查API;
    • pojo包下会多出和数据库表对应的对象;
    • 在resources目录下会多出mappers包,包下是与dao层接口相对应的实现xml文件,每个xml对应一个数据库表接口。
    Paste_Image.png Paste_Image.png

    现在以Cart表为例,依次截图:
    pojo:

    Paste_Image.png

    dao:

    Paste_Image.png

    mappers:

    Paste_Image.png

    以上就是mybatis-generator插件执行后所自动生成的内容。大大方便了我们程序员开发。在此给mybatis团队一个大大的赞!

    二、时间戳优化

    之前我在建数据库的时候,为每个表创建了【create_time】和【update_time】字段,其中【create_time】是这条记录被创建的时间,而【update_time】是这条记录被更新的时间。这两个字段,是业界普遍公认的良好做法,当我们在查一些线上的业务逻辑问题的时候,这两个字段能够帮助我们快速锁定问题点,是非常非常有用的!

    那么,因为这两个字段不可或缺,但作为程序员,我们并不希望每次进行数据库的插入还要特地关注这两个字段,未免太繁琐了。最好是,我们不在业务上关注这两个字段,而是数据库能自动在我们每次插入数据的时候更新它们。所以呢,接下来,就让数据库来帮助我们解决这个问题吧。

    以mappers包下的CartMapper.xml为例:
    找到创建和更新的sql。

    • 创建的sql
    Paste_Image.png

    将原先的create_time和update_time对应的value,改成mysql内置的获取当前时间函数now()。如下图:

    Paste_Image.png

    同理,其他的insert也这么改。

    • 更新的sql
    Paste_Image.png

    因为是更新,所以我们只需要让数据库更改update_time字段就可以了,create_time不用管。

    同理,其他的update也这么改。

    相关文章

      网友评论

          本文标题:JavaWeb电商项目笔记(七、mybatis-generato

          本文链接:https://www.haomeiwen.com/subject/ndtpxxtx.html