Package com.jfinal.plugin.activerecord

Examples of com.jfinal.plugin.activerecord.Table


    }
  }
 
  @SuppressWarnings("rawtypes")
  private static final void injectActiveRecordModel(Model<?> model, String modelName, HttpServletRequest request, boolean skipConvertError) {
    Table table = TableMapping.me().getTable(model.getClass());
   
    String modelNameAndDot = modelName + ".";
   
    Map<String, String[]> parasMap = request.getParameterMap();
    for (Entry<String, String[]> e : parasMap.entrySet()) {
      String paraKey = e.getKey();
      if (paraKey.startsWith(modelNameAndDot)) {
        String paraName = paraKey.substring(modelNameAndDot.length());
        Class colType = table.getColumnType(paraName);
        if (colType == null)
          throw new ActiveRecordException("The model attribute " + paraKey + " is not exists.");
        String[] paraValue = e.getValue();
        try {
          // Object value = Converter.convert(colType, paraValue != null ? paraValue[0] : null);
View Full Code Here


    private static final String FILTER_PREFIX = "f_";

    @SuppressWarnings("rawtypes")
    public static Page populate(PageInfo pageInfo, PageInfoInterceptor pageInfoInterceptor) {
        Class<? extends Model<?>> model = pageInfoInterceptor.model();
        Table tableinfo = TableMapping.me().getTable(model);
        Map<String, Class<?>> columnTypeMap = Reflect.on(tableinfo).get("columnTypeMap");
        String select = "select ";
        if (StrKit.isBlank(pageInfoInterceptor.columns())) {
            Set<String> set = columnTypeMap.keySet();
            for (String item : set) {
                select += item + ",";
            }
            if (!pageInfoInterceptor.relations().isEmpty()) {
                for (RelationInfo relation : pageInfoInterceptor.relations()) {
                    Class<? extends Model<?>> modelClass = relation.getModel();
                    Table relationTableinfo = TableMapping.me().getTable(modelClass);
                    Map<String, Class<?>> relationColumnTypeMap = Reflect.on(relationTableinfo).get("columnTypeMap");
                    set = relationColumnTypeMap.keySet();
                    // 如果设置了前缀表明或者字段冲突的时候
                    for (String item : set) {
                        if (pageInfoInterceptor.useColumnLabel()
View Full Code Here

    @SuppressWarnings("rawtypes")
    public static int[] batchSave(List<? extends Model> data, int batchSize) {
        Model model = data.get(0);
        Map<String, Object> attrs = Reflect.on(model).field("attrs").get();
        Class<? extends Model> modelClass = model.getClass();
        Table tableInfo = TableMapping.me().getTable(modelClass);
        StringBuilder sql = new StringBuilder();
        List<Object> paras = Lists.newArrayList();
        DbKit.getConfig().getDialect().forModelSave(tableInfo, attrs, sql, paras);
        Object[][] batchPara = new Object[data.size()][attrs.size()];
        for (int i = 0; i < data.size(); i++) {
View Full Code Here

    }

    public static int hashCode(Model<?> model) {
        final int prime = 31;
        int result = 1;
        Table tableinfo = TableMapping.me().getTable(model.getClass());
        Set<Entry<String, Object>> attrsEntrySet = model.getAttrsEntrySet();
        for (Entry<String, Object> entry : attrsEntrySet) {
            String key = entry.getKey();
            Object value = entry.getValue();
            Class<?> clazz = tableinfo.getColumnType(key);
            if (clazz == Integer.class) {
                result = prime * result + (Integer) value;
            } else if (clazz == Short.class) {
                result = prime * result + (Short) value;
            } else if (clazz == Long.class) {
View Full Code Here

        if (obj == null)
            return false;
        if (model.getClass() != obj.getClass())
            return false;
        Model<?> other = (Model<?>) obj;
        Table tableinfo = TableMapping.me().getTable(model.getClass());
        Set<Entry<String, Object>> attrsEntrySet = model.getAttrsEntrySet();
        for (Entry<String, Object> entry : attrsEntrySet) {
            String key = entry.getKey();
            Object value = entry.getValue();
            Class<?> clazz = tableinfo.getColumnType(key);
            if (clazz == Float.class) {
            } else if (clazz == Double.class) {
            } else if (clazz == Model.class) {
            } else {
                if (value == null) {
View Full Code Here

    @Override
    public boolean save() {
        for (CallbackListener callbackListener : callbackListeners) {
            callbackListener.beforeSave(this);
        }
        Table tableInfo = TableMapping.me().getTable(clazz);
        if (pseudoDelete()) {
            if (!tableInfo.hasColumnLabel(deleteColumnLabel)) {
                throw new ActiveRecordException("The deleteColumnLabel (" + deleteColumnLabel + ") is not exist");
            }
            this.set(deleteColumnLabel, 0);
        }
        boolean result = super.save();
View Full Code Here

        return result;
    }

    @Override
    public boolean delete() {
        Table tableInfo = TableMapping.me().getTable(clazz);
        for (CallbackListener callbackListener : callbackListeners) {
            callbackListener.beforeDelete(this);
        }
        boolean result = false;
        if (pseudoDelete()) {
            if (!tableInfo.hasColumnLabel(deleteColumnLabel)) {
                throw new ActiveRecordException("The deleteColumnLabel (" + deleteColumnLabel + ") is not exist");
            }
            this.set(deleteColumnLabel, 1);
            result = this.update();
        } else {
View Full Code Here

    }

    @Override
    public boolean deleteById(Object id) {
        Table tableInfo = TableMapping.me().getTable(clazz);
        for (CallbackListener callbackListener : callbackListeners) {
            callbackListener.beforeDelete(this);
        }
        boolean result = false;
        if (pseudoDelete()) {
            if (!tableInfo.hasColumnLabel(deleteColumnLabel)) {
                throw new ActiveRecordException("The deleteColumnLabel (" + deleteColumnLabel + ") is not exist");
            }
            String pKey = tableInfo.getPrimaryKey();
            if (id == null)
                throw new ActiveRecordException("You can't update model without Primary Key.");
            String sql = "update "+tableInfo.getName()+" set "+deleteColumnLabel+" = 1 where "+pKey+" = ?";
            result = Db.update(sql,id)>=1;
        } else {
            result = super.deleteById(id);
        }
        for (CallbackListener callbackListener : callbackListeners) {
View Full Code Here

    public int deleteByColumns(List<String> columns, List<Object> values) {
        Preconditions.checkArgument(columns.size() > 0, "columns is empty");
        Preconditions.checkArgument(values.size() > 0, "values is empty");
        Preconditions.checkArgument(values.size() == columns.size(), "column size != values size");
        String sql="";
        Table tableInfo = TableMapping.me().getTable(clazz);
        if (pseudoDelete()) {
            if (!tableInfo.hasColumnLabel(deleteColumnLabel)) {
                throw new ActiveRecordException("The deleteColumnLabel (" + deleteColumnLabel + ") is not exist");
            }
            String pKey = tableInfo.getPrimaryKey();
            sql+= "update "+tableInfo.getName()+" set "+deleteColumnLabel+" = 1";
        }else{
            sql+= "delete from " + tableInfo.getName() ;
        }
        sql+=" where 1=1";
        for (String column : columns) {
            sql += " and " + column + " = ?";
        }
View Full Code Here

    }
  }
 
  @SuppressWarnings("rawtypes")
  private static final void injectActiveRecordModel(Model<?> model, String modelName, HttpServletRequest request, boolean skipConvertError) {
    Table table = TableMapping.me().getTable(model.getClass());
   
    String modelNameAndDot = modelName + ".";
   
    Map<String, String[]> parasMap = request.getParameterMap();
    for (Entry<String, String[]> e : parasMap.entrySet()) {
      String paraKey = e.getKey();
      if (paraKey.startsWith(modelNameAndDot)) {
        String paraName = paraKey.substring(modelNameAndDot.length());
        Class colType = table.getColumnType(paraName);
        if (colType == null)
          throw new ActiveRecordException("The model attribute " + paraKey + " is not exists.");
        String[] paraValue = e.getValue();
        try {
          // Object value = Converter.convert(colType, paraValue != null ? paraValue[0] : null);
View Full Code Here

TOP

Related Classes of com.jfinal.plugin.activerecord.Table

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.