- 浏览: 414661 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (114)
- C++ (1)
- JAVA (58)
- sql,oracle,mysql (7)
- struts (2)
- tomcat (6)
- JS CSS (6)
- 其他 (7)
- javascript (4)
- exception (1)
- error (1)
- hashmap (1)
- hashset (1)
- python (1)
- sql (2)
- oracle (4)
- mysql (2)
- weblogic (3)
- session (2)
- http-only-cookie (1)
- httponly (1)
- cookie (1)
- ide (0)
- intellij (1)
- eclipse (2)
- idea (1)
- connection (2)
- maven (4)
- m2eclipse (2)
- m2e (2)
- InetAddress (1)
- DNS (1)
- web (1)
- goals (1)
- copy-dependencies (1)
- unpack (1)
- hash (1)
- 分布式 (1)
- gc (4)
- volatile (1)
- rsa (1)
- 加密 (1)
- 签名 (1)
- socket (1)
- tcp (1)
最新评论
-
xuxiaoyinliu:
谢谢,不错哦
有关cookie的httponly属性相关 -
雁行:
svn根本就不需要这么罗嗦的实现。
版本比较,直接出增量文件, ...
ant+cvs实现增量部署 -
ludatong110:
这个东西在IE里面会很明显的,我就碰到过IE中因为这个HTML ...
有关jqGrid应用里的字体大小不能控制的问题 -
labchy:
非常感谢 解决了问题
有关jqGrid应用里的字体大小不能控制的问题 -
tengyue5i5j:
Crusader 写道竟然有这么多人投良好。。。
楼主的思路有 ...
java实现一个栈,并提供取该栈中最大数的方法,复杂度O(1)
首先声明:该文章 参照了http://www.iteye.com/topic/674839 matychen 的文章,修改了一下ibator的工作方式,实际分页的原理还是一样的,支持oracle,mysql , 如果涉及侵犯matychen的利益,请告知,我立即删除
/** * * @author coffeesweet * */ Ibator支持分页的plugin式的开发步骤 1:所涉及到修改的类列表: org.apache.ibatis.ibator.generator.ibatis2.sqlmap.elements目录下所有的类里给attribute属性的id修改成如下:
其他修改和添加的类 org.apache.ibatis.ibator.generator.ibatis2.sqlmap.elements---OraclePaginationHeadGenerator org.apache.ibatis.ibator.generator.ibatis2.sqlmap.elements---OraclePaginationTailGenerator org.apache.ibatis.ibator.generator.ibatis2.sqlmap.elements---MysqlPaginationLimitGenerator org.apache.ibatis.ibator.generator.ibatis2.model---ExampleGenerator org.apache.ibatis.ibator.api.dom.java---FullyQualifiedJavaType FullyQualifiedTable table = introspectedTable.getFullyQualifiedTable();
answer.addAttribute(new Attribute("id", table.getSqlMapNamespace() + "."+XmlConstants.INSERT_STATEMENT_ID));
org.apache.ibatis.ibator.api.dom.xml.XmlElement添加了四个方法,主要用于对xxxx_SqlMap.xml的元素删除和修改
这个是添加的plugin类
org.apache.ibatis.ibator.plugins.PaginationPlugin
以上所有修改的类搜索“增加开始”或者“增加结束”就能找到修改的地方
2:示例ibatorConfig.xml文件
一定要注意该xml的元素顺序 <classPathEntry标签的位置在<ibatorConfiguration>子元素的第一个位置 ibatorContext 的子元素顺序是 (property*, ibatorPlugin*, commentGenerator?, jdbcConnection, javaTypeResolver?, javaModelGenerator, sqlMapGenerator, daoGenerator?, table+) 所以需要注意ibatorPlugin的位置,还有,如果有多个plugin的话,加入第一个的validate失败,那么余下的所有plugin都不执行了 还要注意ibatorPlugin的两个必要属性 <property name="enablePagination" value="true" /> <property name="dbType" value="oracle" /> 示例ibatorConfig.xml <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE ibatorConfiguration PUBLIC "-//Apache Software Foundation//DTD Apache iBATIS Ibator Configuration 1.0//EN" "http://ibatis.apache.org/dtd/ibator-config_1_0.dtd" > <ibatorConfiguration> <classPathEntry location="oracle驱动的本地绝对路径" /> <ibatorContext id="context1" targetRuntime="Ibatis2Java5"> <!-- <ibatorPlugin type="org.apache.ibatis.ibator.plugins.RenameExampleClassPlugin"> <property name="searchString" value="Example$" /> <property name="replaceString" value="Criteria" /> </ibatorPlugin> --> <ibatorPlugin type="org.apache.ibatis.ibator.plugins.PaginationPlugin"> <property name="enablePagination" value="true" /> <property name="dbType" value="oracle" /> </ibatorPlugin> <!-- <ibatorPlugin type="org.apache.ibatis.ibator.plugins.SerializablePlugin"></ibatorPlugin> --> <jdbcConnection driverClass="oracle.jdbc.driver.OracleDriver" connectionURL="jdbc:oracle:thin:@*.*.*.*:1521:**" userId="**" password="**" /> <javaTypeResolver> <property name="forceBigDecimals" value="false" /> </javaTypeResolver> <javaModelGenerator targetPackage="com.mydomain.model" targetProject="src"> <property name="enableSubPackages" value="false" /> <property name="trimStrings" value="false" /> </javaModelGenerator> <sqlMapGenerator targetPackage="com.mydomain.xml" targetProject="src"> <property name="enableSubPackages" value="false" /> </sqlMapGenerator> <daoGenerator type="SPRING" targetPackage="com.mydomain.dao" targetProject="src"> <property name="enableSubPackages" value="false" /> </daoGenerator> <table tableName="CC_TEST1" domainObjectName="Customer"> <!-- columnOverride column="???" property="???" / --> </table> </ibatorContext> </ibatorConfiguration> 3:以下是ibator的java启动模式,用来测试
4:附件是ibator的修改后的源码(包括spring的lib)和jar包,以及测试case 源码里的有关数据连接信息的东西请自行修改 测试用到了spring ibator.jar可直接拿到工程中使用 package org.apache.ibatis.ibator.test;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
import org.apache.ibatis.ibator.api.Ibator;
import org.apache.ibatis.ibator.config.IbatorConfiguration;
import org.apache.ibatis.ibator.config.xml.IbatorConfigurationParser;
import org.apache.ibatis.ibator.internal.DefaultShellCallback;
public class IbatorRunTest {
public static void main(String...strings){
try{
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File(ClassLoader.getSystemResource("ibatorConfig.xml").getFile());
// File configFile = new File("ibatorConfig.xml");
IbatorConfigurationParser cp = new IbatorConfigurationParser(warnings);
// for(String warning:warnings){
// System.out.println("1---:"+warning);
// }
IbatorConfiguration config = cp.parseIbatorConfiguration(configFile);
DefaultShellCallback callback = new DefaultShellCallback(overwrite);
Ibator ibator = new Ibator(config, callback, warnings);
ibator.generate(null);
for(String warning:warnings){
System.out.println("2---:"+warning);
}
}catch(Exception ex){
ex.printStackTrace();
}
}
}
- ibator.jar (296.6 KB)
- 下载次数: 410
- ibator-src.zip (8.4 MB)
- 下载次数: 583
评论
困惑的是,这种方式和我手写的sql分页是一样的吗?
今天比较困惑那种的效率高点。
this.smcTemplate.queryForList("find...", map,start,limit);(打印出来的好像是直接写的sql,并没有输入的分页参数)
还是嵌套的分页效率高?
请人解释一下。
<div class="quote_div">
<div class="quote_title">
<strong>请继续更新,</strong><span style="font-weight: normal;"><img src="/images/smiles/icon_biggrin.gif" alt=""></span> </div>
<div class="quote_title">你这个貌似更方便一点。</div>
<div class="quote_title">刚刚看了下你的代码,不知道这个是不是为了配置方便,只在一个地方配置一次就能把所有的表都用一个分页?</div>
<div class="quote_title">能说下用法吗?</div>
</div>
<p> </p>
<p>呵呵,你原来是把分页控制配置在了<span style="color: #333399;"><table</span>里,就像你说的ibator的xml验证会报错,我现在是把分页信息统一配置在<span style="font-size: x-small; color: #3f5fbf;"><ibatorPlugin <span style="color: #000000;">里,这个标签是可以自定义属<span style="font-size: small;">性的,ibator的dtd也支持,配置了这个以后,如果有多个<table的话,他们生成的Example类里都会包含分页信息的.</span></span></span></p>
<p><span style="font-size: small;">你可以把附件的ibator.jar替换你的ibator的eclipseplugin里,或者是直接在工程里加入ibator.jar,然后运行我给的IbatorRunTest 类生成相关class和XXX_sqlMap.xml</span></p>
<p> </p>
<p><span style="font-size: small;">其实就是借鉴你的思路,我照抄修改了一下</span></p>
<div class="quote_title">刚刚看了下你的代码,不知道这个是不是为了配置方便,只在一个地方配置一次就能把所有的表都用一个分页?</div>
<div class="quote_title">能说下用法吗?</div>
发表评论
-
【Java TCP/IP Soket】— 消息边界的问题解决
2015-08-11 09:47 1375转自:http://blog.csdn.net/ ... -
java中volatile解释
2015-05-28 16:28 690http://www.cnblogs.com/aigongs ... -
Java中的substring真的会引起内存泄露么?
2015-05-27 13:18 858转: http://droidyue.com/blog/ ... -
成为Java GC专家(4)—Apache的MaxClients参数详解及其在Tomcat执行FullGC时的影响
2015-05-27 12:24 576转:http://www.importnew.com ... -
成为Java GC专家(3)—如何优化Java垃圾回收机制
2015-05-27 12:23 744转:http://www.importnew.com ... -
成为JavaGC专家(2)—如何监控Java垃圾回收机制
2015-05-27 12:20 594转:http://www.importnew.com ... -
成为JavaGC专家(1)—深入浅出Java垃圾回收机制
2015-05-27 12:16 479转:http://www.importnew.com ... -
《深入分析Java Web技术内幕》-样章示图总结
2013-01-17 11:46 1273试读完本书的样章章节后,感受颇深,其实单从样 ... -
eclipse中(装了插件m2eclipse后的)导入maven工程显示"感叹号"
2013-01-15 16:02 7333有时候导入一些开源工程(maven结构的),在 ... -
(转)分析模式 之 参与者(Party)
2012-10-22 16:39 896在我们分析模型的时 ... -
(转)java.sql.SQLException: (无法从套接字获取更多数据)数据大小超出此类型的最大值
2012-10-22 16:38 5459转至:http://linwei-211.i ... -
有关hashmap,hashset的相关总结
2011-09-16 17:32 3012这篇转自http://hi.baidu.com ... -
有关JAVA异常和错误(ERROR)的处理
2011-09-15 20:41 19109最近遇到有关ERROR的处理问题,下面这篇文章 转至: ... -
XFire 、Axis2、CXF、JWS、java6 区别 (转)
2011-06-13 22:50 1882XFire VS AxisXFire是与Axis2 并列的 ... -
转载[Connection reset,Connection reset by peer,Software caused connection abort :]
2011-06-08 13:16 9925Connection reset,Connection ... -
java实现一个栈,并提供取该栈中最大数的方法,复杂度O(1)
2011-06-07 15:18 2076记得是哪个面试题里的,这里只想到一个简单的方法,大家看看 ... -
Listener Servlet和filter的应用
2011-05-16 22:21 844下面这段话是小总结: Listener是Ser ... -
转载【有关JSP中的转发和重定向用法】
2011-05-15 19:05 1704转自: http://blog.csdn.net/cyhjr ... -
转载【Java对象的强、软、弱和虚引用】
2011-05-13 22:47 8441.Java对象的强、软、弱和虚引用 在JDK 1.2以 ... -
有关JNDI的理解
2011-04-14 11:22 912JAVA EE规范里的jndi是为了解决下面两个问题: ...
相关推荐
NULL 博文链接:https://guoba6688-sina-com.iteye.com/blog/1098212
直接丢到eclipse的plugins目录下就可以了,在一些公司下载不了的地方,方便使用
iBATOR is a code generator for iBATIS.
eclipse的集成插件,ibator.jar,可以直接mybatis导表,图形化展示,简单易用,直接放到eclipse的plugin文件夹下即可
Ibator can run as a standalone JAR file, or as an Ant task, or as an Eclipse plugin. 欲了解更多详细说明,敬请移步:http://blog.csdn.net/DavidHsing/archive/2010/07/12/5729027.aspx
ibator插件优化的jar包,安装完ibator后,将eclipse\plugins\org.apache.ibatis.ibator.core_1.2.1下的jar包替换即可。
ibator1.2.2多了点功能,具体可以百度,重新编译了下,生成注释去掉了
ibator教学视频,手把手教你使用ibator
在myelipse7.5中安装ibator插件的方法与安装一般插件的方法是一致的,有以下2种方式(个人推荐使用手动安装方式,避免网络等原因造成安装不成功): 1. 手动安装方式 将邮件中附件的Ibator插件压缩文件IbatorForEclipse...
eclipse的ibatis代码生成器,最新版ibator 1.2.1
ibator相对于hibernate框架能完全自主编写sql代码,同时又有hibernate便于管理的优点,是非常理想的持久层技术
做SSI项目时,Ibator映射出来的内容实在太多了,有很多内容都用不上,参考Ibator的结构,实现对基本字段和方法的映射!
自动生成dto\dao\xml 自带批处理自动生成程序
此项目通过对ibator的改造,通过执行cmd命令自动生成sql与Dao,大大提高开发效率
使用数据库的注释,不用自带的注释 http://blog.csdn.net/tiantangpw/article/details/43489817 运行命令 java -jar ibator.jar -configfile ibatorConfig.xml -overwrite >>ibator.log
ibator-config_1_1.dtd ibator用
Ibatis 生成器 Ibator 的 API 文档
ibator插件+ibatorConfig文件,加入到eclipse中,按照配置文件修改一下就ok了
ibatis 配置文件自动生成工具
去除了注释、去除Example方法及去除生成的id前面的“ibatorgenerated_”