数据库ORM框架
Mybatis, Hibernate等等
Tom098
工作20年的IT老鸟,做过开发,也做过技术支持,丰富操作系统、网络等IT infurstructure 方面实战经验。精通Java/J2EE技术体系以及Linux下用户空间c编程。下一步该如何走? AI、大数据?
展开
-
JPA 主键ID生成策略
在定义Entity的ID字段时,我们可以使用@GeneratedValue注解指定以何种方式生成数据库的主键ID的值。有几种策略:1. 默认情况下,是自动生成策略。比如下边两种方式效果是一样的。如果使用的是Springboot JPA Data, 那hibernate会自动帮我们创建一个Sequence,然后通过该Sequence,为所有生成策略是Auto的表使用该Sequence,也就是多个表共享一个Sequence。@Entitypublic class Student { @原创 2022-03-25 12:59:58 · 4948 阅读 · 0 评论 -
jackson fast xml 从xml中读取时间
jackson fast xml 从xml中读取时间信息时,java class时间字段使用LocalDateTime,而不是用java.sql.TimeStamp,测试中发现如果使用java.sql.TimeStamp, jackson fast xml会将从xml中读取的不带失去的时间字符串转换成本地时区的TimeStamp,而如果使用java8的LocalDateTime,就不会存在这个问题。...原创 2022-03-08 11:09:58 · 868 阅读 · 0 评论 -
postgresql创建database, schema,用户以及权限分配
postgresql支持schema的概念,一个数据库下可以有多个schema,每个schema可以有多个表和其他数据库对象,然后每个schema可以分配给一个用户。这个时候,schema根oracle数据库的schema的概念比较像。但是对于mysql,没有类似于oracle数据库schema的概念,postgresql又提供了一个public schema概念,默认建库之后,建表时如果不指定schema,默认都是建到这个默认public schema下。postgresql就是通过这种方式保证了原创 2022-02-17 11:34:04 · 4428 阅读 · 0 评论 -
mybatis useGeneratedKeys
在insert数据时,如果需要在插入数据时,同时返回刚插入的这条数据的自增主键的值,可以设置这个参数为true。注意不是insert(Object obj)接口方法返回的值是key id, 而是传给insert方法的对象中的id 属性会被自动赋值。insert()方法始终返回的受影响的行数。Note: 如果数据库是mysql, 主键是自增的, 在mybatis中不需要做任何特殊配制以表明该字段是自增的,不需要人为设置。对于oracle, 如果使用序列来生成主键,可能需要写如下的sql:inser原创 2022-01-17 10:39:21 · 1018 阅读 · 0 评论 -
ORM中,实体类属性类型不能是int类型
在写一个基于springboot和dubbo的电商后台项目,前端根据某个表的字段(实体类的属性)查询时,在controller端,总是报如下错误。java.lang.RuntimeException: tk.mybatis.mapper.MapperException: 当前实体类不包含名为catalog3Id的属性!tk.mybatis.mapper.MapperException: 当...原创 2019-11-14 22:54:26 · 772 阅读 · 0 评论 -
Mybatis - resultMap的使用
这篇文章总结的很好。一段时间不用,总忘。https://www.cnblogs.com/pjfmeng/p/7692520.html转载 2019-11-20 08:53:18 · 118 阅读 · 0 评论 -
Mybatis #和$获取参数值的区别以及@param的使用场景
Mybatis 中$与#的区别1 #是将传入的值当做字符串的形式,eg:select id,name,age from student where id =#{id},当前端把id值1,传入到后台的时候,就相当于select id,name,age from student where id ='1'.2 $是将传入的数据直接显示生成sql语句,eg:select id,name,ag...原创 2019-12-04 10:53:21 · 3682 阅读 · 2 评论