文档库 最新最全的文档下载
当前位置:文档库 › extremetable教程

extremetable教程

extremetable教程
extremetable教程

Table of Contents

前言

1. 配置

1.1. 先决条件

1.2. 安装

1.3. 导出过滤器(可选)

1.4. 安装测试

2. 概述

2.1. 引言

3. TableTag

3.1. 引言

3.2. 显示图片

3.3. 过滤、排序和动作(Action)

3.4. 设定每页显示行数

3.5. 样式

3.6. 保存表的状态

3.7. 其他属性

3.8. 扩展属性

4. RowTag

4.1. 引言

4.2. 高亮显示行

4.3. 样式

4.4. Javascript属性

4.5. 扩展属性

5. ColumnTag

5.1. 引言

5.2. Cell

5.3. Filter Cell

5.4. Header Cell

5.5. 样式

5.6. 解析和格式化

5.7. 过滤和排序

5.8. Calc

5.9. 允许和不允许视图

5.10. 其他属性

5.11. 扩展属性

6. ParameterTag

6.1. 引言

7. ExportTag

7.1. 引言

7.2. 扩展属性

8. Callbacks

8.1. 引言

8.2. RetrieveRowsCallback

8.3. FilterRowsCallback

8.4. SortRowsCallback

9. 视图

9.1. 引言

9.2. 表视图

9.3. 导出视图

10. Preferences

10.1. 引言

10.2. TableTag

10.3. ColumnTag

10.4. Advanced Techniques

11. Messages

11.1. 资源绑定

11.2. 全局资源

11.3. TableTag

11.4. ColumnTag

12. Limit

12.1. Limit指南

12.2. 创建Limit

12.3. Filter和Sort属性

12.4. 设置页和行属性

12.5. Setup

13. AutoGenerateColumns

13.1. 引言

13.2. ColumnsTag

14. Utilities

14.1. 引言

14.2. HtmlBuilder

15. 1.0.1-M4升级说明

15.1. 变更概述

15.1.1. HtmlView

15.1.2. Cell

15.1.3. RowTag

15.1.4. AutoGenerateColumns

15.1.5. Extended Attributes

15.1.6. TableTag的collection属性

15.1.7. BaseModel

15.1.8. Properties和ResourceBundle

15.1.9. pageContext

15.1.10. Limit和LimitFactory

15.1.11. TableTag的saveFilterSort属性

15.1.12. ColumnTag的showTotal属性

15.1.13. Image名

15.1.14. FormTag / InputTag Deprecated

15.1.15. RetrieveRowsCallbacks、FilterRowsCallback、

SortRowsCallback

16. Tag Attributes

16.1. TableTag

16.2. RowTag

16.3. ColumnTag

16.4. ExportTag

16.5. ExportXlsTag

16.6. ExportCsvTag

16.7. ExportPdfTag

16.8. ColumnsTag

16.9. ParameterTag

前言

eXtremeComponents是一系列提供高级显示的开源JSP定制标签。当前的包含的组件为eXtremeTable,用于以表的形式显示数据。

本文档处于更新中。大部分章节我将仅仅描述如何使用eXtremeTable。当然,为了使程序高效并具有更高的灵活性,源代码被再三重构。随后, 我认为阐述一下如何做设计决定是值得的。我希望大家能知道使用extremeTable是多么容易,并且所有的东西都是可配置。如果你有任何的要求和建议, 请及时通过论坛或者extremecomponents@https://www.wendangku.net/doc/8315351538.html,和我联系。

我想感谢Chris Bauer(Hibernate开发小组)和Rod Johnson(Spring开发小组)。Chris提供并修改了DocBook-XSL使它能生成Hibernate参考指南。Rod对于使用从Hibernate 得到的这个软件来生成Spring文档提供了支持。我现在用它来生成eXtremeComponents的文档。

译者注:如果大家有什么疑问和建议,可以通过xplucky@https://www.wendangku.net/doc/8315351538.html,和我联系。Chapter 1. 配置

1.1. 先决条件

?Servlet 2.3或更高版本

?JDK 1.3.1或更高版本

最小的Jars要求:

?commons-beanutils 1.6

?commons-collections 3.0

?commons-lang 2.0

?commons-logging 1.0.4

?standard 1.0.2

PDF导出需要的Jars:

?minimum jars (above)

?avalon-framework 4.0

?batik 1.5-fop-0.20-5

?fop 0.20.5

?xalan 2.5.1

?xercesImpl 2.6.1

?xml-apis 2.0.2

XLS导出需要的Jars:

?minimum jars (above)

?poi-2.5.1.jar

1.2. 安装

从sourceforge下载发行包。(https://www.wendangku.net/doc/8315351538.html,/projects/extremecomp/)

在压缩文件里你能找到开始使用需要的所有东西:

?extremecomponents.jar

?extremecomponents.tld

?extremecomponents.css

?默认的一组图片

?源代码

?test.jsp (用于确认安装是否正确)

将extremecomponents.jar文件拷贝到你的工程的/WEB-INF/lib目录下。

处理TLD文件有两种方式。你可以把extremecomponents.tld文件放到WEB-INF 目录下的任何地方。不过,为了便于管理,我喜欢把我的TLD文件都放到

/WEB-INF/tld目录下。你需要根据你的extremecomponents.tld 文件的位置来修改/WEB-INF/web.xml文件的标签映射。

/tld/extremecomponents

/WEB-INF/tld/extremecomponents.tld

随后,你需要向下面一样在你的JSP里把eXtremeTable包含进来:

<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>

如果你的servlet容器支持JSP 1.2 (或更高版本),它将能够自动发现TLD文件,那么你什么也不需要做。当extremecomponents.jar被容器加载的时候,在它的META-INF目录下的extremecomponents.tld文件将被找到。这时,你需要向下面一样在你的JSP里把eXtremeTable包含进来:

<%@ taglib uri="https://www.wendangku.net/doc/8315351538.html," prefix="ec" %>

为了使用eXtremeTable样式,从styles目录拷贝extremecomponents.css到你存放.css脚本的地方。当然在JSP页面里,你需要提供一个到CSS的链接。就像我将我的样式表放在/styles目录下。

<%@ taglib uri="/tld/c" prefix="c" %>

">

1.3. 导出过滤器(可选)

为了使导出功能有效,你需要设置导出过滤器。这是一个仅用于导出功能的可选配置。

如下所示在/WEB-INF/web.xml里配置过滤器:

eXtremeExport

org.extremecomponents.table.filter.ExportFilter

eXtremeExport

/*

过滤器还有一个可选的初始化参数,用于决定什么时候生成报头(headers)。我发现大多数的servlet容器倾向于在调用过滤器的doFilter()方法后才设置响应报头(response headers)。然而,一些servlet容器只有在调用过滤器的doFilter()方法前设置响应报头,过滤器才能正常工作。默认的方法是调用过滤器的doFilter()方法后设置响应报头,你可以通过使用responseHeadersSetBeforeDoFilter这个初始化参数调整它。

eXtremeExport

org.extremecomponents.table.filter.ExportFilter

responseHeadersSetBeforeDoFilter

true

如果你使用了Sitemesh,你将需要包含SitemeshPageFilter。SitemeshPageFilter 扩展了正常的 sitemesh的PageFilter,它使得正在进行导出的JSP页面不被修饰。

如下所示在/WEB-INF/web.xml里配置过滤器:

Sitemesh

org.extremecomponents.table.filter.SitemeshPageFilter

Sitemesh

/*

1.4. 安装测试

使用发行包的test.jsp来测试安装。将test.jsp拷贝到web应用的最顶层,默认的图片文件在 /images/table/子目录下。为了测试,创建相应的目录并将拷贝所有需要的图片。所有工作都完成后,你可以在浏览器里运行test.jsp了。

提示: 我不提倡在JSP里使用脚本(scriplets),但为了不用使用框架而能进行快速测试,在test.jsp 使用脚本是唯一的办法。

Chapter 2. 概述

2.1. 引言

eXtremeTable在给定的servlet范围(scope)外取得Beans或Maps的集合用于JSP页面显示。 servelet范围的搜索顺序是:page, request, session和application。通过设定TableTage的items 属性,eXtremeTable知道哪些需要在servlet范围外被保持。

集合里的Beans是pojo,如果使用maps那么它就是键值对。你可以认为每一个bean 就是表中的一行数据。在接下来的文档中,我将使用Beans集合来代替这两种集合。

实际表使用的最小语法如下所示:

items="presidents"

action="${pageContext.request.contextPath}/presidents.run"

imagePath="${pageContext.request.contextPath}/images/*.gif">

这就是eXtremeTable的一个典型定义。通过这些定义,你将得到格式化的列和页头,工具栏的所有特性也能很好工作。

Chapter 3. TableTag

3.1. 引言

TableTag用来设定什么被显示并且如何进行显示。默认的eXtremeTable在servlet 范围(按照page,request, session,applicaton的顺序)寻找具有名称和items

属性设置相同的Beans集合(如前章所述它指Beans和Maps两种集合)。表将遍历所有列,它使用var属性将当前行对应的bean从集合传到page范围,因此你可以从page范围中重新得到这些数据进行操作。tableId用来唯一标识表,如果在JSP 页面里包含两个或两个以上的表时需要设置它。

President bean定义如下:

public class President implements Serializable {

private String firstName;

private String lastName;

public String getFirstName() {

return firstName;

}

public void setFirstName(String firstName) {

this.firstName = firstName;

}

public String getLastName() {

return lastName;

}

public void setLastName(String lastName) {

https://www.wendangku.net/doc/8315351538.html,stName = lastName;

}

}

Beans集合需要被组装并传到servlet范围中。我喜欢使用Spring框架,因此示例将使用Spring框架的控制器(Controller)。如果你正在使用Struts,它和Action的功能类似。如果你使用别的东西,比如直接使用 servlets,你只需要明白我所做的只是组装Beans集合并传到request范围中。

public class Presidents extends AbstractController {

protected ModelAndView handleRequestInternal(HttpServletRequest

request,

HttpServletResponse response)

throws Exception {

List presidents = new ArrayList();

President president = new President();

president.setFirstName("George");

president.setLastName("Washington");

presidents.add(president);

president = new President();

president.setFirstName("John");

president.setLastName("Adams");

presidents.add(president);

request.setAttribute("presidents", presidents);

return new ModelAndView("/demo/presidents.jsp");

}

现在你可以构造表了:

<%@ taglib uri="/tld/extremecomponents" prefix="ec" %>

items="presidents"

var="pres"

imagePath="${pageContext.request.contextPath}/images/*.gif"

action="${pageContext.request.contextPath}/presidents.run"

>

${https://www.wendangku.net/doc/8315351538.html,stName}

从本示例中你应该知道我们将名为presidents的Beans集合以presidents为名称放到request中。为了使表知道如何找到这个Beans集合,我们设置TableTag的items 属性为presidents。同时我们定义了两列:firstName和lastName。firstName 列是最普通的用法:我们仅仅想让这列从当前bean中得到相应 firstName的值;lastName列示另外一种用法:明确取得值。

从一列中明确取得值非常有用,但是你需要理解表是如何构造行的。为了构造行,表需要对所有行进行 rowsDisplayed属性设定次数的迭代。每次迭代都从Beans里取得

下一个bean并使用var属性设定的名称传入page 范围。也可以说每次迭代你都访问的是集合中当前行对应的bean。

3.2. 显示图片

为了显示图片需要设置imagePath属性:

items="presidents"

var="pres"

imagePath="${pageContext.request.contextPath}/images/*.gif"

>

...

eXtremeTable将找到一个目录下的所有图片并使用特殊的语法来定义他们是那类图片。本示例中所有的图片都直接保存在web上下文的images目录下。*.gif使eXtremeTable知道所有的图片都是GIF格式的。在我们讨论preferences后,你将发现你可以你可以通过在 extremecomponents.properties文件中设定这个属性,而不用再整个应用的每个eXtremeTable 中包含它。

3.3. 过滤、排序和动作(Action)

eXtremeTable内嵌了过滤和排序功能,你只需要决定是否需要使用他们。你要使用的属性是 filterable和sortable,他们都是布尔值并且默认值是true。默认的所有特性都有效,你可以按照需要来关掉一些特性。比如,如果你不想使用排序或过滤你可以把他们的属性设为false。

items="presidents"

var="pres"

imagePath="${pageContext.request.contextPath}/images/*.gif"

action="${pageContext.request.contextPath}/presidents.run"

filterable="false"

sortable="false"

>

...

如果你仍不确信,你可以来验证他们。首先,设置filterable和sortable为true,你将看到 eXtremeTable允许你输入关键词来过滤结果集,它也允许你通过在页头(header)上滚动鼠标来排序。然后,设置filterable和sortable为fale,你将发现所有这些特性都不允许使用。

本示例需要指出的是使用action属性,action被用来告诉eXtremeTable当过滤或排序时如何回到当前的页面。本例中我通过Spring框架的controller(在这里是presidents.run)来得到Beans集合。你不需要担心传参问题,eXtremeTable将

保存所有的参数并将它们和过滤器、排序、分页一起传递给 Beans集合。更详细的信息请参考ParameterTag。

3.4. 设定每页显示行数

默认地eXtremeTable一页将显示15行。你可以通过设定rowsDisplayed属性为你想显示行数的数值来改变它。rowsDisplayed也可以在extremecomponents.properties文件中设定。(参考Preferences)。

提示:如果你想在一页中显示所有行,只需要设置showPagination为false。

3.5. 样式

TableTag关联了很多样式属性:

cellspacing="0"

cellpadding="0"

border="0"

width="80%"

style=""

styleClass=""

/>

所有这些都是可选的。

3.6. 保存表的状态

表新增了两个属性:state和stateAttr。state属性参照State接口并能插接如何保存表的状态的不同实现。

State借口如下:

public interface State {

public void saveParameters(TableModel model, Map parameters);

public Map getParameters(TableModel model);

}

state属性使用预设的四种状态(default、notifyToDefault、persist和notifyToPersist)之一,你也可以插接自己的实现。default状态不维持任何状态;persist状态没有任何参数传入,将一直维持表的状态; notifyToDefault状态将一直维持表的状态直到你传入参数告诉它回到default状态;notifyToPersist状态将一直维持当前状态直到你传入参数告诉它维持persisted状态。

stateAttr为指定参数提供了一条途径,你也可以使用属性文件在全局范围内指定它。为了向后兼容,默认参数一直为useSessionFilterSort。

如果你想state按照不同方式工作你只要实现State接口,然后使用TableTag的state 属性来指定实现类的全路径。

作为一条首要规则当使用state属性时,需要指定tableId。这是因为state使用tableId为名保存在session里。如果tableId不唯一,eXtremeTable将覆盖另一个同名的内容。tableId默认值为ec。

3.7. 其他属性

为了保持一致性,所有的显示特性都命名为showXXXX。他们包括showPagination、showStatusBar、 showTooltips、和showExports。

title属性将在表的上方显示标题,标题的位置根据使用的视图不同而不同。当前默认视图中标题位于表的上方工具条的左边。更详细的信息请参考View。

你会发现还有一些属性没有被探讨,因为他们将在其他章探讨。autoIncludeParameters在ParameterTag里被探讨; retrieveRowsCallback,sortRowsCallback和filterRowsCallback在Callbacks里被探讨。

3.8. 扩展属性

大多数标签包含一系列的固定属性,这样那些已经实现的功能能够被使用。然而,eXtremeTable具有一种更具弹性的架构,你可以添加自己的标签属性实现更多的定制工作。此外,eXtremeTable提供了非常清晰的钩子(hooks)允许你得到那些定制的标签属性来做一些你需要的工作。

通过addExtendedAttributes()方法将扩展属性包含到eXtremeTable里:

public void addExtendedAttributes(Table table);

如果方法被覆盖TableTag将调用它。你需要做的就是扩展TableTag,覆盖addExtendedAttributes()方法,然后添加自己的属性到表对象中。一个定制的TreeTag示例如下:

public class TreeTag extends TableTag {

private String parentAttribute;

private String identifier;

public void setParentAttribute(String parentAttribute) {

this.parentAttribute = parentAttribute;

}

public void setIdentifier(String identifier) {

this.identifier = identifier;

}

public void addExtendedAttributes(Table table) {

table.addAttribute(TableConstants.PARENT_ATTRIBUTE, TagUtils.evaluateExpressionAsString("parentAttribute",

parentAttribute, this, pageContext));

table.addAttribute(TableConstants.IDENTIFIER,

TagUtils.evaluateExpressionAsString("identifier",

identifier, this, pageContext));

table.setFilterRowsCallback("org.extremecomponents.tree.ProcessTreeRo wsCallback");

table.setSortRowsCallback("org.extremecomponents.tree.ProcessTreeRows Callback");

}

}

现在你添加了属性值到table对象。

另外,你也可以定制自己的标签和自己的TLD文件。你不需要修改extremecomponents.tld文件。你能象使用eXtremeTable里的标签一样使用自己的标签,除了使用你自己标签的参照。假如你的标签参照为mycompany 并且标签为customTable,你可以像下面一样使用他们:

items="presidents"

action="${pageContext.request.contextPath}/public/demo/presidents.jsp "

title="Presidents"

>

Chapter 4. RowTag

4.1. 引言

RowTag用来定义表中的行。

一个简单RowTag示例如下:

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run"

>

4.2. 高亮显示行

使用highlightRow属性可以设置行的高亮显示,它的值为true或false,默认值为false。

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run"

>

设置highlightRow属性后,它将插入设置行css类的javascript脚本,默认的css 类为highlight。你可以使用highlightClass来使用定制的css类。

4.3. 样式

RowTag关联了很多样式属性:

style=""

styleClass=""

highlightClass=""

/>

所有这些都是可选的。highlightClass设置行高亮显示时的css类; style属性定义行内联的样式;styleClass允许你定义一个行显示的css类。

4.4. Javascript属性

为了便于你对于行数据进行动态交互处理,提供了onclick、onmouseover和onmouseout属性。

onclick=""

onmouseover=""

onmouseout=""

/>

4.5. 扩展属性

大多数标签包含一系列的固定属性,这样那些已经实现的功能能够被使用。然而,eXtremeTable具有一种更具弹性的架构,你可以添加自己的标签属性实现更多的定制工作。此外,eXtremeTable提供了非常清晰的钩子(hooks)允许你得到那些定制的标签属性来做一些你需要的工作。

通过addExtendedAttributes()方法将扩展属性包含到eXtremeTable里:public void addExtendedAttributes(Row row);

Chapter 5. ColumnTag

5.1. 引言

ColumnTag用来定义表中的列。

示例President Bean:

public class President implements Serializable {

private String firstName;

private String lastName;

public String getFirstName() {

return firstName;

}

public void setFirstName(String firstName) {

this.firstName = firstName;

}

public String getLastName() {

return lastName;

}

public void setLastName(String lastName) {

https://www.wendangku.net/doc/8315351538.html,stName = lastName;

}

}

下例生成firstName和lastName列:

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run" />

${https://www.wendangku.net/doc/8315351538.html,stName}

通过对TableTag的讨论,已经知道列可以通过动态或精确的方式得到他们的值。firstName列动态地取得相应的值,列找到当前的bean并调用相应的getFirstName()取得值。 lastName列明确地从当前bean取得值,它要求你自己取得相应的值。如下例:

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run"

>

${https://www.wendangku.net/doc/8315351538.html,stName}

从page范围中取得名为pres的bean并得到它对应的lastName属性值。如果你正使用 Beans集合请确认具有对应的getter方法;如果使用Maps集合则不需要任何别的动作, eXtremeTable能够通过属性名从Map中得到对应的值。

提供这种可选取值方法的主要原因是使你能够对其他类型的html标签提供动作支持,例如显示一幅图片或者通过定义href使该列成为到其它页的一个链接。

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run"

>

href="http://goto.president.detail">${https://www.wendangku.net/doc/8315351538.html,stName}

切记bean中所有的属性都是可访问的,因此你甚至可以通过firstName属性来显示下一页。请注意firstName属性是如何作为URL字符串传输的。

items="presidents"

var="pres"

action="${pageContext.request.contextPath}/presidents.run"

/>

href="http://goto.president.detail?firstName=${pageScope.pres.firstNa me}">

${https://www.wendangku.net/doc/8315351538.html,stName}

我将不再在任何示例中强调pageScope。JSP标签总是最先在pageScope中寻找任何对像, 因此我们总是能安全地返回正确的bean。

5.2. Cell

每一列总是被实现Cell接口的对象修饰,你可以认为Cell是一个为了html显示或导出而返回格式化值的对象。发行包包含的Cell有DisplayCell、DateCell、NumberCell和RowCountCell。 DisplayCell是仅仅显示列值的默认cell;DateCell 使用parse属性(可选)和format属性来格式化对应的属性值; NumberCell使用format属性来格式化对应的属性值;RowCountCell显示当前行。

提示:为了避免混乱并提高灵活性Cell接口已经被修改。而且对于区别如何处理html 和导出显示值也不是很清晰。以前列值作为html显示,列的propertyValue作为导出使用。另外列值和propertyValue已经重写,他们以前在view中是不能被访问的。

cell现在是singleton并且不再线程安全,改变的原因是为了Cell接口能更简单地被使用。 init()和destroy()方法作为singleton更灵活但是处于一种混乱的状态。Cell接口如下:

public interface Cell {

/**

* The display that will be used for the exports.

*/

public String getExportDisplay(TableModel model, Column column);

/**

* The html that will be displayed in the table.

*/

public String getHtmlDisplay(TableModel model, Column column);

}

现在得到导出和html显示存在明显的区别。更重要的,需要返回字符串。列值和属性值不再需要设置。

DisplayCell是扩展AbstractCell的最简单的Cell。AbstractCell定义的虚拟方法getCellValue用来返回cell的值。虽然AbstractCell在一些情况下是有用的,但更多情况下只需要直接实现Cell接口。

DisplayCell:

public class DisplayCell extends AbstractCell {

public String getExportDisplay(TableModel model, Column column) { return column.getPropertyValueAsString();

}

protected String getCellValue(TableModel model, Column column) { return column.getValueAsString();

}

}

AbstractCell:

public abstract class AbstractCell implements Cell {

public String getExportDisplay(TableModel model, Column column) { return getCellValue(model, column);

}

public String getHtmlDisplay(TableModel model, Column column) { HtmlBuilder html = new HtmlBuilder();

CellBuilder.tdStart(html, column);

CellBuilder.tdBody(html, getCellValue(model, column));

CellBuilder.tdEnd(html);

return html.toString();

}

/**

* A convenience method to get the display value.

*/

protected abstract String getCellValue(TableModel model, Column column);

}

现在你应该知道Cell是多么简单。只需通过实现Cell接口或扩展AbstractCell来定制你自己的Cell,并设置列标签的Cell属性为类的全路径。例如: 如果你定制了一个名为MyCell的Cell,那么你可以像下面一样使用它:

如果你改变列的数据,那么过滤或排序可能没有意义。切记我的意思是如果你人为地改变数据,而不是使用样式对它进行包装或作为包含。如果你的定制cell显示数据的树状视图,或者是一幅图片,那么过滤和排序等一切逻辑操作都是没有意义的。

5.3. Filter Cell

列的filterCell属性控制过滤器如何显示,它和cell属性非常相像并且也是实现Cell 接口。已经定义了两个过滤器cells:默认的和droplist。默认的是一个输入框元素,除非你确信你需要使这列可以进行过滤,否则你不需要做任何事。

你可以像下面一样使用droplist过滤器Cell:

items="presidents"

action="${pageContext.request.contextPath}/presidents.run"

>

filterCell也允许你定义定制的过滤器,所有你必须做的就是实现Cell接口或者扩展AbstractCell,并设置列标签的Cell属性为类的全路径。例如,如果你定制了一个名为MyCell的Cell,那么你可以像下面一样使用它:

filterCell="com.mycompany.cell.MyFilterCell"/>

参阅Cell节了解如何创建你自己定制Cells的更多信息。

5.4. Header Cell

headerCell属性控制headers如何显示,它和cell属性非常相像并且也是实现Cell 接口。默认header cell作为文本显示,包含排序逻辑。

headerCell也允许你定义定制的过滤器,所有你必须做的就是实现Cell接口或者扩展AbstractCell,并设置列标签的Cell属性为类的全路径。例如,如果你定制了一个名为MyCell的Cell,那么你可以像下面一样使用它:

headerCell="com.mycompany.cell.MyHeaderCell"/>

参阅Cell节了解如何创建你自己定制Cells的更多信息。

5.5. 样式

ColumnTag关联了很多样式属性:

width=""

style=""

styleClass=""

headerStyle=""

headerClass=""

filterStyle=""

filterClass=""

/>

所有这些都是可选的。style属性定义列内联的样式;styleClass允许你定义一个列显示的css类; headerClass属性允许你改变header列的css类;filterClass属性允许你改变filter列的css类。

5.6. 解析和格式化

解析和格式化属性被用在日期和货币的显示上。

和date交互的工作依赖于你的bean属性是否是一个字符串或者是一个Date对象。如果是一个字符串那么你就需要确定parse属性,parse属性是按照模板定义来解析一个字符串为一个日期对象。如果bean中的属性是日期型对象则不需要添加parse 属性。不论如何你都需要设置format属性。 format属性按你提供的模板对值进行格式化。

本示例中使用MM/dd/yyyy模板格式化日期型值。因为bean中的born属性值为字符串,所以我们需要使用parse属性来将它转换成日期型数值。

format="MM/dd/yyyy"/>

对于货币只需要设置format属性:

format="###,###,##0.00"/>

很多时候在extremeTable中,你使用同样的模版来解析和格式化日期和货币值。所以便利的方法是在你自己的extremecomponents.properties文件中定义解析和格式化属性。参阅Preferences章了解更多信息。

5.7. 过滤和排序

你可能记得在TableTag中看见过filterable和sortable属性,ColumnTag中也有相同的属性。列的filterable和sortable属性将覆盖表的filterable和sortable属性设置。当你需要除了对表中的一、两列之外的所有列进行过滤和排序时,十分便利。

items="presidents"

action="${pageContext.request.contextPath}/presidents.run"

>

5.8. Calc

列新增了两个属性:calc和calcTitle:

calc属性实现具有唯一方法的Calc接口:

public interface Calc {

public Number getCalcResult(TableModel model, Column column);

}

它传入model和column,并返回一个Number型的值。默认的实现为总计和平均值。

为了使用定制的Calc,只需要使用ColumnTag的calc属性来指定实现Calc接口的实现类的全路径。

Calc为singleton并且不是线程安全的,因此不要定义任何类变量。

5.9. 允许和不允许视图

viewsAllowed属性制定类允许使用的视图。视图包括:html、pdf、xls、csv,以及任何定制的视图。如果你指定一个或几个视图,那么列仅能使用这些指定的视图。例如:你指定viewsAllowed="pdf",这意味着这列只允许PDF导出,而不能进行其他格式的导出或html视图。

items="presidents"

action="${pageContext.request.contextPath}/presidents.run"

>

viewsDenied属性制定类不允许使用的视图。视图包括:html、pdf、xls、csv,以及任何定制的视图。如果你指定一个或几个视图,那么列仅这些指定的视图不能被使用。例如:你指定viewsDenied="html",这意味着这列不允许使用html试图,但能进行任何形式的导出。

items="presidents"

action="${pageContext.request.contextPath}/presidents.run"

>

5.10. 其他属性

一个网站完整详细的SEO优化方案

首先,前端/页编人员主要负责站内优化,主要从四个方面入手: 第一个,站内结构优化 ?合理规划站点结构(1、扁平化结构2、辅助导航、面包屑导航、次导航) ?内容页结构设置(最新文章、推荐文章、热门文章、增加相关性、方便自助根据链接抓取更多内容)?较快的加载速度 ?简洁的页面结构 第二个,代码优化 ?Robot.txt ?次导航 ?404页面设置、301重定向 ?网站地图 ?图片Alt、title标签 ?标题 ?关键词 ?描述 ?关键字密度 ?个别关键字密度 ?H1H2H3中的关键字 ?关键字强调 ?外链最好nofollow ?为页面添加元标记meta ?丰富网页摘要(微数据、微格式和RDFa) 第三个,网站地图设置 ?html网站地图(1、为搜索引擎建立一个良好的导航结构2、横向和纵向地图:01横向为频道、栏目、专题/02纵向主要针对关键词3、每页都有指向网站地图的链接) ?XML网站地图(sitemap.xml提交给百度、google) 第四个,关键词部署 ?挑选关键词的步骤(1、确定目标关键词2、目标关键词定义上的扩展3、模拟用户的思维设计关键词4、研究竞争者的关键词) ?页面关键词优化先后顺序(1、最终页>专题>栏目>频道>首页2、最终页:长尾关键词3、专题页:【a、热门关键词b、为热点关键词制作专题c、关键词相关信息的聚合d、辅以文章内链导入链接】4、栏目页:固定关键词5、频道页:目标关键词6、首页:做行业一到两个顶级关键词,或者网站名称)

?关键词部署建议(1、不要把关键词堆积在首页2、每个页面承载关键词合理数目为3-5个3、系统规划) 然后,我们的内容编辑人员要对网站进行内容建设,怎样合理的做到网站内部优化的功效?这里主要有五个方面: 第一个,网站内容来源 ?原创内容或伪原创内容 ?编辑撰稿或UGC ?扫描书籍、报刊、杂志 第二个,内容细节优化 ?标题写法、关键词、描述设置 ?文章摘要规范 ?URL标准化 ?次导航 ?内页增加锚文本以及第一次出现关键词进行加粗 ?长尾关键词记录单 ?图片Alt、titile标签 ?外链最好nofollow ?站长工具(百度站长工具、google管理员工具等)的使用 ?建立反向链接 第三个,关键词部署 ?挑选关键词的步骤(1、确定目标关键词2、目标关键词定义上的扩展3、模拟用户的思维设计关键词4、研究竞争者的关键词) ?页面关键词优化先后顺序(1、最终页>专题>栏目>频道>首页2、最终页:长尾关键词3、专题页:【a、热门关键词b、为热点关键词制作专题c、关键词相关信息的聚合d、辅以文章内链导入链接】4、栏目页:固定关键词5、频道页:目标关键词6、首页:做行业一到两个顶级关键词,或者网站名称) ?关键词部署建议(1、不要把关键词堆积在首页2、每个页面承载关键词合理数目为3-5个3、系统规划) 第四个,内链策略 ?控制文章内部链接数量 ?链接对象的相关性要高 ?给重要网页更多的关注 ?使用绝对路径

网店美工视觉设计实战教程(全彩微课版)-48481-教学大纲

《网店美工视觉设计实战教程(全彩微课版)》 教学大纲 一、课程信息 课程名称:网店美工:店铺装修+图片美化+页面设计+运营推广(全彩微课版) 课程类别:素质选修课/专业基础课 课程性质:选修/必修 计划学时:21 计划学分:2 先修课程:无 选用教材:《网店美工视觉设计实战教程(全彩微课版)》,何晓琴编著,2018年;人民邮电出版社出版教材; 适用专业:本书可作为有志于或者正在从事淘宝美工相关职业的人员学习和参考,也可作为高等院校电子商务相关课程的教材。 课程负责人: 二、课程简介 随着网店的迅速普及和全民化,衍生了“淘宝美工”这个针对网店页面视觉设计的新兴行业。本书从淘宝美工的角度出发,为淘宝卖家提供全面、实用、快速的店铺视觉设计与装修指导。主要包括网店美工基础、图片调色、图片修饰、店铺首页核心模块设计、详情页视觉设计、页面装修、视觉营销推广图制作等,最后针对无线端进行首页、详情页视觉的设计与装修。本书内容层层深入,并通过丰富的实例为读者全方面介绍淘宝美工在日常工作中所需的知识和技能,有效地引导读者进行淘宝店铺装修的学习。 本课程主要对淘宝美工的设计基础和方法进行详细介绍,通过学习该课程,使学生了解网店美工的基本要求,以及掌握网店的设计与制作。 三、课程教学要求

体描述。“关联程度”栏中字母表示二者关联程度。关联程度按高关联、中关联、低关联三档分别表示为“H”“M”或“L”。“课程教学要求”及“关联程度”中的空白栏表示该课程与所对应的专业毕业要求条目不相关。 四、课程教学内容

五、考核要求及成绩评定 注:此表中内容为该课程的全部考核方式及其相关信息。 六、学生学习建议 (一)学习方法建议 1. 理论配合实战训练进行学习,提高学生的实战动手能力; 2. 在条件允许的情况下,可以申请一个网店,进行深入学习; 3. 提高学生的是设计感和审美能力; (二)学生课外阅读参考资料 《网店美工:店铺装修+图片美化+页面设计+运营推广(全彩微课版)》,何晓琴编著,2018年,人民邮电出版社合作出版教材

10个站长必备免费seo推广工具

10个站长必备免费seo推广工具 一般有网站的站长们都会用到seo工具,来查询网站最近的一些信息和资料。那么一般常用的seo工具就是站长工具了,这也是站长们非常喜爱的一款seo工具了。接下来介绍下10个站长必备免费seo推广工具: 一、长尾词挖掘工具 1、飞达鲁长尾词关键词查询工具 2、金花指长尾词拓展工具 3、爱站、站长之家关键词挖掘功能 4、谷歌站长工具关键字拓展工具 5、长尾关键词组合工具 二、收录查询工具 1、如果做百度就用site命令和百度统计工具索引量查询配合 2、很多站长工具都可以检测,官方的就是百度和谷歌统计工具了 三、网站死链检测工具 1、Xenu Link Sleuth 2、站长工具死链接检测 3、一些在线检查程序 4、火狐Link Checker工具

四、网站关键词排名查询 1、观其站长工具箱 2、站长工具关键字排名查询 3、360浏览器扩展中心站长工具 4、Rank Tracker 主要是英文SEO 5、百度统计工具搜索词排名 五、搜索引擎模拟抓取工具 1、很多站长工具都有这个功能 2、纯文本浏览器Lynx 六、日志分析工具 1、光年SEO日志分析系统 2、IIS日志分析工具 七、内容与结构工具 搜索引擎抓取内容模拟器 可以模拟蜘蛛抓取指定网页Text,Link,Keywords及Description信息八、相似页面检测工具 检验两个页面的相似度.如果相似度达80%以上,将可能受到惩罚 h九、Google Sitemaps 在线创建 在线创建 Google Sitemaps 网站地图文件 Google Sitemaps 创建软件, 可以很方便的创建网站的Sitemaps

谷歌站长工具提示网站服务器无法连接DNS无法解析的原因之一 ... ...

谷歌站长工具提示网站服务器无法连接DNS无法解析的原因之一 ... ... 最近创建了一个小站,网站各个方面基本优化的差多了,于是就到各大站长工具平台添加自己的网站,利用各大平台的站长工具可以有效的,实时的了解自己网站处在什么状态,于是我就在谷歌站长平台里添加了自己的网站地址。 不过过了几天我登入谷歌站长平台发现,谷歌提示你的网站DNS解析错误、服务器连接失败、robots.txt抓取失败【如图1】我很奇怪,当时以为是空间商的问题,是不是限制了国外的IP等等想法。 为什么这么想呢,国内的各大搜索引擎都能正常访问我的网站,而且百度也收录了一些页面,但是后来又打消了这个想法,因为在谷歌站长平台里我还添加了其他的网站,并且状态都是正常的,后来再次确认了下使用超级ping ping了下我的网站发现国外主机也是可以访问我的网站的,于是我把思想转移到的另外一个网站上看看他们到底哪里一不一样。

图1 唯一不一样的是另外一个网站使用的是顶级域名也就是以www开头的域名,而我刚做的这个网站域名是二级域名,我想难道还跟这个有关系吗?实在想不出还有其他的原因了。 于是把网站二级域名重定向到www的域名上,等到解析正常后再次在谷歌站长平台里添加了以www开头的这个域名检测发现主机状态都正常了【如图2】,这个真让人想不到,网上也看到有很多人出现这个问题,我自己也找网上搜索了好久,基本上没有答案,反正我是没找到,比过谷歌站长工具也有待改进,既然二级域名不能正常被访问,你干嘛让别人可以添加呢?也许有其他原因,不管这么多了,既然二级域名不能使用我们就用顶级域名吧! 图2 本文由世站网原创,转载请说明出处 /thread-254-1-1.html 文章来源于:https://www.wendangku.net/doc/8315351538.html,/article-24885-1.html

站长们常用的seo查询工具分析

每个站长在做站的过程中都会使用一些seo查询工具,无论是分析竞争对手的网站或者其他方面的网站,或者是用来查询网站的收录、关键词排名、外链、友情链接等情况,用工具辅助查询,不仅方便快捷,还能对各种数据进行可视化的分析查询,避免不必要的时间浪费,百度一下“站长工具”,可搜索到各式各样的站长查询工具,看着如此多的seo工具,选择上就有点困难了。 我每天工作的第一件事就是先查看网站的整体情况,在做优化期间也尝试了不同的查询工具,但到头来用着顺手、比较合自己眼缘也就那几款,现在各大搜索引擎相继推出了站长平台,一些seo行业门户站加载上seo工具,使得seo工具的选择范围更加广泛,但不使用论何种seo工具切记:查询的数据只能当作参考,并不是网站在搜索引擎中的真实数据值,下面结合自己的使用经验点评下这些seo查询工具。 一、搜索引擎站长工具 有些搜索引擎站长平台的工具只有在添加过网站并验证网站归属后才能使用这些查询工具,而且功能比较简单,只能查询一些基本的情况。 1.百度站长工具 百度站长工具中能够用到的分析网站seo情况的有外链分析、索引量查询、抓取异常和robots等,而且会根据网站情况提出页面优化建议,指导做百科优化的站长们更好地运营网站。

2.谷歌网站站长工具 因为一直做的是百度优化工作,对谷歌的关注很少,谷歌站长工具也没有怎么用过,因为做个人博客,所以小小摸索了一下。工具主要有控制台、运行状况、流量、优化和实验室五项,谷歌站长工具绝对是一个宝藏,运用好的话可以挖出很多的细节,对网站的seo工作帮助很大。

3.360搜索站长平台 相较于百度和谷歌站长平台,360搜索站长平台的功能可谓是少之又少,除了sitemap提交,就是网站安全检测,包括网站安全监测、网站测速、ping 检测和DNS检测。360搜索站长平台上线不久,各种功能需要完善,任道重远啊!

百度工具与第三发站长工具的对比

百度工具与第三发站长工具的对比 本文由流量客软件https://www.wendangku.net/doc/8315351538.html,,免费刷淘宝人气软件发布共享。 前几天在网上看到有人说第三方站长工具开始落寞,但是笔者并不这么认为.虽然说现在的百度站长工具功能比较齐全,在一些功能上逐渐替代第三方站长工具,但是第三方站长工具的功能百度并不能完全取代,所以并不会落寞,反而会随着站长的增多,第三方站长工具的使用者也逐渐增多. 下面我们来对比一下百度站长工具和第三方站长工具的功能: 百度站工具的功能 1. Sitemap提交.方便百度通过Sitemap工具告知百度您的网站上有哪些可供抓取的优质网页.有助于百度Spider更了解您的网站,包括那些传统spider可能发现不了的网页. 2.死链接提交.大家都知道,网站出现死链接会影响搜索引擎对网站的判断,轻则出现快照错误,重则直接被K站. 3. URL提交.网站提交是任何一个网站上线之后应该做的第一件事,而百度站长工具的url提交是要比旧版的提交入口要快的多. 4.网站改版工具.很多网站会经常大幅度改版,而改版带来的影响是网站会被K掉,通过设置301之后,网站提交可以保证网站的索引量和展现效果不出现大幅波动. 5.外链工具.之前的第三方站长工具的外链功能并不完善,百度出台的外链查询功能确实比第三方站长要好得多,在这一些上面来说确实占优势. 6.百度索引量.很多时候蜘蛛明明去了该网站,但是我们用site查询却查不到该信息,百度索引量在一定程度上要比site指令准确得多. 7.搜索关键词.搜索关键词是百度站长工具新出的功能,按照关键词、展现量、点击量、点击率来区分的,用户可以详细地看到自己网站的数据. 8.页面优化建议.百度根据自己的一些工具分析网站在优化方面存在哪些不足. 9.抓取异常、压力反馈、Robots.这些工具其实用的并不多,但是可以帮助我们查看网站异常情况. 10.安全监测、漏洞监测.可以根据该工具查询自己网站的安全信息. 还有其它的一些工具等,百度站长功能在优化上面确实能给我们很多帮助. 第三站长工具的功能

实例分析谷歌管理工具抓取的准确率

大家都知道,站长管理的大部分站长都偏爱谷歌站长工具,其实对于谷歌的这个工具,有喜有忧,而笔者也是经常使用这款工具来查询自己网站的相关信息的。那么对于这个工具,查询的是否大致都正确的呢?还是会出现很多的偏差,俗话说,偏得太厉害就再正确了。那么今天笔者以实例的形式分析一下,谷歌站长工具是否真的准确。首先咱们要有管理帐号之类的,这一步就略过了。谷歌工具中提供的故障诊断对站长来说比较有意义的,它可以利用这个子工具查询自己的网站大致的情况。那么笔者以自己的一个小站为例子,看看是否真的准确。如图

从图中咱们可以看到这里都是谷歌无法索引到的,这样就会出现404错误,意思是机器人爬行不到。那么是否这些索引不到的就代表是死 链接呢?再看图
  从图中可以看到这些并非是死链,而是机器人无法识别这样的路

网站被搜索引擎K站老鸟教你如何解决

网站被搜索引擎K站老鸟教你如何解决 文章编辑:菲律宾沙龙国际(https://www.wendangku.net/doc/8315351538.html,/) 网站被搜索引擎拔毛处理,无疑对于每个站长而言都是致命的打击,然而无论是降权也好,拔毛也罢,在这样的情况之下往往都是有所原因的,否则搜索引擎也不会平白无故的K你站,所以说我们要对这些导致我们网站被拔毛的原因进行分析并且改正,只有这样才能够让搜索引擎将我们的网站重新收录的。 首先我们需要先进行了解是哪些原因导致我们站点被拔毛的,笔者在这里给大家总结一些常见的原因以及解决方案供各位站长参考。 (一)网站过度采集内容。 现在的个人站长手头都是四五个站点,有些甚至多达几十个,当然一个人肯定是没有足够的精力去一一进行维护,所以很多站长在网上买了一些采集插件进行大量的采集其他站点内容,或许刚开始效果还是不错的,特别是对于收录而言是很强大的,因为笔者之前也搞过一个采集站点,所以蛮了解的。但是经过一段时间之后,百度开始对其网站采集的内容收录慢慢变少,直至不在收录,在到网站被K、被拔毛处理。 对于上面此情况笔者建议大家,可以进行少量的采集,并且最好在买一些采集插件的时候在买一些伪原创的程序来进行伪原创一下,这样搜索引擎会友好一些,当然如果时间充裕的站长,笔者还是建议自己原创,毕竟蜘蛛喜欢新鲜的食物。 (二)网站内部优化过度。 随着这几年SEO优化的盛行,每位站长多多少少都是懂一些优化知识的,但是在这些人当中不缺乏一些对优化错误理解的站长,对其网站大量的进行优化工作,导致网站优化过度,被搜索引擎降权、被K、拔毛处理,这些都是挺常见的。一般情况下,主要是很多站长大量的在网站内部做一些内链,导致内链优化过多而被搜索引擎视为作弊进行处理的。 解决方案:针对自身网站,定制合理的优化计划,良好的掌握网站关键词密度,日常良好的内容更新,并且重新去百度网站登录处进行提交,方可重新收录。 (三)网站外部优化过度。 对于网站外部优化过度这一说法而言,往往是对于新站而言的。因为一个新站上线,我们需要发一些外链来进行吸引蜘蛛爬行抓取,从而快速的收录我们的站点。然而往往越忽略了它是“新站”这一说。大量的去发布一些外链来进行吸引蜘蛛,当蜘蛛大量的爬行我们站点的时候,搜索引擎都是会进行记录的,对于一个新站而言会有这么多入口进入,无疑会被搜索引擎视为作弊进行处理,特别是对于一些利用群发软件发外链的站长更是如此了。 解决方案:良好的规划外链发布数量以及质量,新站切勿使用群发软件进行发外链,否则后果不堪设想,尽可能多做一些优质的外链,不要太注重于数量。慢慢的增加每天发布外链的数量,同样的去搜索引擎提交,通常这样的情况一般一个星期内就可以重新回复收录的。文章来源:菲律宾沙龙国际(https://www.wendangku.net/doc/8315351538.html,/)

站长必备工具推荐之搜索词排名

站长必备工具推荐之搜索词排名 好的站长工具总能更好的提高站长的工作效率,特别现在很多站长最常用的推广方式都是SEO。一些SEO相关的站长工具,总是站长们最热衷的。今天跟大家分享的这款站长工具就是和SEO工作紧密相关的,相信会成为SEO工作者的最爱。 2年前就想到这样的站长工具 第一次在百度统计上看到“搜索词排名”站长工具的时候,让我挺有感触的。因为在09年的时候,有个酷讯的老同事找我出去吃饭聊天。他是技术出身,准备自己创业,想做套SEO工具。知道我也涉及这方面的工作,因此向我做用户调查,了解下做SEO人员到底需要什么样的站长工具,而且是市面上没有的。 当时我就从自己平时做SEO的角度出发去考虑用户需求,作为一个SEO工作者,每天打开电脑的第一件事情是什么了?别人我不清楚,我在做SEO工作的时候,每天的第一件事情就是查询平时优化的几个搜索词的排名情况,相信这也是所有SEO工作每天最关心的事情。因为没更好的搜索词排名查询工具,那时候都是人工的一个一个在百度里输入搜索,看排在了第几页第几位。特别是在酷讯专职做SEO的时候,我还会弄个表格,记录每天搜索词的排名情况。而当时优化的搜索词又特别多,每天早上查询搜索词排名,就要花不少的时间。 因此我就跟这个老同事说,如果有一个工具,可以把我想关注的搜索词都填进去。然后每天打开这工具,就能一目了然的知道,我想优化的所有搜索词当前的排名情况,是升了还是降了。我觉得这个功能,对所有SEO工作者都是非常实用的。不是说这功能有多牛B,但能大大的降低SEO工作者的一些工作时间,从而提高了工作效率。 只是很可惜,我跟这同事提了这个建议后,后面并没见他开发出来。可能这样的功能,一些做SEO的专业公司内部早就开发。但网上公开的类似的这样的SEO工具,我一直未见到过,直到今天我介绍的这个“搜索词排名”工具的出现,历史才进行了改变。其实我一直很不明白,这个功能并不是非常难?为何在百度统计推出这个功能前,就没别的站长工具去实现了? 可能有朋友说网上早有一些所谓的百度搜索词,谷歌搜索词查询工具。但操作都非常繁琐,需要每次都输入要查询的搜索词和网址。而且大部分一次只能查询一个词,效率非常的低,与其用那样没效率的站长工具,还不如自己人工查询来得快。 “搜索词排名”工具功能介绍 刚才说了下2年前的故事,现在进入主题,跟大家介绍下“搜索词排名”工具。谈谈自己使用这个工具的心得体会。

淘宝网店二维码使用教程全攻略

一、什么是二维码——还记得超市的条形码吗? 谈起“二维码”,可能很多人会犯糊涂。但是与它类似的“一维条形码”广泛地运用于超市商品识别,却是我们每个人都十分熟悉的。二维码正是“一维条形码”发展的“高级阶段”,在一个小小的方块里面包含一条链接地址,引导使用者通过扫描设备(如手机)快速进入相应 的网址。 图1:一维条形码图2:淘宝二维码 现在,淘宝为卖家们提供二维码在线生成的工具,您可以将您的店铺和宝贝的“手机浏览链接”转化成二维码印制出来,夹在包裹中、印在优惠券上甚至是你的商品上。举例来说,接收包裹时,买家拿到印有二位码的优惠券,此时,他们只需用手机的摄像头“照”一下这个黑白相间的小方块,就可以快速地通过手机进入您的店铺中。二维码还有更多的妙用和更多的好处。 图3:生活中使用淘宝二维码的场景

二、淘宝二维码妙在何处——轻轻一扫客源不断! 1. 好处在哪里? 淘宝买家通过手机上的二维码识别软件,扫描卖家发布的淘宝二维码,可以直接找到卖家的促销活动,店铺首页,宝贝单品。免去输入网址、关键词搜索的麻烦。 淘宝卖家可以将二维码印刷到包裹中的宣传物上(如优惠券、宣传册),随包裹发给买家,吸引买家通过二维码进入店铺进行二次购买,为您带来源源不断的客流。 您可以在PC店铺和商品详情页中贴出二维码,使顾客可以在手机中快速收藏,随时随地光顾您的店铺! 卖家还可以考虑在平面媒体(如《淘宝天下》)上发布带有二维码的促销活动。对于有能力大卖家,还可以在自己的商品上贴上相应的二维码。 图4:二维码的引流作用 2. 买家的操作方法 有软件和摄像头的买家:淘宝合作的免费二维码软件有淘宝Android版、快拍、QuickMark、码上淘、魔印等,手机访问https://www.wendangku.net/doc/8315351538.html,可快速下载。这些手机软件提供二维码扫描功能,只要买家打开这些软件,将摄像头对准二维码1秒中左右,识别成功后手机将自动进入对应的网页。 没有软件或者摄像头的买家可以在手机上进入https://www.wendangku.net/doc/8315351538.html,页面,输入活动码,同样能够进入到您所设置的链接中。 图5:买家的使用方法

搜索引擎优化(SEO)常用工具,站长必备

奥道中国——全国第1家外贸营销咨询公司家外贸营销咨询公司! !搜索引擎优化(搜索引擎优化(SEO SEO SEO)常用工具)常用工具)常用工具, ,站长必备内容与结构工具 搜索引擎抓取内容模拟器 可以模拟蜘蛛抓取指定网页Text,Link,Keywords 及Description 信息https://www.wendangku.net/doc/8315351538.html,/search-engine-spider-simulator.php 相似页面检测工具 检验两个页面的相似度.如果相似度达80%以上,将可能受到惩罚https://www.wendangku.net/doc/8315351538.html,/similar-page-checker.php Google Sitemaps 在线创建 在线创建Google Sitemaps 网站地图文件中文:https://www.wendangku.net/doc/8315351538.html,/sitemap/sitemap.asp 英文:https://www.wendangku.net/doc/8315351538.html,/ Google Sitemaps Builder .Net Google Sitemaps 创建软件,可以很方便的创建网站的Sitemaps https://www.wendangku.net/doc/8315351538.html,/read.php?tid=10620

奥道中国——全国第1家外贸营销咨询公司家外贸营销咨询公司! !综合查询工具 网站收录查询 同时查询Google,百度,Yahoo 等8个搜索引擎的收录状况https://www.wendangku.net/doc/8315351538.html,/Shoulu/Index.asp 关键词排名查询 可以同时在3个搜索引擎中查询指定网页指定关键词的排名情况.https://www.wendangku.net/doc/8315351538.html,/search/keywordrank.asp 搜索引擎优化监视器(SEO Monitor) 一个仅321K 的小软件,可以同时查询多个搜索引擎,多个关键词的排名情况.并自动记录历史排名情况.https://www.wendangku.net/doc/8315351538.html,/read.php?tid=2490 Google 各服务器关键词排名查询 查询在Google 各个服务器中,指定网页指定关键词的排名情况,可以作为一个升降的参考https://www.wendangku.net/doc/8315351538.html,/Rank/Index.asp 关键词工具 Google Adwords 关键词工具

dw网页淘宝设计模板

竭诚为您提供优质文档/双击可除dw网页淘宝设计模板 篇一:dreamweaver在淘宝美工课中的应用 泉州新东方叶生方老师整理 dreamweaver在淘宝美工课中的应用 一、店铺装修(网页技术) 专业型课程分两个阶段:1、店铺装修基础阶段,2、html+css行内样式部分。 (一)实用型阶段——店铺装修基础 1、认识旺铺及类型、模板、模块、布局;旺铺20xx标准版拓展版20xx新版 2、ps切片导出web代码 3、dw表格排版 4、分类导航设计——ps切片、dw表格、热区三种技术综合运用 5、旺铺宽屏效果制作(页面背景、店头自定义、自定义大图三部分组成) 6、图片背景、旺旺代码、收藏代码、滚动代码 7、识别哪些效果属于模块功能,那些效果可以自定义

实现,常用的促销工具(限时打折、满就送、团购宝、搭配减价、会员管理等) 8、淘宝首页整体风格设计、“宝贝描详情页”风格设计 9、html常用标注介绍table、tR、td、img、a等用功能 (二)专业提升阶段——html+css行内样式 10、dw使用的注意要点以及认识tabletRtdFontdiVspanh1imgapliulmarquee等常用标注。 11、表格结构分析,学会手写简单的网页代码 12、认识css盒子模型 13、了解css排版基本方法——实际表格相似导航效果 14、运用css设计宝贝详情页版式、利用p、img标注的css属性设置版式 15、css美化表格 16、了解淘宝widget库的作用与意义——悬浮旺旺、宝贝放大镜等等特效 篇二:用dw做出漂亮的模板 如何用dw做出漂亮的促销表格模板 很多的卖家在逛淘宝店时会发现很多的店铺装修很美观,如打折模块和团购模块,自己想去问店主怎么制作,但是有几个淘宝卖家会告诉你呢,不过不要着急,下面让开淘网为你详解一番吧。今天我们讲的是如何用dReamweaVeR做

站长工具说明

站长工具功能简介 1、JS加密/解密(将代码以js形式进行加密或解密。) 2、UTF-8编码转换工具(UTF-8编码转换。) 3、Unicode编码转换工具(Unicode编码转换。) 4、友情链接(通过本工具可以批量查询指定网站的友情链接在百度的收录、百度快照、PR以及对方是否链接本站,可以识破骗链接。) 5 、META信息检测(通过本工具可以快速检测网页的META标签,分析标题、关键词、描述等是否有利于搜索引擎收录。) 6、MD5加密工具(对字符串进行MD5加密。) 7 、身份证号码值查询(查询身份证所在地、性别及出生日期。) 8、HTML/UBB代码转换工具(HTML/UBB代码转换。) 9、HTML/JS互转工具(HTML/JS互转。) 10 、搜索蜘蛛、机器人模拟工具(通过本工具可以快速模拟搜索引擎蜘蛛访问页面所抓取到的内容信息!) 11、关键词密度检测(通过本工具可以快速检测页面关键词出现的数量和密度,更适合蜘蛛的搜索。) 12、国家域名查看(查看所有国家的域名。) 13、邮编区号查询(查询各地区的邮编及其区号,支持模糊查询。) 14、域名Whois查询工具(Whois 简单来说,就是一个用来查询域名是否已经被注册,以及注册域名的详细信息的数据库(如域名所有人、域名注册商、域名注册日期和过期日期等)。通过域名Whois查询,可以查询域名归属者联系方式,以及注册和到期时间。) 15、死链接检测/全站PR查询(通过本工具可以快速测试网站的死链接。死链接- 也称无效链接,即那些

不可达到的链接。一个网站存在死链接不是什么好事,首先一个网站如果存在大量的死链接,必将大大损伤网站的整体形象,再者搜索引擎蜘蛛是通过链接来爬行搜索,如果太多链接无法到达,不但收录页面数量会减少,而且你的网站在搜索引擎中的权重会大大降低。该查询可以遍历指定网页的所有链接,并分析每个链接的有效性,找出死链接。) 16、搜索引擎收录查询(通过本工具可以快速查询各大搜索引擎对网站的收录数量!) 17、搜索引擎反向链接(通过本工具可以快速查询各大搜索引擎对网站的反向连接数量!) 18、查询手机号码归属地(查询手机号码的归属地及其手机号类型。) 19、SEO综合查询(SEO综合查询。) 20 、PR值查询(PR值全称为PageRank(网页级别),取自Google的创始人LarryPage。它是Google 排名运算法则(排名公式)的一部分,是Google用于用来标识网页的等级/重要性的一种方法,是Google 用来衡量一个网站的好坏的唯一标准。在揉合了诸如Title标识和Keywords标识等所有其它因素之后,Google通过PageRank来调整结果,使那些更具“等级/重要性”的网页在搜索结果中令网站排名获得提升,从而提高搜索结果的相关性和质量。) 21、关键词排名查询(通过关键词排名查询,可以快速得到当前网站的关键字在Baidu/Google收录的排 名情况!有些关键词在各地的排名是不一样的,就是通常说的关键字地区排名。比如:新闻、人才等很多。所以才提供多个地点的服务器提供大家查询。) 22、IP查询(通过该工具可以查询指定IP的物理地址或域名服务器的IP和物理地址,及所在国家或城市,甚至精确到某个网吧,机房或学校等;查出的结果仅供参考!) 23、Google收录查询(查询谷歌收录情况。) 24、友情链接查询工具(通过本工具可以批量查询指定网站的友情链接在百度的收录、百度快照、PR以及对方是否链接本站,可以识破骗链接。) 25、友情链接IP查询工具(通过本工具可以批量查询网站友情链接站点的IP地址、服务器物理地址,帮助站长清楚了解友情链接的服务器物理定位。) 26、域名删除查询(.com .net .org等国际域名删除时间,通常在域名到期后的第65或75天,凌晨2点30左右会删除国内域名的删除时间,通常在域名到期后的第15或16天,凌晨4:30会删除友情提示:域名删除时间仅供参考,谢谢!)

淘宝装修 SDK高级模板开发流程

淘宝网装修市场 高级模板设计指南1

目录 1、本地开发环境 (3) 1.1 什么是SDK (3) 1.2 下载SDK (3) 1.3 安装SDK (4) 1.4 SDK的目录结构 (7) 1.5 启动SDK (8) 2、使用SDK后台 (10) 2.1 创建模板 (10) 2.2 预览模板 (17) 2.3 配置SDK本地属性 (18) 3、模板的标准结构 (18) 4、设计模块 (18) 4.1 创建相关文件资源 (18) 4.2 编写模块代码 (19) 4.2.1 引入标识 (19) 4.2.2 使用KISSY效果 (19) 4.2.3 使用模块参数 (19) 4.2.4 调用数据接口 (20) 4.3 配置模块信息 (20) 5、设计页面 (22) 5.1 结构化页面 (22) 5.2 设计页面 (24) 5.2.1 引入单个模块 (24) 5.2.2 划分页面片区 (25) 5.2.3 配置页面信息 (26) 6、特殊页面要求 (27) 6.1 宝贝详情页面 (27) 6.2 宝贝列表,文章列表页面 (27) 6.3 不可装修的页面 (27) 7、调试模板装修效果 (28) 8、关于白名单过滤 (28) 9、PHP函数 (28) 10、发布模板到装修系统 (28) 2

1、本地开发环境 1.1什么是SDK SDK是淘宝提供给设计师在本地设计模板的软件开发包,SDK模拟了淘宝店铺环境。 SDK主要包括三个部分:Server,PHP引擎和模拟数据。 Server是指SDK会在本机上启动一个Server,这样我们可以通过浏览器浏览设计的作品。PHP引擎是指设计师只能使用PHP作为模板设计的语言。 模拟数据是指SDK包括了淘宝各个典型的店铺,这样设计师在设计模板时不用考虑实际的数据库。 目前,提供Windows操作系统和Mac操作系统的SDK工具。 1.2下载SDK 装修市场后台下载安装包,安装至本地,创建SDK web控制台。您将使用淘宝ShopSDK 来开发和上传设计模板。在开始设计之前,需在本地部署SDK环境。 设计师登录装修市场后,点击“设计师后台”导航按钮进入。(加入设计师注册流程帐号。) 进入设计师后台界面: 3

富网店,淘宝详情页及主图制作

加入富网店俱乐部https://www.wendangku.net/doc/8315351538.html, 摘要:主图决定点击率,详情页决定转化率,主图是详情页的精华所在,是整个详情页的缩影。一般来说,先有详情页,后有主图。 在讨论今天的问题之前,我们先想想,淘宝能提供的资源其实就是展现。每一个网页的位置是有限的,例如搜索页的第一页就只能展示48个宝贝,类目页的第一页是95个宝贝,我们凭什么淘宝要把有限的免费展位资源给自己呢? 其实这点,和我们交朋友拜把子一个道理,当双方都能够给对方正反馈的时候,感情会一直维系下去。当一方长期接收对方的付出,但是却不反馈的时候,这段感情就岌岌可危了。所以,你希望淘宝照顾你,你自己也得照顾淘宝。 一、为什么要做好主图和详情页? 要怎么照顾淘宝?那就要了解淘宝的KPI(关键绩效指标)——销售额。我们先从一个订单的产生过程入手,看看如何帮助淘宝,提高它的KPI。 第一步:产生需求。比如天冷了,需要一件长袖的衣服。此刻脑海里面浮现出一件长袖衬衫。 第二步:选择淘宝平台,敲入关键词:长袖衬衫男。 第三步:看图片。

第四步:看哪个宝贝顺眼,点击宝贝。 这一页的搜素结果只有48个宝贝,但是我优先选择了其中一个点击进去,其他的47个宝贝就不会有流量了。这里就涉及到一个核心指标“点击率”,展现量*点击率=点击量(也就是流量)。 注意,淘宝把你放在搜索的第一页上面,不一定有流量,还得有买家点击了,你才有流量。试想,如果淘宝把你放在搜索首页,半天都没人点你的宝贝,猜猜下一秒会发生什么?淘宝会很生气,后果很严重!结果就是连展现都不给你了! 第五步:从上往下扫描详情页。 第六步:看评价,到了这一步如果没有什么意外就买单了。 第七步:掏钱买单 当然,如果详情页看了让我一点欲望都没有,我连评价都不看了,直接关掉页面走人。所以这里又有一个核心指标“转化率”,访客数*转化率*客单价=销售额,客单价=支付宝成交金额/成交用户数,也就是人均在你店里消费多少RMB。 综上,我们会发现,核心KPI主要是点击率(主图)和转化率(详情页)。一般来说,都有这么一个逻辑,先有详情页,后有主图,因为主图就是详情页的精华所在,是整个详情页的缩影。所以这里,我们先讲详情页。 二、详情页设计必要的几个动作

站长工具查询的六大误区

站长工具查询的六大误区 所有站长都喜欢用工具查询网站的数据,因为方便、也有可能是觉得数据不错,满足一下自己小小的虚荣心,但是工具给出的数据真的可信么?权重值真的是那样的么?大家有没有去观察,经过一段时间的观察我发现了很多问题,下面笔者来细数工具查询的几大误区。 权重值 每当看到有人换友情连接的时候,权重1、PR3、收录145、反链11400 快照7-30,这样的数据我就很痛心,权重值居然被拿来当指标,而且有的工具根本不准确,几个工具产生几个不同的结果,可悲啊,可以说权重值是存在的,但是工具查出来的是极其荒谬的。权重真的存在但是百度没有给出查询的接口,单凭工具模拟百度的算法,就得出一个不靠谱的数值,而大家还很信任似的追捧,我观察过那个百度权重值,他从你网站的关键词排名情况,大约估计你网站的自然流量超过100个ip,他的权重就变为2了,不信你可以看看模拟流量低于100的权重值有是2的吗?笔者一个网站先前排名很好,模拟流量在180多,权重值自然显示2,但是现在模拟流量为71,那个权重值就降为1了,试想一下我如果再把关键词排名突击一下,让模拟流量超过100那权重值应该就变为2了。事实就是如此,不信大家可以大胆的去做个实验。 site查询 前段时间大家的site查询收录每天跌宕起伏,上升了一片欢喜,下降了一片责骂声,说百度是垃圾。笔者要说的是,心态保持平和,

百度不是说了么百度统计里面的那个索引量才是比较准确的,其他都是扯淡,site是不准确的,而且那些工具调用的都是百度的site数据,所以才会发生在一天之内收录大起大落的情况。各位一定要对自己网站有个起码的了解。 domain查询 domain查询只能查到网址或网址链接,查不到锚文本,这也是他不如雅虎反链的一个缺陷,很多seo喜欢做锚文本,因为锚文本对关键词排名提升是非常明显的,所以我们查看竞争对手网站时候目前只能查domain,一些外国的锚文本查询工具查出来的是很少的一部分,但是目前没有好的查询工具。 百度流量预计 这个比较可笑,那些工具通过你关键词的排名情况,粗略的计算你网站大约每天有多少ip,从而得出百度流量统计,这不是纯属扯淡么,要是真的那么准确,那要那些统计工具干什么?网站上面放置cnzz 或者百度统计等代码,能很详细的记录用户来访情况,站长工具查询的流量是不准确的,那是模拟流量。 友情链接查询 友情链接在外链中的作用是最大的,正因为如此站长们把友情链接看的很重,但是站长工具查询友情链接也是大家常用的查询方式,但是一些友情链接欺骗高手就是利用这个工具的漏洞来骗取我们的 友情链接,看上去我们的链接在他网站上,但是实际上网页源代码里是看不到的,所以蜘蛛来了爬源代码的时候不会爬到我们的网站上,

2019年中职商品经营专业改革建议

2018年商品经营专业改革建议 经济与管理教研组起草 1 现状分析 鉴于2017年8月商品经营专业招生只有16人报读,以至于该专业被暂停招生。商品经营专业作为经济管理教研组的主要专业,具有招生的吸引力,能够吸引多一点女生前来报读我校。目前商品经济已经进入互联网+时代,互联网、物联网、大数据已经占领了商品经营的半壁江山,即网商、微商、电子商务、B2C、电子支付结算的兴起,传统实体零售业态如超市、零售店、百货商场已经逐步被网店、微店取代,信息化、自动化、现代化是当今商品经营发展主要趋势。因此,商品经营专业课程设置必须与时俱进,商品经营专业的课程设计目标是围绕培养实体店铺的超市、百货商店的销售人员,在大格局观的指导下,商品经营的课程设置必须改革,必须紧跟时代步伐,否则我们这个专业必将遭到淘汰。只有改革,才能生存,才能图发展,为了商品经营专业在2018年8月秋季新学期的持续发展,吸取2017年的经验教训,建议从新经济格局出发,全面改革商品经营的课程设计,课程设计方向结合我校校情和资源配置,与新兴市场业态接轨,重新拟定本专业课程开设方向。 2 课程设计改革 2.1改革方向 在商品经营这个大专业下,设计两个方向分支,第一,商品经营(“互联网+”营销方向)。第二,商品经营(房地产营销方向)。之所以这样设计,是因为目前这两个方向都是市场经济最热门的方向,吸引大量的人才进入,前景很好,有利于就业。互联网+的网络虚拟经济也是国家鼓励发展的创新创业型商业业态,吸引了很多人才在电子商务领域从业。此外,房地产一手房、二手房的销售、租赁、按揭也正处于上升期。 2.2 专业改革策划思路 在招生宣传时,重新修改商品经营专业的课程授课方向及专业优秀,让学生、家长都知道,商品经营这个传统专业已经与时俱进,灌入了与当今互联网、物联

使用谷歌站长管理员工具9步检查SEO工作

如果你是一个SEO新手,谷歌站长管理员工具(也被称为GWT)是一个非常棒的开始你网站热身的地方。如果你埋头于SEO细节想要齐心协力解决一些问题,对你的网站进行一些可操作性的项目,你可以还不如注册谷歌的站长管理员工具。这里有一些检查SEO的快速指南,GWT风格: 1、找到问题之所在 首先,解决那些抓取错误的。使用抓取错误报告是一个好的开端。 点击故障诊断-抓取错误。这个报告将会显示所有Googlebot在你网站上发现的错误链接(光年日志分析软件也可以分析查看404错误是由蜘蛛产生的还是由用户产生的)。它也可能会显示软404错误——错误链接但是不会返回404状态码,服务器页面会说:“哦,不,人家还没有准备好,blabla……”。 (译者注:据我自己的一个经历,我的软404错误是在服务器当机了的那一天产生的,来自谷歌站长帮助关于软404的介绍摘自资料 https://www.wendangku.net/doc/8315351538.html,;hl=zh-CN) 2、找出重复内容 重复内容是一个长期困扰SEO的妖怪。使用HTML建议报告可以帮你诊断出重复内容。 点击故障诊断-HTML建议,接着点击重复的元说明和重复的标题标记。你就会看

到这个报告展示出哪些页面有相同的元说明和标题标记。 这个报告能够很好帮你洞察出重复内容,哪里有重复的元说明哪里有重复的标题标记,比如我点击其中的页面列表。 即使你没有找到一个的重复网页,每一页你有独特的、令人信服的描述性标题标签和元描述也是很重要的。因此,梳理HTML建议报告总是有益的。 3、找到爬取深度问题摘自https://www.wendangku.net/doc/8315351538.html,/ 在完美的状态下,你想谷歌100%的爬取你网站上的可见页面。使用抓取统计信息报告来查看你离完美有多远。 点击诊断-抓取统计信息。谷歌给你一个简洁的报告来展示每天抓取的网页数量(译者注:光年日志分析系统还可以展示蜘蛛爬取的具体页面灰常强大)、每天

教你看老域名是否可以使用

一个好的域名对网站seo后期的作用非常重要,利用老域名做网站是现在经常碰到的事情。从新老域名来说,老域名确实因为域名注册时代久远有一定的优势,因为搜索引擎在考察站点时,按照普遍的说法,域名年代越久也越可信。那么,一个老域名是否适合用来做推广呢?我们需要通过以下步骤方法验证 一:检查老域名的历史情况 老域名的历史情况对是否可以用于推广是至关重要的。那么如何检查网站的历史情况呢?推荐一款谷歌的工具——We Back Machine,也可以直接输入网址 https://https://www.wendangku.net/doc/8315351538.html,/web/ 在网站搜索框中输入老域名,就可以直接查看该域名的谷歌历史收录快照。蓝色部分表示当天有收录历史快照。通过We Back Machine工具,可以很直接的查看该老域名的历史情况。下面以https://www.wendangku.net/doc/8315351538.html,为例。从下图可以看出: 1. https://www.wendangku.net/doc/8315351538.html,从2008年开始有谷歌收录,网站已经有11年的谷歌收录历史 2. 查看每一年的网站具体历史,是否存在页面错误,或者被黑,甚至存在网站程序问题。建议多查看几个网站的历史页面情况。从下图可以看出https://www.wendangku.net/doc/8315351538.html,域名没有不安全情况,不存在黑历史。 二、检查网站是否有不良收录 在查看过网站的历史情况之后,可继续查看一下老域名的收录情况。检查收录分为两种情况

第一,老域名没有收录。如果老域名没有收录,我们首先要做的是查看一下该网站的robots文件,是否屏蔽了搜索引擎收录。如果是的,那么老域名没有收录结果是正常的。如果,老域名的robots文件正常,该网站开放,但是却没有收录结果,那么,很有可能,这个老域名就是被搜索引擎K过,不建议使用。 第二,老域名有收录数据。那么,我们要查看一下收录结果,打开被收录的页面是否正常。收录页面的快照是否正常。收录的所有页面,特别是排在谷歌结果最后面的页面,是否是正常的。 1. 收录结果是否包含不健康的内容,例如黄赌毒等信息。 2. 收录结果有错误页面 三、查看排名 在检查过老域名的收录情况之后,我们可以通过查看该老域名的排名情况,来进一步判断该域名是否被搜索引擎K过。可以查看被收录的页面,查看该页面的标题的排名情况。需要说明的是,最好不要从标题里面选关键词,核心的关键词很有可能是没有排名,也是正常的。可以选择整句标题,查看该标题的排名,如果,连一整句的标题,该老域名都是没有排名的话。那么,很有可能这个域名被搜索引擎K过。 四、检查网站外链情况 检查一个老域名是否可以用来做新的网站,还有一个很好的方法——检查该域名的历史外链情况。查看网站的外链有很多的工具,推荐一款工具:https://https://www.wendangku.net/doc/8315351538.html,/ 在搜索框直接输入老域名,即可查看外链情况。

相关文档
相关文档 最新文档