- 浏览: 125149 次
- 性别:
- 来自: 上海
最新评论
-
暗蓝幽谷:
还有,如果是IE,记得在debug的时候清缓存。Firefox ...
JSP中引用js文件无效 -
lusx:
可是你上传的附件是什么东东哦!
小程序测试Mysql 和access数据库性能,引发了一些问题,寻求解决。 -
lusx:
我也遇到了这个问题。
小程序测试Mysql 和access数据库性能,引发了一些问题,寻求解决。 -
Listen_ing:
运行没反应,不知道怎么回事
在jsp中使用ajax技术示例:验证用户是否存在 -
java-xb:
自己顶一个,没人发表一下言论
小程序测试Mysql 和access数据库性能,引发了一些问题,寻求解决。
第一种是没有参数的查询分页处理
后台代码如下:
前台代码如下
另一种情况是在查询时有参数的分页处理
本人使用的是Hibernate+struts+Map技术来处理带N个参数的查询
利用struts里面的<html:link name="map" paramId="参数名" paramName="变量名" paramProperty="变量属性"></html:link>
通过这个可以传递N个参数,
基础类如下:
映射文件如下
Action类如下:
前台页面 list.jsp
分页处理工具:
本人也是菜鸟希望多多指教,或有什么好的见解,完全可以发表评论。
后台代码如下:
public ActionForward execute(ActionMapping mapping ,ActionForm actionForm,HttpServletRequest request,HttpServletResponse response)throws Exception { int pageSize = 3; //定义每页显示记录数量 int currentPage; //定义当前页 String pageNoStr =request.getParameter("page"); //获取当前页码 if(pageNoStr == null || pageNoStr.trim().equals("")){ currentPage = 1; } try{ currentPage = Integer.parseInt(pageNoStr.trim()); } catch(Exception e){ currentPage = 1; } List<Yctsjl> list = yctsjlService.findByParameter(currentPage,pageSize); //业务逻辑 ,实现分页 int count = yctsjlService.getCount(bdzmc, beginDate, endDate); //总的记录条数 int pageCount =yctsjlService.getPageCount(count,pageSize);//获取总页数 request.setAttribute("yctsjlList", list); request.setAttribute("currentPage",currentPage); request.setAttribute("count",count); request.setAttribute("pageCount" ,pageCount); return mapping.findForward("list"); }
前台代码如下
list.jsp <%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%> <%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> <%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> <%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <title>登录页面</title> <link rel="stylesheet" href="<%=request.getContextPath() %>/css/base1.css" type="text/css" > </head> <body> <br> <table width="470" align="center"> <tr align="center" class="style6"> <td> 总共<font color="red"><bean:write name="count"/></font>条记录 第<font color="red"><bean:write name="currentPage" /></font>页 共<font color="red"><bean:write name="pageCount" /></font>页 </td> <% if(((Integer)request.getAttribute("pageCount")==1)||((Integer)request.getAttribute("currentPage")==1)){%> <td align="center" >首页</td> <td valign="top"><br></td> <td valign="top"><br></td><td align="center">上一页</td> <%}else{ %> <td align="center"> <a href="<%=request.getContextPath() %>/jsp/xtwh/list.do?action=listUser&page=1">首页</a> </td> <td valign="top"><br></td> <td valign="top"><br></td> <td align="center"> <a href="<%=request.getContextPath() %>/jsp/xtwh/list.do?action=listUser&page=<%=(Integer)request.getAttribute("currentPage")-1 %>">上一页</a> </td> <%} %> <% if((Integer)request.getAttribute("pagesNum")==1||((Integer)request.getAttribute("currentPage")>=(Integer)request.getAttribute("countPage"))){%> <td align="center">下一页</td> <td valign="top"><br></td><td valign="top"><br></td> <td align="center">尾页</td> <%}else{ %> <td align="center"> <a href="<%=request.getContextPath() %>/jsp/xtwh/list.do?page=<%=(Integer)request.getAttribute("currentPage")+1%>">下一页</a> </td> <td align="center"> <a href="<%=request.getContextPath() %>/jsp/xtwh/list.do?pageNum=<%=(Integer)request.getAttribute("pagesNum") %>">尾页</a> </td> <%} %> <tr> </table> </body> </html>
另一种情况是在查询时有参数的分页处理
本人使用的是Hibernate+struts+Map技术来处理带N个参数的查询
利用struts里面的<html:link name="map" paramId="参数名" paramName="变量名" paramProperty="变量属性"></html:link>
通过这个可以传递N个参数,
基础类如下:
package cn.com.model; import java.util.Date; /** * Yctsjl generated by MyEclipse Persistence Tools */ public class Yctsjl implements java.io.Serializable { // Fields private Long id; private Long mxdydj; private Long bdzid; private String bphyy; private String sfzcyc; private String ycsfxc; private Date ycfsrq; private Date ycxcrq; private String bz1; private String bz2; private String bz3; private Long hzjlid; private String bdzmc; // Constructors /** default constructor */ public Yctsjl() { } /** full constructor */ public Yctsjl(Long mxdydj, Long bdzid, String bphyy, String sfzcyc, String ycsfxc, Date ycfsrq, Date ycxcrq, String bz1, String bz2, String bz3, Long hzjlid, String bdzmc) { this.mxdydj = mxdydj; this.bdzid = bdzid; this.bphyy = bphyy; this.sfzcyc = sfzcyc; this.ycsfxc = ycsfxc; this.ycfsrq = ycfsrq; this.ycxcrq = ycxcrq; this.bz1 = bz1; this.bz2 = bz2; this.bz3 = bz3; this.hzjlid = hzjlid; this.bdzmc = bdzmc; } // Property accessors public Yctsjl(Long mxdydj, Long bdzid, String bphyy) { super(); this.mxdydj = mxdydj; this.bdzid = bdzid; this.bphyy = bphyy; } public Long getId() { return this.id; } public void setId(Long id) { this.id = id; } public Long getMxdydj() { return this.mxdydj; } public void setMxdydj(Long mxdydj) { this.mxdydj = mxdydj; } public Long getBdzid() { return this.bdzid; } public void setBdzid(Long bdzid) { this.bdzid = bdzid; } public String getBphyy() { return this.bphyy; } public void setBphyy(String bphyy) { this.bphyy = bphyy; } public String getSfzcyc() { return this.sfzcyc; } public void setSfzcyc(String sfzcyc) { this.sfzcyc = sfzcyc; } public String getYcsfxc() { return this.ycsfxc; } public void setYcsfxc(String ycsfxc) { this.ycsfxc = ycsfxc; } public Date getYcfsrq() { return this.ycfsrq; } public void setYcfsrq(Date ycfsrq) { this.ycfsrq = ycfsrq; } public Date getYcxcrq() { return this.ycxcrq; } public void setYcxcrq(Date ycxcrq) { this.ycxcrq = ycxcrq; } public String getBz1() { return this.bz1; } public void setBz1(String bz1) { this.bz1 = bz1; } public String getBz2() { return this.bz2; } public void setBz2(String bz2) { this.bz2 = bz2; } public String getBz3() { return this.bz3; } public void setBz3(String bz3) { this.bz3 = bz3; } public Long getHzjlid() { return this.hzjlid; } public void setHzjlid(Long hzjlid) { this.hzjlid = hzjlid; } public String getBdzmc() { return this.bdzmc; } public void setBdzmc(String bdzmc) { this.bdzmc = bdzmc; } }
映射文件如下
<?xml version="1.0" encoding="utf-8"?> <!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> <!-- Mapping file autogenerated by MyEclipse Persistence Tools --> <hibernate-mapping> <class name="cn.com.model.Yctsjl" table="YCTSJL" schema="MXDLPH"> <id name="id" type="java.lang.Long"> <column name="ID" precision="22" scale="0" /> <generator class="sequence" /> </id> <property name="mxdydj" type="java.lang.Long"> <column name="MXDYDJ" precision="22" scale="0" /> </property> <property name="bdzid" type="java.lang.Long"> <column name="BDZID" precision="22" scale="0" /> </property> <property name="bphyy" type="java.lang.String"> <column name="BPHYY" length="30" /> </property> <property name="sfzcyc" type="java.lang.String"> <column name="SFZCYC" length="1" /> </property> <property name="ycsfxc" type="java.lang.String"> <column name="YCSFXC" length="1" /> </property> <property name="ycfsrq" type="java.util.Date"> <column name="YCFSRQ" length="7" /> </property> <property name="ycxcrq" type="java.util.Date"> <column name="YCXCRQ" length="7" /> </property> <property name="bz1" type="java.lang.String"> <column name="BZ1" length="30" /> </property> <property name="bz2" type="java.lang.String"> <column name="BZ2" length="30" /> </property> <property name="bz3" type="java.lang.String"> <column name="BZ3" length="30" /> </property> <property name="hzjlid" type="java.lang.Long"> <column name="HZJLID" precision="22" scale="0" /> </property> <property name="bdzmc" type="java.lang.String"> <column name="BDZMC" /> </property> </class> </hibernate-mapping>
Action类如下:
public class YctsjlAction extends BaseAction { private YctsjlService yctsjlService; public YctsjlService getYctsjl(){ return (YctsjlService) getWebApplicationContext().getBean("yctsjlService"); } //返回所有的异常提示记录 public ActionForward yctsjlList(ActionMapping mapping ,ActionForm actionForm ,HttpServletRequest request,HttpServletResponse response)throws Exception { LazyValidatorForm form = (LazyValidatorForm) actionForm; yctsjlService = getYctsjl(); String bdzmc =(String )form.get("bdzmc"); String beginDate = (String)form.get("beginDate"); String endDate= (String)form.get("endDate"); System.out.println("endDate"+endDate); if(bdzmc!=null){ bdzmc = bdzmc.trim(); } else { bdzmc = ""; } if(beginDate!=null) beginDate = beginDate.trim(); else beginDate = ""; if(endDate!=null) endDate = endDate.trim(); else endDate = ""; //分页处理 int pageSize = 3; //定义每页显示记录数量 int currentPage; //定义当前页 String pageNoStr =request.getParameter("page"); //获取当前页码 if(pageNoStr == null || pageNoStr.trim().equals("")){ currentPage = 1; } try{ currentPage = Integer.parseInt(pageNoStr.trim()); } catch(Exception e){ currentPage = 1; } List<Yctsjl> list = yctsjlService.findByParameter(bdzmc,beginDate,endDate,currentPage,pageSize); int count = yctsjlService.getCount(bdzmc, beginDate, endDate); //总的记录条数 int pageCount =yctsjlService.getPageCount(count,pageSize);//获取总页数 PageUtils pageUtil = new PageUtils(currentPage, pageSize, count); request.setAttribute("pageUtil", pageUtil); Map pageParmMap = form.getMap(); pageParmMap.remove("page"); 去除上一次的页码值 Map map = new HashMap(); map.putAll(pageParmMap); request.setAttribute("pageParmMap", map); request.setAttribute("pageUtil", pageUtil); request.setAttribute("yctsjlList", list); return mapping.findForward("list"); } }
前台页面 list.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ page import="java.util.*" %> <%@ taglib prefix="bean" uri="http://struts.apache.org/tags-bean" %> <%@ taglib prefix="logic" uri="http://struts.apache.org/tags-logic" %> <%@ taglib prefix="html" uri="http://struts.apache.org/tags-html" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>异常提示记录查询页面</title> <link rel="stylesheet" href="<%=request.getContextPath() %>/css/base1.css" type="text/css" > <script src="<%=request.getContextPath() %>/js/jquery-1.3.2.js" type="text/javascript"></script> <script language="JavaScript" type="text/javascript" src="<%=request.getContextPath()%>/js/calendar/calendar.js"></script> <script language="JavaScript" type="text/javascript" src="<%=request.getContextPath()%>/js/calendar/lang/calendar-zh.js"></script> <script language="JavaScript" type="text/javascript" src="<%=request.getContextPath()%>/js/calendar/showCalendar.js "></script> <link rel="stylesheet" href="<%=request.getContextPath()%>/js/calendar/css/calendar-blue.css" type="text/css" /> </head> <body> <h3>异常提示记录</h3> <html:form action="/jsp/tbdlgl/yctsjl.do?dispatch=yctsjlList " method="post"> <table border="0" cellpadding="0" cellspacing="0" width = "800"> <tr class="style6"> <td width="30%"> 变电站名称:<input type="text" id="bdzmc" name="bdzmc" value="<bean:write name="pageParmMap" property="bdzmc"/>"> </td> <td width="20%" align="center">发生日期: <input type="text" name="beginDate" id="beginDate" value="<bean:write name="pageParmMap" property="beginDate"/>" size="10"> </td> <td width="20%" align="center">消除日期: <input type="text" name="endDate" id="endDate" value="<bean:write name="pageParmMap" property="endDate"/>" size="10"> </td> <td width="20%" align="center"><input type="submit" name="query" value="查询" ></td> </tr> </table> <br> <table border="1" cellpadding="1" cellspacing="0" width="800" > <tr class="style7" align="center"> <td width="7%" >变电站编号</td> <td width="20%">变电站名称</td> <td width="12%">母线电压等级</td> <td width="10%">异常种类</td> <td width="11%">异常消除情况</td> <td width="22%">异常发生日期</td> <td width="22%">异常消除日期</td> </tr> <logic:empty name="yctsjlList"> 目前没有信息 </logic:empty> <logic:notEmpty name="yctsjlList"> <logic:iterate id="yctsjl" name="yctsjlList" type="cn.com.model.Yctsjl"> <tr class="style7" align="center"> <td><bean:write name="yctsjl" property="bdzid"/> </td> <td><bean:write name="yctsjl" property="bdzmc"/> </td> <td><bean:write name="yctsjl" property="mxdydj"/> </td> <logic:equal value="" name="yctsjl" property="sfzcyc"> <td>没有记录</td> </logic:equal> <logic:equal value="0" name="yctsjl" property="sfzcyc"> <td>非正常异常 </td> </logic:equal> <logic:equal value="1" name="yctsjl" property="sfzcyc"> <td>是正常异常 </td> </logic:equal> <logic:equal value="" name="yctsjl" property="ycsfxc"> <td>没有记录</td> </logic:equal> <logic:equal value="0" name="yctsjl" property="ycsfxc"> <td><font color="red">异常未消除</font></td> </logic:equal> <logic:equal value="1" name="yctsjl" property="ycsfxc"> <td>异常已消除</td> </logic:equal> <td><bean:write name="yctsjl" property="ycfsrq" format = "yyyy-MM-dd a HH:mm:ss " /> </td> <td><bean:write name="yctsjl" property="ycxcrq" format = "yyyy-MM-dd a HH:mm:ss "/> </td> </tr> </logic:iterate> </logic:notEmpty> </table> <br> <table width="470" align="center"> <tr align="center" class="style6"> <td> 总共<font color="red"><bean:write name="pageUtil" property="count" /></font>条记录 第<font color="red"><bean:write name="pageUtil" property="page" /></font>页 共<font color="red"><bean:write name="pageUtil" property="pageCount" /></font>页 </td> <td align="center"> <html:link action="/jsp/tbdlgl/yctsjl.do?dispatch=yctsjlList" name ="pageParmMap" paramId="page" paramName="pageUtil" paramProperty="first">首页</html:link> </td> <td align="center"> <html:link action="/jsp/tbdlgl/yctsjl.do?dispatch=yctsjlList" name ="pageParmMap" paramId="page" paramName="pageUtil" paramProperty="previous">上一页</html:link> </td> <td align="center"> <html:link action="/jsp/tbdlgl/yctsjl.do?dispatch=yctsjlList" name ="pageParmMap" paramId="page" paramName="pageUtil" paramProperty="next">下一页</html:link> </td> <td align="center"> <html:link action="/jsp/tbdlgl/yctsjl.do?dispatch=yctsjlList" name ="pageParmMap" paramId="page" paramName="pageUtil" paramProperty="last">尾页</html:link> </td> </tr> </table> </html:form> <script language="JavaScript" type="text/javascript"> var beginDate = document.getElementById('beginDate'); beginDate.onfocus = function() { return showCalendar(beginDate, '%Y-%m-%d', '24', true); } var endDate = document.getElementById('endDate'); endDate.onfocus = function(){ return showCalendar(endDate, '%Y-%m-%d', '24', true); } </script> </body> </html>
分页处理工具:
package cn.com.utility; /** * @author wl * */ public class PageUtils { private int offSet = 0; private int page = 1; private int num = 1; private int count = 0; private int pageCount = 1; private final int first = 1; private int previous; private int next; private int last; /** * @param page * @param num * @param orderBy * @param asc * @param criteria */ public PageUtils(int page, int num, int count) { this.num = num>1?num:1; this.count = count; this.pageCount = new Double(Math.ceil(new Float(this.count).floatValue()/new Float(this.num).floatValue())).intValue(); this.pageCount = this.pageCount>1?this.pageCount:1; this.page = page>1?page:1; this.page = this.page>pageCount?pageCount:this.page; this.offSet = this.page*this.num-this.num; this.previous = this.page>1?this.page-1:1; this.next = this.page<this.pageCount?this.page+1:this.pageCount; this.last = this.pageCount; } /** * @return Returns the count. */ public int getCount() { return count; } /** * @return Returns the first. */ public int getFirst() { return first; } /** * @return Returns the last. */ public int getLast() { return last; } /** * @return Returns the next. */ public int getNext() { return next; } /** * @return Returns the num. */ public int getNum() { return num; } /** * @return Returns the offSet. */ public int getOffSet() { return offSet; } /** * @return Returns the page. */ public int getPage() { return page; } /** * @return Returns the pageCount. */ public int getPageCount() { return pageCount; } /** * @return Returns the previous. */ public int getPrevious() { return previous; } }
本人也是菜鸟希望多多指教,或有什么好的见解,完全可以发表评论。
发表评论
-
Jquery 1.4 api chm
2012-07-10 00:10 912Jquery 1.4 api -
JAVA语言版数据结构与算法(中文).pdf
2012-06-11 23:19 1564JAVA语言版数据结构与算法(中文).pdf -
Jquery+Json+JSP的一个Demo
2012-03-24 17:40 7413需要jquery插件 1 ajax提交 页面准备 < ... -
java开发工具
2012-03-12 19:28 10531 日期字符串工具包 2 Eclipse下Open Exp ... -
Spring学习资料
2011-12-12 21:05 1734Spring学习资料 -
设计模式 chm文件
2011-12-12 21:01 1643设计模式 chm文件 共享万岁 -
读取大文件
2011-12-02 09:46 1028import java.io.*;import java.ut ... -
数据结构笔记
2011-11-30 17:58 951数据结构笔记 -
hibernate帮助文档下载
2011-11-23 23:05 993hibernate帮助文档下载 -
Hibernate学习笔记
2011-11-22 22:16 994Hibernate学习笔记 供以后参考 -
Mysql 中文乱码 最简单的解决办法
2010-08-19 09:56 1216附近里面有图,比较详细 解决Mysql中文乱码最简单的办法 ... -
关于变量的定义
2010-05-10 18:07 813在一个方法里面,变量应该定义在开头还是在需要时在定义。例如 在 ... -
按不同的字段分类查询
2009-07-17 17:47 1070假设有一个学生成绩表 字段名 说明 id ... -
java中对集合对象list的几种循环访问总结
2009-06-26 10:49 14110java中对集合对象list的几种循环访问的总结如下 1 经典 ... -
ConvertUtils 的简单使用
2009-06-26 09:55 18817org.apache.commons.beanutils.Co ... -
SSH 延迟加载问题
2009-06-02 17:49 1890在SSH框架中如果Dao组件继承的是HibernateDaoS ... -
SSH整合项目中容易出现的错误整理收藏
2009-06-02 17:42 2131SSH整合项目中容易出现的错误整理收藏 (最近做项目中,报错报 ... -
在jsp中使用ajax技术示例:验证用户是否存在
2009-06-02 16:50 8988首先说明一下几个名词的意思,我自己理解的 jquery 网上说 ...
相关推荐
程序使用jquery方法提交请求,处理后将数据库绑定到页面中。 Ajax无刷新分页示例源码 程序介绍: 程序使用jquery方法提交请求,处理后将数据库绑定到页面中。 Ajax无刷新分页示例源码 程序介绍: 程序使用...
MySQL、SQL Server、Oracle 分页及 Java 分页统一...本文介绍了 MySQL、SQL Server、Oracle 分页的实现方法,并提供了一个 Java 分页统一接口的实现例子。这些技术可以帮助开发者更方便地实现数据库操作和分页功能。
KnpPaginatorBundle, SEO友好的Symfony分页程序,可以排序和分页 KnpPaginatorBundle介绍SEO 友好的Symfony分页程序,以... 这里组件为分页处理引入了不同的方法。 你可以在给定文档链接上阅读更多关于内部逻辑的信息。
主要介绍了MySQL百万级数据量分页查询方法及其优化建议,帮助大家更好的处理MySQL数据库,感兴趣的朋友可以了解下
在开始详细介绍各种分页方法前,让我们先创建一个数据库:用Office97中的access自创一个Employee.mdb,其中建一个表emp,只设三个字段:emp ID,last name和first name。为什么这么简单,是因为我们关心的是怎样处理...
主要介绍了Mybatis常用分页插件实现快速分页处理的方法。非常不错具有参考借鉴价值,感兴趣的朋友一起看看
介绍:分页加载和下拉刷新,几行代码完全搞定项目地址:https://github.com/tubeber/PageAndPullToRefresh运行效果:使用说明:本项目封装了分页请求和下拉刷新的全部过程,开发者只需要关注ListView子项视图的绘制...
介绍:它是一个简单实用,高性能,增强用户体验,提高网站点击率,支持数据和关键字分页,支持自定义样式和div+css布局,view与model分离,支持扩展和处理model层,界面美观的asp.net控件。 使用方法: 1.首先得到...
它是一个简单实用,高性能,增强用户体验,提高网站点击率,支持数据和关键字分页,支持自定义样式和div+css布局,view与model分离,支持扩展和处理model层,界面美观的asp.net控件。 使用方法: 1.首先得到总记录...
我们在开发项目中很多项目都用到列表分页功能,本篇介绍了springmvc 分页查询的简单实现示例代码,非常具有实用价值,需要的朋友可以参考下。
主要给大家介绍了关于MySQL limit使用方法以及超大分页问题解决的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用MySQL具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
主要介绍了php分页查询mysql结果的base64处理方法,涉及php+mysql数据库查询及base64编码转换相关操作技巧,需要的朋友可以参考下
标题:Puppeteer模拟翻页操作并采集分页数据:完整教程 ...例如,我们会讲解如何使用headless Chrome来隐藏浏览器窗口,以及如何处理网页中的Ajax数据加载。这些技巧将大大提高你的数据采集效率和质量。
主要为大家详细介绍了Python+Selenium自动化实现分页pagination处理的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
在设计时综合考虑本系统的特性以及应用环境的...最后,说明了基于Web的故障管理平台的各个模块的处理方法和代码范例,并对系统实现中遇到的关键性问题,例如分页技术、事务处理等,进行着重介绍。 关键字 JSP;Acc
下面,我们将详细介绍Oracle中SQL不能用Limit的处理方法。 一、使用RowNum实现分页查询 在Oracle中,我们可以使用RowNum函数来实现分页查询。RowNum函数可以返回当前记录的行号,从1开始。我们可以使用RowNum函数...
11.1 数据库备份与还原方法介绍 315 11.1.1 完全备份与还原 315 11.1.2 差异备份与还原 317 11.1.3 日志备份与还原 319 11.1.4 数据文件或文件组备份与还原 320 11.1.5 备份设备 321 11.1.6 ...
11.1 数据库备份与还原方法介绍 315 11.1.1 完全备份与还原 315 11.1.2 差异备份与还原 317 11.1.3 日志备份与还原 319 11.1.4 数据文件或文件组备份与还原 320 11.1.5 备份设备 321 11.1.6 数据库恢复...
在本节中,我们将详细介绍 Kettle 数据抽取的全量抽取过程,包括新建抽取转换流、输入控件的选择、输出控件的选择、全量抽取的业务表前处理等内容。 1. 新建抽取转换流 在 Kettle 中,新建一个转换流非常简单,只...