当前位置: 首页 > news >正文

电子商务网站建设收益公众号版网站建设

电子商务网站建设收益,公众号版网站建设,crm免费永久使用,怎样注册网络平台背景 公司要求使用磐维数据库,于是去了解了这个是基于PostgreSQL构建的,在使用时有场景一条图片数据中可以投放到不同的页面,由于简化设计就放在数组中,于是使用了text[]类型存储;表结构 #这是一个简化版表结构&…

背景

公司要求使用磐维数据库,于是去了解了这个是基于PostgreSQL构建的,在使用时有场景一条图片数据中可以投放到不同的页面,由于简化设计就放在数组中,于是使用了text[]类型存储;

表结构

#这是一个简化版表结构(id自增一般设置serial4=自增int4类型)
CREATE TABLE "public"."t_expand" ("id" int4 NOT NULL DEFAULT nextval('t_expand_id_seq'::regclass),"role_id" int4 DEFAULT NULL,"expand_role_ids" text[] COLLATE "pg_catalog"."default" DEFAULT NULL,"environment" varchar(64) COLLATE "pg_catalog"."default" DEFAULT NULL::character varying,"remark" varchar(255) COLLATE "pg_catalog"."default" DEFAULT NULL::character varying
);

实体类

@Data
public class TExpand implements Serializable {/*** 主键id*/private Integer id;/*** 角色id*/private Integer roleId;/*** 外部角色id绑定*/private List<String> expandRoleIds;/*** 环境标识*/private String environment;/*** 备注*/private String remark;private static final long serialVersionUID = 1L;
}

mybatis 配置

注意:text[]不能直接对应java的List<String>类型,故需要自己转换:
public class TextListTypeHandler extends BaseTypeHandler<List<String>> {@Overridepublic void setNonNullParameter(PreparedStatement ps, int i, List<String> parameter, JdbcType jdbcType) throws SQLException {// 将 List<String> 转换为 PostgreSQL text[] 类型Array array = ps.getConnection().createArrayOf("text", parameter.toArray());ps.setArray(i, array);}@Overridepublic List<String> getNullableResult(ResultSet rs, String columnName) throws SQLException {return toList(rs.getArray(columnName));}@Overridepublic List<String> getNullableResult(ResultSet rs, int columnIndex) throws SQLException {return toList(rs.getArray(columnIndex));}@Overridepublic List<String> getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {return toList(cs.getArray(columnIndex));}private List<String> toList(Array array) throws SQLException {if (array == null) {return null;}return Arrays.asList((String[]) array.getArray());}
}<resultMap id="BaseResultMap" type="com.domain.TExpand"><result property="id" column="id" jdbcType="INTEGER"/><result property="roleId" column="role_id" jdbcType="INTEGER"/><result property="expandRoleIds" column="expand_role_ids" jdbcType="ARRAY" javaType="java.util.List" typeHandler="com.TextListTypeHandler"/><result property="environment" column="environment" jdbcType="VARCHAR"/><result property="remark" column="remark" jdbcType="VARCHAR"/></resultMap>#在使用此参数查询时也要指定类型,否则无法匹配类型<select id="queryAllByExpandRoleIds" resultMap="BaseResultMap">select<include refid="Base_Column_List" />from t_expandwhere expand_role_ids <![CDATA[&&]]> ARRAY[<foreach item="role" collection="roles" separator=",">#{role}::text</foreach>]::text[]</select>
#插入修改也是要匹配<insert id="insertSelective">insert into t_expand<trim prefix="(" suffix=")" suffixOverrides=","><if test="id != null">id,</if><if test="roleId != null">role_id,</if><if test="expandRoleIds != null">expand_role_ids,</if><if test="environment != null">environment,</if><if test="remark != null">remark,</if></trim><trim prefix="values (" suffix=")" suffixOverrides=","><if test="id != null">#{id,jdbcType=INTEGER},</if><if test="roleId != null">#{roleId,jdbcType=INTEGER},</if><if test="expandRoleIds != null">#{expandRoleIds,jdbcType=ARRAY,typeHandler=com.TextListTypeHandler},</if><if test="environment != null">#{environment,jdbcType=VARCHAR},</if><if test="remark != null">#{remark,jdbcType=VARCHAR},</if></trim></insert>

常见问题

IllegalArgumentException: invalid comparison: java.util.ArrayList and java.lang.string] with root ca
<if test="touchCode != null and touchCode != ''" >and s.touch_code <![CDATA[&&]]> ARRAY[<foreach item="code" collection="touchCode" separator=",">#{code}::text</foreach>]::text[]
</if>
这里and touchCode != ''会影响传参应当去掉或者使用size函数
<if test="touchCode != null">
或者 
<if test="touchCode != null and touchCode.size>0"> 
http://www.yayakq.cn/news/693925/

相关文章:

  • 网站建设深圳哪里学上海企业登记网络服务平台
  • 三门峡城乡建设局网站网站如何做搜索引擎
  • 做购物网站能否生存城乡住房建设网站
  • 广州网站优化网站wordpress模板最多使用
  • 中国建设银行个人登录网站做网站怎么删除图片
  • 山西做杂粮的网站找人代做网站需要注意什么
  • 网站html5自适应秦皇岛建设局网站6
  • 一个空间可以绑定几个网站设计经典网站
  • 剪辑素材网站做系统的网站
  • 内销网站要怎么做网站建设电商学堂
  • 有关互联网网站郑州发布最新通告
  • ui设计参考网站有哪些网站建设合同百度文库
  • 西安定制网站建设wordpress教程外贸
  • 怎么自己做网站的推广高端网站建设公司排行
  • 昆明优化网站义乌官网制作网站
  • 企业网站网址举例制作app的公司有哪些
  • 连云港市建设银行网站cps推广是什么意思
  • Wordpress编辑工具重庆seo网站收录优化
  • 曲靖高端网站制作民政局网站建设方案
  • 中建西部建设广通讯网站介绍做燕窝的网站
  • 网站开发成本如何账务处理网络品牌推广策划
  • 珠海市做网站公司百度搜索引擎营销如何实现
  • 虚拟机做局域网网站服务器企业邮箱登录界面
  • 精美网站欣赏爱站网关键词挖掘查询
  • 无代码网站南昌网站开发公司
  • 三亚婚纱摄影 织梦网站源码辛集市住房和城乡建设局网站
  • 网站评论管理怎么做的网站质量需求
  • 建网站做点什么好微信公众号怎么开店
  • 站长之家工具查询企业网站的一般要素包括哪些
  • wordpress 去掉emoji惠州短视频seo