jfinal基本应用 --报主键重复

在使用jfinal 的Model过程中有一个很怪异的问题,发布到服务器上,只要是往表中添加字段,就报主键重复。

1.我添加表的时候调用了

   public void create(Map map){
        String assocName = (String) map.get("assocName");
        String telephone = (String) map.get("telephone");
        set(COLLUMNS.ASSOC_NAME, assocName);
        set(COLLUMNS.GENDER, map.get("gender"));
        set(COLLUMNS.TELEPHONE, telephone);
        set(COLLUMNS.ASSOC_TYPE, "2");
        set(COLLUMNS.ASSOC_ID, map.get("assocId"));
        set(COLLUMNS.MODIFIED_AT, Calendar.getInstance()
                .getTime());
        super.save();
    }

这种写法是不对的,在jfinal的官方api文档中,有这么一句话注意:User User中定义的 public static final public static finalpublic static final public static final User User dao dao对象是全局共享的 对象是全局共享的 ,只能用于数据库查询, 不能用于数据承载对象 。数据承载需要 使用 new User() new User() new User() new User() new User().set( …)来实现。 来实现。

时间: 2024-08-01 02:02:01

jfinal基本应用 --报主键重复的相关文章

mysql insert 主键 重复问题

转自:http://blog.163.com/[email protected]/blog/static/173131045201222122732435/ mysql中insert into和replace into以及insert ignore用法区别: mysql中常用的三种插入数据的语句: insert into表示插入数据,数据库会检查主键,如果出现重复会报错: replace into表示插入替换数据,需求表中有PrimaryKey,或者unique索引,如果数据库已经存在数据,则用

mysql insert插入时实现如果数据表中主键重复则更新,没有重复则插入的四种方法

[CSDN下载] Powerdesigner 设计主键code不能重复等问题 [CSDN博客] Oracle中用一个序列给两个表创建主键自增功能的后果 [CSDN博客] MySQL自增主键删除后重复问题 [CSDN博客] mysql 主从复制 双主从复制原理 防止主键重复问题(必看) [CSDN博客] replace into导致mysql自增列导致主键重复问题分析 [CSDN博客] 一个循环更新某库所有表所有非主键列的值方法(sql 2005 & mysql) [CSDN博客] mysql i

mysql主键设置成auto_increment时,进行并发性能测试出现主键重复Duplicate entry 'xxx' for key 'PRIMARY'

mysql主键设置成auto_increment时,进行并发性能测试出现主键重复Duplicate entry 'xxx' for key 'PRIMARY' 解决方法: 在my.cnf的[mysqld]片段中添加设置innodb_autoinc_lock_mode=0 同时注意调大jdbc的活跃链接数,如设置 jdbc.maxActive=300,因为设置innodb_autoinc_lock_mode=0可能导致链接过多. 注意,这种方式只需要在并发性能测试时设置,因为这种方式在插入记录时需

自增列导致主键重复

有记录进行插入时,自增列产生的值就有可能与已有的记录主键冲突,导致出错.首先想办法解决问题,通过人工调大自增列的值,保证大于表内已有的主键即可,调整后,导数据正常 问题发生的前置条件: 1.mysql复制基于row模式 2.innodb表 3.表含有自增主键,并且含有唯一约束 4.load data infile 采用replace into语法插入数据[遇到重复唯一约束,直接覆盖] 问题发生的原理: 1.主库遇到重复unique约束时,进行replace操作: 2.replace在主库上面实际

JPA的坑多服务主键重复

配置如下 @Id @GeneratedValue(generator="generator") @GenericGenerator(name="generator",strategy="increment") @Column(name = "id") public Long getId() { return id; } 问题就 出在这 由Hibernate从数据库中取出主键的最大值(每个session只取1次),以该值为基础,

分布式部署应用时主从同步时候主键重复

原因: 解决方法: 用redis生成主键 /** * * @Title: getContractId * @user: zzx * @time: 2016年11月15日下午5:36:15 * //DESC 获取订单ID * @param param step:步长 * @return 当前分布式环境下最新ID * @return String 返回类型 * @throws */ public String getContractId(JSONObject param){ int step = p

lucene 解决主键重复

比如有两条记录Document0:                 id:1   pk                content :hello Document1:                 id :1  pk               content :hello world建立索引用ik分词,建立索引 搜索content 会出现两条记录 解决:使用 QueryFilter进行搜索过滤 Query query = new TermQuery(new Term("content&qu

hibernate联合主键不便之处(转)

在使用hibernate的联合主键时有以下几个需要注意的问题: 1.首先就是映射文件中联合主键的写法, 例子: Java代码   <composite-id name="sid" class="cn.test.po.IpAndSubphoneId"> <key-property name="ip" type="java.lang.String"> <column name="IP&quo

SQL多个主键的表,插入数据有重复时,查询数据的重复值?

SQL多个主键的表,插入数据有重复时,会提示违反主键约束不能插入的错误.那么,如何找到插入数据的重复值? 解决方法:使用group by 假设有个表#a,有saleid,vendorid,comid,price,saleprice,quantity等字段. 主键是:saleid,vendorid,comid三个.假设插入#a的数据源可能会有重复的. 即:saleid,vendorid,comid三个字段都一样的字段,那么插入#a的时候会报主键冲突,违反主键约束. 如果想找出#a表中插入重复的值可