hibernate是如何生成sql语句的

比如就那保存操作来说,给一条程序运行时由hibernate产生的sql语句:
insert into t_api_access_log
(accessTime, apiID, apiName, cost, createTime, resultCode, returnCnt, userID, userName, id)
values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
上面的sql语句中 id字段为什么会在最后边?而不是在第一个位置?到底是如何生成这条sql语句的?(是根据实体类的属性顺序么?)

我想应该是根据在bean里面控制表字段生成的顺序,检查一下你的配置文件,希望能帮到你。

跟实体类的顺序没有关系的。你调整一下hbm.xml和数据库里面的字段的顺序吧。

若是注解方式的话,顺序是由实体类定义决定的