`
jicu7766240
  • 浏览: 17404 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

nutz1.b.45缓存

 
阅读更多

因个人服务器小,就一个mysql数据库,网站有点多,然后那些基本是nutz开发的,所以就加了个简单的缓存。

json配置:

 

nutDao : {

type : "org.nutz.dao.impl.NutDao",

args : [{refer:"dataSource"}]

},

cache : {

type : "org.nutz.dao.cache.CacheExecExterior",

fields : {

cacheController : [{refer : 'cacheController'}],

clazzList : [["com.scxxs.auto.model.CrudUrl",100000]

,["com.xxx.xxx.model.News",100000]

,["com.xxx.xxx.model.Type",100000]],

isEnableCache : true

}

},

cacheController : {

type : "org.nutz.dao.cache.MemeoryCacheImpl",

},

daoExecutorImpl : {

type : 

"org.nutz.dao.DaoExecutorImpl",

fields : {

list : [{refer : 'cache'}]

}

}

 

dao使用:

 

dao = ioc.get(NutDao.class);

dao.setExecutor(ioc.get(DaoExecutorImpl.class));

 

相信大家都懂了吧。嘿嘿。

就实现了在本机内存中缓存数据,要加的话,实现接口即可。

以前写的那个版本太老了。不过都是从上面复制过来的代码。凑合用着。

 

 

不好意思,没仔细测试。。

DaoExecutorImpl加个方法

 

private String toExampleStatement(Object[][] mtrx, String sql) {

        StringBuilder sb = new StringBuilder();

        String[] ss = sql.split("[?]");

        int i = 0;

        if (mtrx.length > 0) {

            for (; i < mtrx[0].length; i++) {

                sb.append(ss[i]);

                Object obj = mtrx[0][i];

                if (obj != null) {

                    if (obj instanceof Blob) {

                        Blob blob = (Blob) obj;

                        obj = "Blob(" + blob.hashCode() + ")";

                    } else if (obj instanceof Clob) {

                        Clob clob = (Clob) obj;

                        obj = "Clob(" + clob.hashCode() + ")";

                    } else if (obj instanceof byte[] || obj instanceof char[]) {

                        if (Array.getLength(obj) > 10240)

                            obj = "*BigData[len=" + Array.getLength(obj) + "]";

                    } else if (obj instanceof InputStream) {

                        try {

                            obj = "*InputStream[len=" + ((InputStream) obj).available() + "]";

                        }

                        catch (IOException e) {}

                    } else if (obj instanceof Reader) {

                        obj = "*Reader@" + obj.hashCode();

                    }

                }

                sb.append(Sqls.formatFieldValue(obj));

            }

        }

        if (i < ss.length)

            sb.append(ss[i]);

 

        return sb.toString();

    }

 

然后在传入SQL哪里修改成使用本方法即可。

0
0
分享到:
评论
3 楼 jadethao 2012-11-27  
jicu7766240 写道
jadethao 写道
真的没看明白,能说详细说说吗,谢谢!@

就是把代码复制进去,然后配置缓存的列表,原本NutDao的exector需要使用我们json里面配置的bean就可以了。

谢!
2 楼 jicu7766240 2012-11-27  
jadethao 写道
真的没看明白,能说详细说说吗,谢谢!@

就是把代码复制进去,然后配置缓存的列表,原本NutDao的exector需要使用我们json里面配置的bean就可以了。
1 楼 jadethao 2012-11-27  
真的没看明白,能说详细说说吗,谢谢!@

相关推荐

    nutz-1.b.52.zip

    Dao -- 针对 JDBC 的薄封装,事务模板,无缓存 Ioc -- JSON 风格的配置文件,声明时切片支持 Mvc -- 注解风格的配置,内置多文件上传功能 Json -- 解析和渲染 Castors -- Java 对象类型转换 Lang -- 更简洁的 Java ...

    nutz-1.b.48-manual.pdf 文档

    Nutz的Dao模块提供针对JDBC的薄封装、事务模板和无缓存支持,为数据库操作带来了便捷。Ioc模块采用JSON风格的配置文件,支持声明式切片,使得依赖注入更为简洁。Mvc模块则采用注解风格的配置,内置了多文件上传功能...

    Nutz-1.b.38

    同传统的 SSH 相比,它具备如下特点:轻 -- 当前最新版,整个 jar 文件共 910kB -- 针对 JDBC 的薄封装,无缓存全 -- 提供了 Dao (ORM, SQL 管理), Ioc, Aop, Mvc, Json解析 等必要功能活 -- 各个部分可以独立使用,...

    nutz-1.b.49-manual.pdf

    标题:"nutz-1.b.49-manual.pdf" 指出了文档是关于Nutz框架的官方手册,版本为1.b.49。手册这一名称通常意味着该文档是为用户提供详细的指导,帮助用户理解和使用该框架。 描述:"nutz 框架nutz-1.b.49-manual.pdf...

    nutz-1.b.40-manual.pdf

    1. **Dao**:提供了一个简单的JDBC封装层,支持事务管理和SQL管理,但没有实现缓存机制,这有助于提高数据库访问的速度和效率。 2. **Ioc**:使用JSON风格的配置文件进行依赖注入管理,支持声明式的切片定义,使得...

    使用Nutz[1.b.38]对数据库表的CRUD操作

    在本教程中,我们将深入探讨如何使用Nutz 1.b.38版本进行数据库表的CRUD操作。 首先,Nutz的核心组件Nutz DAO(Data Access Object)提供了与数据库交互的能力。通过简单的API,开发者可以轻松地实现对数据库的读写...

    java客户关系管理系统-CRM

    客户关系管理系统-CRM 1. 客户管理 1.1 联系管理 1.2 客户事件 ...1. Java:Nutz框架 2. 缓存:EhCache, 3. 静态模板框架:Beetl 4. 后台UI框架:B-JUI 5. 数据库:MySql 6. 后台服务器:阿里云centos6

    CRM11-BOOTSTRAP_SSM.zip

    需求描述 记录客户信息(包括级别信息,多个联系人信息) 记录公司联系客户的反馈信息 ...Java:Nutz框架 缓存:EhCache, 静态模板框架:Beetl 后台UI框架:B-JUI 数据库:MySql 后台服务器:阿里云centos6

    java开源包1

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包101

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包10

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包11

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包2

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包3

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包6

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包5

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包4

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包8

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包7

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

    java开源包9

    1. 完全透明的缓存支持,对业务代码零侵入 2. 支持使用Redis和Memcached作为后端缓存。3. 支持缓存数据分区规则的定义 4. 使用redis作缓存时,支持list类型的高级数据结构,更适合论坛帖子列表这种类型的数据 5. ...

Global site tag (gtag.js) - Google Analytics