2012年7月31日星期二

OncePerRequestFilter的作用

OncePerRequestFilter的作用

在Spring中,filter默认继承OncePerRequestFilter,

OncePerRequestFilter源代码如下:

/* * Copyright 2002-2008 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * *      http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */package org.springframework.web.filter;import java.io.IOException;import javax.servlet.FilterChain;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;/** * Filter base class that guarantees to be just executed once per request, * on any servlet container. It provides a {@link #doFilterInternal} * method with HttpServletRequest and HttpServletResponse arguments. * * <p>The {@link #getAlreadyFilteredAttributeName} method determines how * to identify that a request is already filtered. The default implementation * is based on the configured name of the concrete filter instance. * * @author Juergen Hoeller * @since 06.12.2003 */public abstract class OncePerRequestFilter extends GenericFilterBean {    /**     * Suffix that gets appended to the filter name for the     * "already filtered" request attribute.     * @see #getAlreadyFilteredAttributeName     */    public static final String ALREADY_FILTERED_SUFFIX = ".FILTERED";    /**     * This <code>doFilter</code> implementation stores a request attribute for     * "already filtered", proceeding without filtering again if the     * attribute is already there.     * @see #getAlreadyFilteredAttributeName     * @see #shouldNotFilter     * @see #doFilterInternal     */    public final void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)            throws ServletException, IOException {        if (!(request instanceof HttpServletRequest) || !(response instanceof HttpServletResponse)) {            throw new ServletException("OncePerRequestFilter just supports HTTP requests");        }        HttpServletRequest httpRequest = (HttpServletRequest) request;        HttpServletResponse httpResponse = (HttpServletResponse) response;        String alreadyFilteredAttributeName = getAlreadyFilteredAttributeName();        if (request.getAttribute(alreadyFilteredAttributeName) != null || shouldNotFilter(httpRequest)) {            // Proceed without invoking this filter...            filterChain.doFilter(request, response);        }        else {            // Do invoke this filter...            request.setAttribute(alreadyFilteredAttributeName, Boolean.TRUE);            try {                doFilterInternal(httpRequest, httpResponse, filterChain);            }            finally {                // Remove the "already filtered" request attribute for this request.                request.removeAttribute(alreadyFilteredAttributeName);            }        }    }    /**     * Return the name of the request attribute that identifies that a request     * is already filtered.     * <p>Default implementation takes the configured name of the concrete filter     * instance and appends ".FILTERED". If the filter is not fully initialized,     * it falls back to its class name.     * @see #getFilterName     * @see #ALREADY_FILTERED_SUFFIX     */    protected String getAlreadyFilteredAttributeName() {        String name = getFilterName();        if (name == null) {            name = getClass().getName();        }        return name + ALREADY_FILTERED_SUFFIX;    }    /**     * Can be overridden in subclasses for custom filtering control,     * returning <code>true</code> to avoid filtering of the given request.     * <p>The default implementation always returns <code>false</code>.     * @param request current HTTP request     * @return whether the given request should <i>not</i> be filtered     * @throws ServletException in case of errors     */    protected boolean shouldNotFilter(HttpServletRequest request) throws ServletException {        return false;    }    /**     * Same contract as for <code>doFilter</code>, but guaranteed to be     * just invoked once per request. Provides HttpServletRequest and     * HttpServletResponse arguments instead of the default ServletRequest     * and ServletResponse ones.     */    protected abstract void doFilterInternal(            HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)            throws ServletException, IOException;}

OncePerRequestFilter,顾名思义,它能够确保在一次请求中只通过一次filter,而需要重复的执行。大家常识上都认为,一次请求本来就只filter一次,为什么还要由此特别限定呢,往往我们的常识和实际的实现并不真的一样,经过一番资料的查阅,此方法是为了兼容不同的web container,也就是说并不是所有的container都入我们期望的只过滤一次,servlet版本不同,执行过程也不同,

请看官方对OncePerRequestFilter的注释:

/** * Filter base class that guarantees to be just executed once per request, * on any servlet container. It provides a {@link #doFilterInternal} * method with HttpServletRequest and HttpServletResponse arguments. * * <p>The {@link #getAlreadyFilteredAttributeName} method determines how * to identify that a request is already filtered. The default implementation * is based on the configured name of the concrete filter instance. * * @author Juergen Hoeller * @since 06.12.2003 */

如:servlet2.3与servlet2.4也有一定差异:

在servlet2.3中,Filter会经过一切请求,包括服务器内部使用的forward转发请求和<%@ include file=”/login.jsp”%>的情况servlet2.4中的Filter默认情况下只过滤外部提交的请求,forward和include这些内部转发都不会被过滤,

因此,为了兼容各种不同运行环境和版本,默认filter继承OncePerRequestFilter是一个比较稳妥的选择


TAG:

Oracle 11g Release 1 (11.1) 单行函数——NLS 字符函数和返回数字值的字符函数

Oracle 11g Release 1 (11.1) 单行函数——NLS 字符函数和返回数字值的字符函数

http://docs.oracle.com/cd/B28359_01/server.111/b28286/functions001.htm#autoId2

 

本文内容

  • NLS 字符函数
  • 返回数字值的字符函数

 

Oracle 字符函数包括:

  • 返回字符值的字符函数
  • NLS 字符函数
  • 返回数字值的字符函数

 

NLS 字符函数

NLS 字符函数返回关于字符集的信息。NLS 字符函数包括:NLS_CHARSET_ID、NLS_CHARSET_DECL_LEN 和 NLS_CHARSET_NAME。

NLS_CHARSET_ID(string)

NLS_CHARSET_ID 函数返回字符集对应的 ID。string 参数是 VARCHAR2 值。'CHAR_CS' 的 string 值返回服务器数据库字符集 ID。'NCHAR_CS' 的 string 值返回服务器国际化字符集 ID。
无效字符集返回 null。

示例 1:演示 NLS_CHARSET_ID。

SQL> SELECT NLS_CHARSET_ID('ja16euc') FROM DUAL;
 
NLS_CHARSET_ID('JA16EUC')
-------------------------
                      830
 
SQL>

 

NLS_CHARSET_DECL_LEN(byte_count,'char_set_id')

NLS_CHARSET_DECL_LEN 函数返回一个 NCHAR 列的声明长度(也就是字符个数)。byte_count 参数是列的宽度。'char_set_id' 参数是字符集 ID。

示例 2:演示 NLS_CHARSET_DECL_LEN。当使用多字节字符集时,返回 200 个字节列的字符个数。

SQL> SELECT NLS_CHARSET_DECL_LEN(200, NLS_CHARSET_ID('ja16eucfixed')) as a
  2  FROM DUAL;
 
NLS_CHARSET_DECL_LEN(200,NLS_CHARSET_ID('JA16EUCFIXED'))
--------------------------------------------------------
                                                     100
 
SQL>

 

NLS_CHARSET_NAME(number)

NLS_CHARSET_NAME 函数返回字符集 ID 对应的字符集名称。字符集名称作为 VARCHAR2 值以数据库字符集返回。

若数字无法识别为字符集的 ID,则返回 null。

示例 3:演示 NLS_CHARSET_NAME。

SQL> SELECT NLS_CHARSET_NAME(2) FROM DUAL;
 
NLS_CH
------
WE8DEC
 
SQL>

 

返回数字值的字符函数

返回数字值的函数可以把任何字符类型作为其参数。它包括:ASCII、INSTR、LENGTH 和 REGEXP_INSTR。

ASCII(char)

ASCII 函数返回 char 第一个字符的数据库字符集的十进制表示。
char 可以是数据类型 CHAR、VARCHAR2、NCHAR 或 NVARCHAR2。返回值是 NUMBER 类型。若你的数据库字符集是 7 位 ASCII ,则该函数返回 ASCII 值;若数据库字符集是 EBCDIC 编码,则返回一个 EBCDIC 值。另外,没有相应的 EBCDIC 字符函数。
该函数不直接支持 CLOB 数据。但是,CLOB 数据可以隐式数据转换作为参数传递。

示例 4:演示 ASCII。返回 employees 表中字段 last names 以字母 L 开头的记录,L 的 ASCII 等价于 76。employees 表位于 Oracle OE schema。

SQL> SELECT last_name FROM employees WHERE ASCII(SUBSTR(last_name, 1, 1)) = 76;
 
LAST_NAME
-------------------------
Lorentz
Landry
Ladwig
Lee
Livingston
 
SQL>

 

INSTR(string,substring)
INSTR(string,substring,position)
INSTR(string,substring,position,occurrence)
INSTRB(string,substring)
INSTRB(string,substring,position)
INSTRB(string,substring,position,occurrence)
INSTRC(string,substring)
INSTRC(string,substring,position)
INSTRC(string,substring,position,occurrence)
INSTR2(string,substring)
INSTR2(string,substring,position)
INSTR2(string,substring,position,occurrence)
INSTR4(string,substring)
INSTR4(string,substring,position)
INSTR4(string,substring,position,occurrence)
REGEXP_INSTR(source_char,pattern)
REGEXP_INSTR(source_char,pattern,position)
REGEXP_INSTR(source_char,pattern,position,occurence)
REGEXP_INSTR(source_char,pattern,position,occurence,return_opt)
REGEXP_INSTR(source_char,pattern,position,occurence,return_opt,match_param)
REGEXP_INSTR(source_char,pattern,position,occurence,return_opt,match_param,subexpr)

INSTR 函数在 string 中检索 substring。该函数返回一个整数,指示 substring 在 string 中第一个匹配的位置。INSTR 利用由输入字符集自定义的字符计算字符串。INSTRB 使用字节,而不是字符。INSTRC 使用 Unicode 完整字符(Unicode complete characters)。INSTR2 使用 UCS2 编码点(UCS2 code points)。INSTR4 使用 UCS4 编码点(UCS4 code points)。

  • position 是非零整数,指示 Oracle 数据库检索 string 中字符的开始位置。若 position 为负数,则 Oracle 从 string 末尾向后开始计算,并检索。
  • occurrence 是整数,指示 Oracle 检索如何发生。occurrence 必须为正数。若 occurrence 大于 1,则数据库在 string 的第 occurrence 次检索到时返回。

string 和 substring 可以是任意数据类型 CHAR、VARCHAR2、NCHAR、NVARCHAR2、CLOB 或 NCLOB。返回值为 NUMBER 数据类型。

position 和 occurrence 必须是 NUMBER 类型,或是任何可以隐式转换成 NUMBER 的数据类型,并必须解析为整数。position 和 occurrence 的默认值为 1,意味着,Oracle 从 string 第一个字符开始检索,substring 第一次检索到时发生。返回值时相对于 string 的开始位置,而不是相对于 position。若检索不成功,则返回 0。

REGEXP_INSTR 函数是 INSTR 函数关于正则表达式的扩展函数。

示例 5:演示 INSTR。

SQL> SELECT INSTR('CORPORATE FLOOR', 'OR') "Instring1",
  2         INSTR('CORPORATE FLOOR', 'OR', 3, 2) "Instring2",
  3         INSTR('CORPORATE FLOOR', 'OR', -3, 2) "ReversedInstring"
  4    FROM DUAL;
 
 Instring1  Instring2 ReversedInstring
---------- ---------- ----------------
         2         14                2
 
SQL>

 

LENGTH(char)
LENGTHB(char)
LENGTHC(char)
LENGTH2(char)
LENGTH4(char)


LENGTH 函数返回 char 的长度。该函数利用由输入字符集定义字符的长度。LENGTHB 使用字节,而不是字符。LENGTHC 使用 Unicode 完整字符(Unicode complete characters)。LENGTH2 使用 UCS2 编码点(UCS2 code points)。LENGTH4 使用 UCS4 编码点(UCS4 code points)。

char 可以是 CHAR、VARCHAR2、NCHAR、NVARCHAR2、CLOB 或 NCLOB 的任意类型。返回值是 NUMBER 类型。若 char 是 CHAR 类型,则长度包括所有空白。若 char 是 null,则返回 null。

LENGTHB 函数的限制:该函数仅支持单字节的 LOB。不能用在多字节字符节的 CLOB 和 NCLOB 数据上。

示例 6:演示 LENGTH。

SQL> SELECT LENGTH('CANDIDE') "Length in charactoers"
  2  FROM DUAL;
 
Length in charactoers
---------------------
                    7
 
SQL>

备注

EBCDIC

EBCDIC(Extended Binary Coded Decimal Interchange Code,广义二进制编码的十进制交换码,读作 "ehb-suh-dik" 或 "ehb-kuh-dik")是 IBM 于1963 年- 64 年间推出的字符编码表,根据早期打孔机式的二进化十进数(Binary Coded Decimal,BCD)排列而成。

EBCDIC 是 IBM 为它更大型的操作系统而开发。在一个 EBCDIC 文件里,每个字符(字母或数字)被表示为一个 8 位的二进制。而 IBM 个人计算机和工作站不使用它们的 EBCDIC 编码,而是工业标准编码 ASCII 码。

EBCDIC 缺点是英文字母不是连续地排列,中间出现多次断续,为编写程序的人带来了一些困难。

UCS

UCS(Universal Character Set/Universal Multiple-Octet Coded Character Set,通用字符集)由 ISO 制定(ISO 10646 或 ISO/IEC 10646、ISO/IEC 10646-1、ISO/IEC 10646-2)。

UCS 包括所有其他字符集,保证与其他字符集的双向兼容。UCS 包含已知语言的所有字符。除拉丁语、希腊语、斯拉夫语、希伯来语、阿拉伯语、亚美尼亚语、格鲁吉亚语,还包括中文、日文、韩文这样的方块文字,以及大量的图形、印刷、数学、科学符号。

Unicode

Unicode(统一码、万国码、单一码、标准万国码)是计算机领域的业界标准。它对世界上大部分的文字系统进行了整理和编码,使电脑可以更为简化地呈现和处理文字。

Unicode 随通用字符集(Universal Character Set,UCS)标准而发展。Unicode 一直在不断改进,每个新版本都加入更多的新字符。Unicode 涵盖了除字形、编码方法、标准字符编码外,还包含字符特性,如大小写字母。

Unicode 由非营利机构——统一码联盟负责,致力于让 Unicode 取代既有的字符编码方案。因为,它们空间有限,不适用于多语环境。因此,Unicode 备受认可,并广泛地应用于电脑软件的国际化与本地化过程。

Unicode 与 UCS

历史上存在两个独立的尝试创立单一字符集的组织,即 ISO 和统一码联盟,因此最初制定了不同的标准。1991 年,两个项目的参与者都认识到,世界不需要两个不兼容的字符集。于是,开始合作,两者都同意保持码表兼容,并紧密地共同调整任何未来的扩展。

Unicode 标准包含了 ISO/IEC 10646-1 实现级别 3 的基本多文种平面。两个标准的所有字符都在相同的位置并且有相同的名字。ISO/IEC 10646 只不过是一个简单的字符集表。而 Unicode 标准,额外定义了许多与字符有关的语义符号学。Unicode 使用更为广泛。但一般认为,用于打印 ISO/IEC 10646-1 标准的字体在某些方面的质量,要高于 Unicode。

UTF-8 和 UTF-16

UTF-8(8-bit Unicode Transformation Format)是一种针对 Unicode 可变长度字符编码,也是一种前缀码。可以用来表示 Unicode 标准中的任何字符,且其编码中的第一个字节与 ASCII 兼容。因此,它逐渐成为电子邮件、网页及其他储存或传送文字的应用中,优先采用的编码。

UTF-8 使用一到四个字节为每个字符编码:

  • 128 个 ASCII 字符只需一个字节编码(Unicode 范围 U+0000 - U+007F)
  • 带有附加符号的拉丁文、希腊文、西里尔字母、亚美尼亚语、希伯来文、阿拉伯文、叙利亚文及它拿字母,则需要二个字节编码(Unicode 范围 U+0080 - U+07FF)
  • 其他基本多文种平面(BMP)的字符(包含大部分常用字)使用三个字节编码
  • 其他极少使用的 Unicode 辅助平面的字符使用四字节编码。

对上面的第四种字符而言,UTF-8 似乎太耗费资源。

但 UTF-8 对所有常用的字符都可以用三个字节表示——UTF-16 编码。对第四种字符同样需要四个字节来编码,所以,是 UTF-8 更有效率,还是 UTF-16,视所使用字符的分布范围而定。不过,若使用一些压缩系统,如 deflate,则这些不同编码系统间的差异就微不足道了。若顾及传统压缩算法在压缩较短文字上的效果不大,可以考虑使用 Unicode 标准压缩格式(SCSU)。

互联网工程工作小组(IETF)要求所有互联网协议都必须支持 UTF-8 编码。互联网邮件联盟(IMC)建议所有电子邮件软件都支持UTF-8 编码。

ASCII

ASCII(American Standard Code for Information Interchange,美国信息交换标准代码,读作 ˈæski' 或 ASS-kee)是基于拉丁字母的一套编码系统,国际标准 ISO/IEC 646。主要用于显示现代英语,其扩展版本EASCII 则可以勉强显示其他西欧语言。ASCII 是现今最通用的单字节编码系统,但有被 Unicode取代的迹象。


TAG:

C++冒泡排序

C++冒泡排序

简单的C++冒泡排序的程序

#include<iostream>using namespace std;void swap(int &a,int &b);int main(){    int a[10];    cout<<"输入10个整数"<<endl;    for(int i = 0;i != 10;i++)    {        cin>>a[i];    }    for(int i = 0;i != 10;i++)    {        cout<<a[i]<<'\t';    }    for(int i = 0;i < 9;i++)//冒泡排序    {        int k = 0;        for(int j = 0;j < 9-k;j++)        {            if(a[j] > a[j+1])            {                swap(a[j],a[j+1]);            }        }        k++;    }    for(int i = 0;i != 10;i++)        {            cout<<a[i]<<'\t';        }    return 0;}void swap(int &a,int &b){    int temp = a;    a = b;    b = temp;}

TAG:

影响网站关健词排名的主要因素是什么 外链还是内容

影响网站关健词排名的主要因素是什么 外链还是内容

  接触SEO半年多了,虽然从时间上来看,可能还算是一个新人吧,但是也是看了好多好多的文章,吸收了大量的知识,正因为还没有处于高级阶段,所以还有很多很多的疑惑,当然这里对很多很多的砖家的看法也不尽苟同。

  看到一篇帖子,或者一个砖家写的文章,一般的说法是:内容内王,外链为皇,然后高级一点的说法是现在已经不需要外链了,有内容就可以了,这个就是他们说所说的用户体验度,说做到了这点,网站就是王者了,就可以有好的排名了,事实真是这样吗,这样的说法真的是适合所有的网站吗

  说这个之前,我们先假设一个前提,就是这个网站基础的方面已经做好了包括:网站代码选择,关健词布局,H标签放置,次导航布局,关健词合理选取等,等于说基本上的站内优化的前期都做好了,也就是说SEO的前奏已经好了,然后就是后期具体的优化上面了。

  好,我们接着上面的内容建设上来说,一个新站,一个十年老站,优化方法一样吗?肯定不一样,对于一个十年老站来说,因为年份已久,已经获得了认可引擎的认可,所以这个时候不需要外链,然后着重在内容建设上面,然后基本上就可以了,然后就可以有排名了,这样的SEO来说已经是处于维护阶段了,这个就是砖家常说的内容阶段,也就是说只要你不犯错,你的排名就可以在那个位置,别人很难超越你,这个是当然了。

  但是我要说的是对于新站,或者对于一部份没有内容的站以上的内容排名方法适合吗,以上的用户体验度适合吗,我可以肯定的说,非常的不适合,新站什么也没有,假设你什么外链也不发,天天就在那里搞内容,搞所谓的用户体验度,这里要请问你,这些你都是做给谁看的呢?做给搜索引擎吗,天天有成百上千万的新站上线,和你一样搞内容的站不计其数,请问搜索引擎凭什么发现你,然后给你印象;做给用户看吗?因为你没有排名,所以广大网民根本就没有机会发现你的网站,人家都不知道,更谈不上什么用户体验了。就跟一个演员,单有演技,如果你不配合周边的炒作的话,可能五年走红,可能十年走红,有的可能到退役了还没人认识,炸作也是一种机遇,一定要把握。再论到网站一样,天天那么多的站,搜索引擎怎么给你印象,就是说你有了内容之后,肯定还需要配合一定的曝光度,怎么曝光,当然就是外链了,有了外链接就有了曝光度,然后才可能会有网民的体验度,继而加有可能加深你网站在搜索引擎的印象,进而给你计算更多的权重,当然接下来就是表现在你的排名上了,

  所以说,说什么话,发表什么概念,不要以点带面,因为这样会让很多刚刚进入的新朋友感觉到困惑,说法一定要细分,新站,老站,内容站,新闻站,企业站等,都不尽相同的。一定要区别对待,尤其很多新朋友进来,肯定是刚接触,接触的也都是些新网站,所以这样来说,外链的作用就是更加举足轻重,而且是必不可少的东西,而且可以肯定的说,当你外链到了一定的量,不说排名很好,但是一定有排名。还要说,经我这么久实践下来,其实友情链接也是影响关健词排名很重要的因素,相对于内容和外链来说,友情在排名的作用比重更大。

  本文出自上海信铝铝业有限公司http://www.70752024.com/网络推广人员,都是实战理论,转载请保留链接,谢谢


TAG:继续投稿 全是原创 站长 网站 网站推广 赚钱

jQuery源码中的chunker 正则过滤符分析

jQuery源码中的chunker 正则过滤符分析

这是Jq中最长的一个正则了吧,我也理解了很久,发出来大家给指证一下:

var chunker = /((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^[\]]*\]|['"][^'"]*['"]|[^[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,

如图:

分组一是通过以下代码逐一拆分成一个数组的:

// 此处循环的作用是拆分每个选择器到 parts 数组,比如div#id>p ul li 拆分成['div#id','>','p','ul','li']    while ( (chunker.exec(""), m = chunker.exec(soFar)) !== null ) {        // soFar存储的是过滤了第一层后的选择符字符串        soFar = m[3];        //选择器块第一部分推入数组        parts.push( m[1] );        // 如果分组符号逗号','存在,到另外一组选择器了        if ( m[2] ) {            // 记录另外一组选择器            extra = m[3];            break;        }    }

是这样理解的吗,如果有误请留言指点,我也会根据后面的理解重新编辑的!


TAG:

android与SQLite的小总结

android与SQLite的小总结

关于SQLite的一些基础知识,网上很多,例如http://wenku.baidu.com/view/dfd52e0d6c85ec3a87c2c5e0.html,在这里就只是小小地总结下在Android开发中SQLite的一些关键点吧。

SQLite的前世今生大家都懂得的,一个轻量级数据库可以说就是一个文件组织体系,一个兼容大部分数据库语法的嵌入式数据库。因为在android的SDK对其提供了支持,所以大部分android的开发中,APP内部文件系统的建立都离不开SQLite。

首先,数据库都有创、增、改、删、查这几个操作。所以就对这几个做个小结吧。

1、数据库创建,调用父类 SQLiteOpenHelper 的构造函数,进行构造。这个方法需要四个参数:上下文环境(例如,一个 Activity,通常是this),数据库名字,一个可选的游标工厂(通常是 Null),一个代表你正在使用的数据库模型版本的整数(自己定义)。其中的onCreate()方法会在第一次创建数据库的时候被调用。因此常常在此oncreate()里面写入建表语句。例如db.execSQL(CREATE_TABLE_SQL_RES);

final String CREATE_TABLE_SQL_RES=

"create table IF NOT EXISTS res_data (id integer primary key autoincrement," +
" uid varchar(60), web varchar(60),url varchar(255), name uvarchar(60),realated varchar(60))";

特别在建表过程中值得一提的是,必须实体化helper方法才能建表成功,例如db = dbhelper.getWriteableDatabase();

2,增、改的操作,可以使用db.execSQL();使用数据库操作语法操作,同时也可以通过android里的insert()和update()方法操作。个人建议后者,因此这些操作跟android的代码风格更加统一,而且出错时的错误报告也更加明显。具体的使用方法很多文章里面也是没有写,在这里特别写一下,

public static SQLiteHelper dbhelper;
public static SQLiteDatabase db;

dbhelper = new SQLiteHelper(this,"4pics.db3",null,1);
db = dbhelper.getWritableDatabase();

db.insert(。。。。。。);

3 查询 查询方法主要是用rawQuery和query,两者中前者的直观性更好,更符合数据库操作语句的风格,而后者在面对动态变量的时候具有更好的操作性。推荐使用后者。

这两个方法的调用返回的都是游标,游标类似于一个数据库的索引号,就跟你去图书馆借书,你通过查询系统查到的先是一个书号,然后你再根据这个书号找到你所需要借的书。这个游标就是这个意思。

得到游标之后需要把游标所代表的数据取出来,这时候就需要用到getString()和getInte语句。这两个语句的作用顾名思义就都清楚了。唯一需要特别说明的是,这里取到的游标是一整个游标系,返回值是在最后一个游标上,直接转换是没有结果的。因此需要先动用moveToFirst函数,才能得到真正的数据。

给个例子吧,

Cursor c = db.query("res_data", columns, "id=?",parms, null, null, null);
int nameColumnIndex = c.getColumnIndex("name");
c.moveToFirst();
FILE_NAME = c.getString(nameColumnIndex);

4 SQLite的主要操作中的一些重点就这些了,整体还是很轻量级很好用的,至于是否要结合contentProvider来使用就按照具体的项目所需了,以后有机会再写下Provider的应用吧。

zhuzheic


TAG:

地方装修建材网站危机四伏

地方装修建材网站危机四伏

  随着互联网的发展,网上购物已经设计各行各业,从建材网站的家天下,淘宝家居,家居就,到家电行业的苏宁易购,国美电器网上商城,装修所能涉及的各种产品,依靠传统网络广告存活的地方装修建材站已经出现危机,家居行业们户依靠着价格上的巨大优势,迫使地方网站必须转变盈利模式。

  以前网民想装修买建材,可以说,走走卖场,看看地方行业网站上有没有优惠打折信息,看到合适价格的产品就会去购买,但是随着快递行业的迅速发展,家居行业门户网站的产品可以面向全国配送,他们的产品大部分都是厂家直接入住销售的,销售价格,因为缺少了中间的地方代理商环节,比起建材大卖场还要优惠很多。而且购买后快递很快就可以送门上货。而地方网站呢,他们的网站上的产品全部都是从地方代理商那里拿的,一般的商家不原因透露底价,就算拿到底价和行业门户站点比起来,也没有任何优惠,因为地方代理商不会赔钱卖产品的。

  如果网站上的产品没有价格优势,那还会有人买么,时间一长,商家会感觉到在网站上投放广告和在线销售的效果没什么效果,广告自然不会再投放了,那么地方装修建材网站生存就很难了,所以,旧的盈利模式一定要改变。原来的在线销售必须转型为线下活动销售模式,才能得以生存,面对面的购买,相信商家都会乐意赞助的。

  众多的商家中,可以说装修公司对地方网站的还是比较热衷的,很多的装修建材网站已经推出了,免费设计,免费量房,装修在线招标的业务,对于需要装修的网民说,很便利。有了需要装修的用户,就可以和装修公司谈合作了,但是整个装修建材行业来说,装修公司只是其中的一小部分,剩下的建材、家具、家电市场如果能和这个免费设计结合起来,才能使网站业务全面发展,因为建材家具的选购,是需要搭配的,如果网站人员能面对面的给网民服务,结合设计师的建议,帮助他们来选择建材和家具家电,提供一条路的服务,这样才能使整个网站的业务全面开花,走出困境。本文由乐装网(www.lezhuang.com)原创,转载请带上链接。


TAG:网站运营 站长 网站 网站推广 赚钱

浅析快速提升地方论坛新站人气的三种方法

浅析快速提升地方论坛新站人气的三种方法

  运营地方论坛要比运营普通网站难得多,但是一旦成功,往往获得的利润也会比普通网站高得多,所以现在也有不少站长朋友把目光锁定在暂时竞争力还没有那个激烈的地方网站这个细分行业。搞地方网站,最重要的就是人气,特别是新的地方论坛,如果一直没有超高的人气,人流量不大,发帖量不高,那很快就会变成一个无人问津的处女地,最终会消失在大家的视野中。

  那么如何才能够快速提升地方论坛新站的人气呢?笔者认为可以从下面三个方面进行尝试,最起码笔者尝试了这三个方法,感觉效果还是不错,因此提出来跟广大站长朋友们分享一下。

  一:将地方论坛的板块搞得很粗

  可能这一点有点出乎广大站长的意料,现在不都是要求什么都细分,为什么到了地方论坛新站就要搞粗呢?事实上,对于一个地方论坛新站而言,把相关频道搞粗,笔者就尝试把二手房信息,房屋租赁,房屋买卖等可以细分的板块,直接划分到房地产中,只是在题目的备注中,增添一个让用户可选项,这样每天每个细分板块可能只发十来个帖子,但是变成一个总的房地产板块,那就是三十多个帖子,那么新流量过来后,自然会认为你的新论坛人气还不错。就乐意驻足浏览了。

  二:进行系列营销,快速给网站带来流量

  当网站建成且板块和设计都比较合理之后,那就应该立刻进行快速营销,甚至在网站基本竣工之前就已经在动手营销了,可能很多站长又在疑惑,你不优先搞好自己网站的外链,搞好网站的内容,怎么一开始就来营销呢?那么营销过来的流量又有什么用呢?

  对于这个疑问,笔者认为,在开始的时候,地方论坛要求的就是人气,虽然很多新来的流量可能认为你的网站内容不够丰富,所以很快就走了,但是从论坛的在线人数上就会有新的记录,你的论坛总不能够在半年之后,论坛的同时在线人数仅仅几十人,这样的论坛显然不具备盈利能力,除非是专门忽悠人的网赚类网站,忽悠一个人就能够赚好几千块的那种论坛。

  对于营销方法这里就进行赘述了,总结了目前几种常见的营销方式,软文,本地的百度贴吧,相关频道的本地QQ群,以及各类线下的营销方式,总而言之,怎么能够获得流量就怎么进行营销,只要重视营销的成本不要超过预算就行,这样就能够在很短的时间里,获得不错的流量,而且这些超过的流量,或多或少也会给网站带来一定的新鲜内容。

  三:策划几次为广大网民某福利的活动

  正所谓无利不起早,人们之所以来你的网站总会有自己的需求,有的是为了娱乐,有的是为了学习,更多的是为了八卦休闲,获得对自己有用的资讯,反正对于用户有好处的事情,往往这些用户都会削尖脑袋往你的网站挤的,笔者就结合这个画饼原则,通过策划几次对自己用户有益的活动,不仅仅提成了新地方论坛的人气,更是获得了第一批的忠诚用户。

  其实这个利益也不需要笔者投入一分钱,因为之前通过大量的营销,自己网站的人气已经初具规模了,虽然忠诚用户不多,但是以此来游说当地的商户,和商户合作的方式来推出活动,往往会得到商家的积极支持的,比如当地新开业的餐饮店往往会因为吸引新客户,会推出优惠券,这样笔者就和他们进行沟通,利用本地论坛的优势,来帮助他们推广,在获得大量优惠券的时候,再开始搞一个有奖征文:第一届家乡文化大赛活动,当获得第一名往往会获得超多的优惠券,这样就能够激发本地用户对家乡的热爱之情,同时也增加了对本地论坛的关爱之情,可谓是一举两得,同时参加有奖征文的用户,也因此获得不错的收益,商家也因此提升了知名度,完全是四赢的活动。

  以上就是笔者总结的地方论坛新站快速提升人气的方法,对于论坛来说,要的就是人气,如果一心的埋头搞内容,不懂得炒作,不懂得营销,再好的内容也得不到别人的赏识,而且通过营销,在获得大量人气的同时,这些新流量往往就顺带把自己增添网站内容的工作做了,所以笔者认为,搞论坛,就应该先从搞人气开始。本文来源:意外怀孕怎么办 http://www.lovegx.com/ A5首发,转载请注明,谢谢!


TAG:浅析 快速 提升地 方论坛 新站人 三种 方法 运营地 方论 站长 网站 网站推广 赚钱

C#中ArrayList 与 string、string[]数组 的转换

C#中ArrayList 与 string、string[]数组 的转换

1、ArrarList 转换为 string[] :

  ArrayList list = new ArrayList();

  list.Add("aaa");

  list.Add("bbb");

  //转换成数组

  string[] arrString = (string[])list.ToArray(typeof( string)) ;

  2、string[] 转换为 ArrarList :

  ArrayList list = new ArrayList(new string[] { "aaa", "bbb" });

  3、ArrayList 转换为 string :

  ArrayList list = new ArrayList();

  list.Add("aaa");

  list.Add("bbb");

  //转换成数组

  string str= string.Join(",", (string[])list.ToArray(typeof( string)));

  4、string 转换为 ArrayList :

  string str="1,2,3,4,5";

  ArrayList b = new ArrayList( str.Split(',') ) ;
TAG:

软文编写四个简单易行的步骤

软文编写四个简单易行的步骤

  搜索引擎的日益成熟对一个网站的外链质量提出了更高的要求。传统形式的论坛外链铺天盖地,泛滥成灾,但是已经远远达不到高质量外链的标准。而软文投稿这种新型的高质量外链形式越来越受到站长们的青睐。然而,软文投稿严格的审核制度又让站长们望而却步。今天本人在此介绍软文编写四个简单易行的步骤,希望能对大家有所帮助。

  1、列好提纲理清思路。列提纲的意义有两个:一是理清整篇文章的脉络,明确中心思想,防止在撰写的过程中出现跑题现象。二是可以对整篇文章进行细分,成文时可以对着提纲逐个突破,从而降低难度。提纲应该包含这几个部分:文章题目、主体内容的小标题、简单的开头和结尾。列出了一个完整的提纲,其实文章就已经完成了一半,因为文章的框架已经搭建起来了,接下来的润色和修改都是在这个框架的基础上完成的。

  2、写好开头引人注目。开头是最考验写作功底的一个部分。这一部分要求写得简洁凝练的同时又要涵盖完整的信息。在开头里必不可少的三个的信息包括:写作背景、文章中心思想、写作目的。这是文章开头最基本的三个元素。有能力的还可以加上一些美丽的辞藻和句子,以激发读者继续阅读的兴趣,同时应该避免口语化的语句。建议文章开头用3-5句话完成。

  3、展开小标题逐个突破。提纲中列出的小标题的内容是一篇文章的末梢部分,只要稍加展开把每一个标题的观点阐明就可以了。对于这些细节性的内容作者不必有过多的约束,可以更自由地发挥,必要时插入充实的例子。基本的要求是语句通顺,语言书面化以及观点明确。需要注意的是每个小标题应该是相互平行的关系,所以在篇幅上尽量不要相差太大。每个小标题用1-3句话展开即可。

  4、结尾稍加总结或补充。其实把每个小标题的内容充实基本上已经完成一篇软文了,结尾只需要作一个简单的总结或补充。一般常用的结尾有两种:一是与开头呼应再次凸显主题;二是做一些概括性的补充。与文章开头相比,结尾在语言和篇幅上可以相对简单些,无需添加过多华丽的修饰。

  软文的目的重在说理,而不是抒情,只需用简洁明了的语言把观点表达清楚即可。所以站长们大可不必把软文的难度夸大,只要多写多练,养成良好的成文习惯,写出一篇高质量软文并不是一件难事。最后祝大家在软文编写的道路上一帆风顺。

  本文由我运动网(http://www.wo-yd.com/)作者原创,转载请附带链接,谢谢。


TAG:软文编写步骤 站长 网站 网站推广 赚钱

Office 转换为PDF在本地测试可以,但到服务器不可以的解决办法

Office 转换为PDF在本地测试可以,但到服务器不可以的解决办法

Office 转换为PDF在本地测试可以,但到服务器不可以的解决办法

1,对COM组件的引用没有权限,

2,发布到IIS上的时候,站点的访问权限,登录用户不要使用来宾账户,要使用administrator管理员用户,


TAG:

aChartEngine图表显示(饼图、柱状图、折线图)

aChartEngine图表显示(饼图、柱状图、折线图)

由于项目需要,要用到图表显示,所以就上网查找了些资料,就找到了下面一张图,以及几个概念:

2.png

 

从图中可以看出,绘制一个图表,需要理解三个概念

1、ChartFactory

传入Renderer,Dataset的参数,然后用getXXXChartIntent(Context context,XYMutilpleSeriesRenderer,XYMutilpleSeriesDataset)方法进行图表的显示

2、XYMutilpleSeriesRenderer

用于进行绘制的设置,添加的Renderer对象,用于定义绘制的点集合设置,注意数量要和Dataset添加的XYseries一致!!!

3、XYMutilpleSeriesDataset

用于数据的存放,添加的XYseries对象,用于提供绘制的点集合的数据

下面是我学习之后的总结:

说白了,就三个东西,一个Intent,一个Renderer和一个Dataset。

Intent       就是要启动一个GraphicalActivity来显示图表用的,这个GraphicalActivity需要在manifest注册!

                  一般由 ChartFactory.get***ChartIntent获得,如下:

ChartFactory.getBarChartIntent(context, getBarDataset(),renderer, Type.DEFAULT);

Renderer 就是渲染器,设置图表显示的一些特征,比如图表的大小,标题,坐标轴的颜色,背景颜色等

DefaultRenderer renderer = new DefaultRenderer();       renderer.setBackgroundColor(Color.GRAY);// 背景颜色       renderer.setLabelsTextSize(25);// 标签文字大小        renderer.setChartTitle(&quot;手机系统&quot;);// 图表名称        renderer.setChartTitleTextSize(30);// 图表名称大小        renderer.setLegendTextSize(30);// 图标字体大小        renderer.setLegendHeight(100);// 图标文字距离底边的高度        renderer.setPanEnabled(false);//图表是否可以移动        renderer.setZoomEnabled(true);//图表是否可以缩放

Dataset    就是数据集,就是你自己要制作表的数据集

XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();   double[] data1 = { 19, 23, 23, 42, 25, 25, 17, 28, 39 };   double[] data2 = { 39, 43, 13, 12, 15, 35, 37, 18, 19 };   for (int i = 0; i &lt; 2; i++) {       CategorySeries series = new CategorySeries(&quot;测试数据&quot; + (i + 1));       if (i == 0) {           for (int j = 0; j &lt; data1.length; j++) {               series.add(data1[j]);           }       } else {           for (int j = 0; j &lt; data2.length; j++) {               series.add(data2[j]);           }       }       dataset.addSeries(series.toXYSeries());   }

源码附上:点击下载ShowChart.zip


TAG:

NewLife.Xcode 上手指南(三) 扩展属性的使用

NewLife.Xcode 上手指南(三) 扩展属性的使用

一、什么是扩展属性

 

很多ORM框架都支持类似这样的操作.以第一节的表为例,

image_thumb22

 

象这样的Subject对象中有TeacherID的一般都是这样用

            Subject subject = Subject.FindByID(1);            string TeacherName = subject.Teacher.Name;

image

这样子的话,直接就关联到Teacher对象,而不是在操作TeacherID,这是怎么做的呢? XCode会帮我们自动完成吗?

 

首先我们肯定XCode是会帮我们自动来做这些扩展属性的.不信,大家可以看一下Teacher对象的Teacher.Biz.cs,里面已经有了这样的一段代码
image

 

XCode是如何帮我们绑定这些属性的呢?

1.根据约定胜于配置,与其我们配置来配置去,让很多人无从上手,不如约定规则,这样更方便大家使用.于是XCode代码生成器中的帮助里有这么几条规则

image

2.对于以上的规则,个人理解是,其他都好说,就那个字符串用nvarchar的话,个人还是喜欢用varchar,毕竟nvarchar后面会自动补一堆空格,每次操作字符串还要Trim一下很让人讨厌,毕竟我也没打算让我的项目跨库,该在MSSQL上就在MSSQL上至多就是2k和2005的区别吧(个人见解,还望大石头来指点)

3.第6条XCode会自动把数据库注释生成为代码注释,如果没有注释XCode也会尝试自动翻译(这里是连接Google翻译器? 我想XCode不会真的自己集成了个字典吧~~~)

4.想要自动生成扩展属性,从表的字段命名规则为(主表名+主表主键字段) ,这里有Subject表中存在TeacherID,又有Teacher表中以ID为主键 所以就能关联生成扩展属性.

5.似乎一些扩展查询是根据索引来的,如果你建立了以TeacherID和Subject.Name为主的索引,似乎XCode会在Subject表中生成一个这样的查询方法,FindAllByTeacherIDAndSubjectName(int teacherid,string subjectname);

6.最主要是请放弃那些无意义的前最tbl拉,tb拉,tab拉,tab_Student这些表名都不要用,直接用Student简洁明了

 

 

二、XCode中如何自己写扩展属性

就像上面的例子中,Teacher对象中已经有了扩展属性EntityList<Subject> Subjects;  但是Subject中似乎没有给我们自动生成扩展属性Teacher,这里我们就自己来写一个把,其实很简单

        #region 扩展属性        private Teacher _Teacher;        public Teacher Teacher        {            get            {                if (_Teacher == null && _TeacherID > 0 && !Dirtys.ContainsKey("Teacher"))                {                    _Teacher = Domain.Teacher.FindByID(_TeacherID);                    Dirtys["Teacher"] = true;                }                return _Teacher;            }            set { _Teacher = value; }        }        #endregion

image

这里解释下代码,为什么这么写扩展属性,根据楼主的理解,Dirtys是一个字典,标识这个Teacher有没有查过,为什么要用这个标志来标识呢,

应该是基于这样一种考虑,如果Teacher!=null那么肯定Teacher已经是查过了的,但是万一Teacher查过数据库了仍然是null,那么就需要一个标识来记录,我已经查过数据库拉,就算Teacher==null也不用再查拉,直接返回null吧,这样来减少数据库的查询,提高Cache命中率.

这样写好之后,就可以在前台利用subject.Teacher来获得教师的属性拉.

我们来测试下.

先给Teacher表加点数据,在这里发现个第一节的bug,Phone竟然用的是Int类型,025输入变成25,输入手机号超出int的范围,这是个bug如何修复呢,首先我们修改数据库,其次利用Xcode代码生成器针对这个表重新生成一下.然后覆盖项目中的2个文件,这里Teacher.My.cs就体现出优势了,我们自己的代码完全不怕误操作覆盖.

image

这里,我们替换修改下数据库,

image

生成下代码,同样是实体数据和实体业务都生成一遍,然后得到2个文件,覆盖之

image

image

继续我们的添加数据的操作,在subject里加点料.

image

在这里,我们加了3条数据,主要是测试XCode是不是如我们的猜想一样,命中Cache不用查数据库.

为了查看到SQL语句,请确保config里这2个开关已经打开,第二讲中我复制了这些语句,但是忘记打开开关了…jiong一个

image

  <appSettings>    <!--是?否?启?用?调獭?试?,?默?认?不?启?用?-->    <add key="XCode.Debug" value="true"/>    <!--是?否?输?出?SQL语?句?,?默?认?为aXCode调獭?试?开a关?XCode.Debug-->    <add key="XCode.ShowSQL" value="true"/>    <!--设Θ?置?SQL输?出?的?单蹋?独à目?录?,?默?认?为a空?,?SQL输?出?到?当獭?前°日?志?中D。£生Θ?产ú环·境3建¨议皑?输?出?到?站?点?外猘单蹋?独à的?SqlLog目?录?-->    <add key="XCode.SQLPath" value=""/>    <!--是?否?启?用?反ぁ?向ò工¤程ì,?默?认?不?启?用?。£反ぁ?向ò工¤程ì可é以?实害?现?通?过y实害?体?类え?反ぁ?向ò更ü新?数簓据Y库a结á构1-->    <add key="XCode.Negative.Enable" value="true"/>  </appSettings>我不得不说,我的代码着色器对中文支持很烂哎````

三、开始测试

        直接建立一个新的页面,叫test.aspx来做今天的测试吧~~~我已经从7点半写到8点40了...还没结束呢...我已经不想写完整的例子了...拿个页面做个简单测试吧..

image

        protected void Page_Load(object sender, EventArgs e)        {            Domain.Subject subject1 = Domain.Subject.FindByID(1);            Response.Write(string.Format("第{0}个科目,科目名称:{1},任课老师:{2},任课老师办公室:{3},任课老师电话:{4}<br/>",                                         subject1.ID, subject1.Name, subject1.Teacher.Name, subject1.Teacher.Office,                                         subject1.Teacher.Phone));                        Domain.Subject subject2 = Domain.Subject.FindByID(3);            if(subject2.Teacher == null)            {                Response.Write(string.Format("第{0}个科目,科目名称:{1},任课教师为null",subject2.ID,subject2.Name));            }        }

如果没有配置SQLPath的话,可以直接在项目根目录下,有个log文件夹,然后以日期命名的txt就是SQL日志.可以进去查看到系统运行时下的SQL

image

最后我发现...我的猜想都错了....XCode初始化了所有的实体,然后全部从Cache命中.....初始化完了之后一次SQL都没下....

然后又发现,隔一段时间就会有2句Select * from teacher和subject ,估计应该是XCode的Cache更新时间到了,所以自动更新下最新的缓存.

XCode内部的实现我就不纠结了,基本猜测方向没错,具体怎么实现的,各位看官自行阅读XCode的源码吧.XCode是开源的哦...

 

本节就到这里,下一节我们介绍XCode的级联删除和更新. 下期再见~

 

本节Demo

http://dl.dbank.com/c0wyn9igvt

 

 

XCode上手指南系列:

NewLife.XCode 上手指南

NewLife.XCode 上手指南(二) 反向工程使用举例

 

 

NewLife论坛地址:

http://www.53wb.com

大石头博客:

http://www.cnblogs.com/nnhy/

NewLife.XCode开发资源目录

http://www.cnblogs.com/asxinyu/archive/2012/06/02/2532210.html


TAG:

前卫时尚女郎必备的6款个性夏季服饰(3)

前卫时尚女郎必备的6款个性夏季服饰(3)

前卫时尚女郎必备的6款个性夏季服饰。

 

 

 

 

 

 

 

中长款式,不仅可以做长款衬衫穿着也可做连衣裙穿十分随意所欲!修身的裁剪极其贴身,单穿或者搭配格纹底裤凹出混搭英伦型格!!

 

几何的纹样在视觉上有比较强的冲撞力,本款连衣裙对于款式上的设计比较的简约,宽松的腰部设计,单穿休闲风格,夹个腰带也能很好的收出要的腰身,裙子的长度也很干好,不会担心走光的问题,整体是一件很简约时尚气息的裙子,作为百搭款值得推荐!

()
TAG: 夏装连衣裙

后背的细节V领型结构设计,立刻提升性感指数,大爱的具节奏感的菱形几何图形,作为奢华的装饰艺术十分夺人眼球,无数个菱形格子拼接在一起与服装完美融合一体,令人重回摩登时代。创造出鲜明视觉跳跃感是最具活力的Fashion Icon!

 

想要展现你的美丽跟魅力,这款裙装当然是不二的选择。纯色裙装的简约设计和低调作风更能让你的气质发挥的淋漓尽致。这款裙装的两个了亮色,衬得肌肤完美无瑕,更能够让亲大秀完美肌肤和窈窕的身材,以此亮相,绝对立时成为众人眼中的焦点,让你的周末约会电力十足哟!

()
TAG: 夏装连衣裙

独特的狼纹印花雪纺面料是此款最独特的看点,吊带款式真是盛夏穿着率极高的降暑款式!胸前的荧光色花边更是极具潮味,搭配随意的荧光绿色系的凉鞋别有一番味道,怕晒的俏妞也可以搭配荧光绿色的防晒服也十分独特!

香肩锁骨的诱惑,凝脂玉肤的表演,暧昧的气息,不言而喻的流淌着,转身的一个眼神,嘴角那一抹浅笑,低调着躁动的心,音乐已经静止,时间此刻停留,所有的表情集中的到指尖,发梢,一触即发的热情。看那,完美的肩颈线条,时尚的金属装饰,性感火辣的裙长,妞们,轻一点敲他的心门哦。

 

()
TAG: 夏装连衣裙
TAG:夏装连衣裙

灯芯绒时尚单品 衬出气质不凡的你,爱美网服饰推荐9款灯芯绒单品

灯芯绒时尚单品 衬出气质不凡的你,爱美网服饰推荐9款灯芯绒单品

 灯芯绒时尚单品 衬出气质不凡的你


        OL气质灯芯绒豹纹装饰长袖衬衫

        这款衬衫,凸显女人味。修身的版型,加上肩部的垫肩处理,搭扣开襟,简单而时尚。衣摆呈A字版型,水洗色感美,外加领口豹纹修饰,与袖子相呼应,上身效果很好,略有弹性,很是范儿,又不显得浮夸。
 

 灯芯绒时尚单品 衬出气质不凡的你

  
        简约OL气质修身纯色灯芯绒长袖

        灯芯绒材质,触感柔软且舒适。色调十分好看,搭扣开襟的处理,简单而方便。修身的版型设计,凸显完美身形。胸前有小口袋的配置,无论是内搭还是单穿,都具有十足的魅力。


TAG:灯芯绒 秋装 女装 时尚服饰

大牌珠宝蝴蝶结 捕获女人心 (5)

大牌珠宝蝴蝶结 捕获女人心 (5)

  不知是出自哪个设计师的灵机,从蝴蝶演变成娇俏的蝴蝶结真是伟大的发明!无论是俏皮的少女还是成熟的少妇,蝴蝶结的设计永远是女人最倾心的图案!

Ruban Couture系列Ruban Couture系列

  香奈儿(Chanel)缎带蝴蝶结胸针Ruban Couture系列中钻石胸针以18K白金做主基调,镶嵌一颗椭圆形切割重2.5克拉主钻,周围配以1404颗总重6克拉白钻及1553颗总重7克拉黑钻。
 

蝴蝶结元素在她的服装设计中完美体现蝴蝶结元素在她的服装设计中完美体现

  设计师们的思路总是自由挥洒。说到蝴蝶就不能不说蝴蝶结,从蝴蝶结演变为缎带的设计又是如此巧妙自然。 香奈儿(Chanel)女士最擅长的服装设计元素就是缎带蝴蝶结。蝴蝶结元素在她的服装设计中完美体现。除了她的服装设计,香奈儿(Chanel)女士也将珠宝设计的可能性无限放大,她的蝴蝶结在任何材质的呈现下,都能翩然起舞。
 

香奈儿(Chanel)缎带蝴蝶结戒指香奈儿(Chanel)缎带蝴蝶结戒指


  香奈儿(Chanel)缎带蝴蝶结戒指Ruban Couture系列中钻戒以18K白金为基准,镶嵌一颗重0.5克拉主钻,与275颗总重1.5克拉白钻及568颗总重3.5克拉黑钻相得益彰。“我的珠宝就像围绕指尖的缎带般优雅流畅”香奈儿(Chanel)女士说。是的,她钻戒上的缎带如流苏般丝滑的质感,编织成层次繁复的蝴蝶结,柔美的线条衬托出细腻的精巧感,如结晶水滴般落在指尖,璀璨的细腻令人叹为观止。
 

蝴蝶结柔美可爱蝴蝶结柔美可爱

  香奈儿(Chanel)蝴蝶结柔美可爱,是很多女孩子非常喜爱的造型。在女人的日常生活中,蝴蝶结更是占有一席之地。在众多的造型单品中,发饰在女人身上是不可或缺的重要搭配。这里要推荐的是这枚香奈儿(Chanel)人造宝石蝴蝶结发夹。它来自香奈儿(Chanel)“巴黎-莫斯科”高级手工坊系列,虽说是仿钻镶嵌,但戴在头上同样熠熠生辉。延续着香奈儿(Chanel)女士对俄罗斯的情结,这款蝴蝶结发夹也充满着她所喜爱的俄罗斯贵族式的“斯拉夫”魅力,闪耀富丽并富有节庆气息。而时尚界的凯撒大帝Karl Lagerfeld更是别出心裁地将这款发夹装饰在发冠正前方,并引伸开两边的珍珠宝石饰链,雍容华贵之余带有压倒性气场。其实此款发夹本身已经足够闪耀,只需简简单单装饰在发髻侧边,就能点缀出梦幻华美的效果。喜爱蝴蝶结外型的女人一定爱不释手。
 

走柔美女人路线的迪奥(Dior)带来了不一样的浪漫惊喜走柔美女人路线的迪奥(Dior)带来了不一样的浪漫惊喜



 

黑珍珠的迷你胸针黑珍珠的迷你胸针


  迪奥(Dior)一向走柔美女人路线的迪奥(Dior)这次带来了不一样的浪漫惊喜。这款全新秋冬系列耳环以极具贵族式风情的乳白色水滴形宝石为主石,混搭沉稳的古铜质蝴蝶结底座,甜美和酷感对冲,更让首饰本身的美妙情怀提升。
 

Dior Angelique蝴蝶结Dior Angelique蝴蝶结
硬材质的造型硬材质的造型

  以硬材质的造型设计出了流线型且柔软的蝴蝶结造型,功力颇深。
 

举世无双的钻石切割技术举世无双的钻石切割技术

多颗Monogram花朵形钻石镶嵌戒指上多颗Monogram花朵形钻石镶嵌戒指上



  路易威登(Louis Vuitton)的Monogram花纹就像LV品牌的logo一样可以说是品牌的代表作,无论是品牌经典的皮包,皮夹上都能找到它的身影。为了能坚持一贯的经典,路易威登(Louis Vuitton)使出了绝招:举世无双的钻石切割技术。以Monogram花朵形状获取灵感,并采用前所未有的方式切割美钻。这种切割方法可以使每一颗钻石均呈现出一朵Monogram花朵形状。值得称奇的是,这样的切割方式会使钻石散发出更完美的明亮度。曾被数学家计算出以切割面数著称的圆形明亮式切割(Brilliant Cut)也不过58面之多。而以Monogram花朵形状切割钻石的面数介于61和76面之间,如此珍贵的钻石被镶嵌在大师级精细做工的珠宝上,定能闪烁出无尽的光芒。
 

Mikimoto白色南洋珠钻石Mikimoto白色南洋珠钻石

  Mikimoto这一季的Mikimoto白色南洋珠钻石以及粉红宝石系列包括多款设计独特的胸针和项链,全部由Mikimoto的顶级设计师设计。新产品除了在主色调上依然沿袭了Mikimoto的粉色和白色,其红宝石更是被变幻地点缀在钻石蝴蝶结之中,多颗闪耀排钻打造的精致蝴蝶结与柔美珍珠交相辉映,珍珠的细腻与钻的奢华,恰是爱心亦奢华的最佳展现。
 

Mikimoto钻石粉红宝石胸针Mikimoto钻石粉红宝石胸针

  Mikimoto钻石粉红宝石胸针还是采用了晶莹流动的排钻和粉色红宝石,这款蝴蝶结胸针更添加了爱心的设计,甜腻印记不言而喻。
 

Mikimoto全新奢华珍珠金胸针Mikimoto全新奢华珍珠金胸针

 
  这枚蝴蝶结胸针,说它是珠宝,更像是一抹飘逸的风情!夸张的设计,淡雅的颜色,这种矛盾的对冲使得这款胸针既不过于甜美,又有设计感。下方的蝴蝶结设计也是点睛之笔。 如此流动而飘逸的珍珠金胸针,你是否觉得很吸引人?
 

Pearl Fantasy系列的蝴蝶结形发夹Pearl Fantasy系列的蝴蝶结形发夹Pearl Fantasy系列的蝴蝶结形发夹粉色蝴蝶结



  Pearl Fantasy系列的蝴蝶结形发夹富有浓浓的日式公主风。此系列的发夹以Swarovski水晶和珍珠制造,凸出系列的玩味创意。同系列有四种不同颜色适合不同气质的美眉,除了大热的粉红色,还备有象牙白、熏衣草及暗灰色的选择。
 

TiffanyTiffany
 产自坦桑尼亚的一种耀眼的蓝色宝石产自坦桑尼亚的一种耀眼的蓝色宝石


  举世闻名的蒂芙尼公司一直追求原料的卓越品质。从上世纪起就开始采用上好的彩钻及彩宝进行首饰创作。1969年,蒂芙尼公司开始使用坦桑石,这是原产自坦桑尼亚的一种耀眼的蓝色宝石。
 

黄金和钻石打造而成的精妙胸针黄金和钻石打造而成的精妙胸针

Van Cleef &Arpels蝴蝶结胸针Van Cleef &Arpels蝴蝶结胸针

Van Cleef &Arpels蝴蝶结戒指Van Cleef &Arpels蝴蝶结戒指



  Van Cleef &Arpels于1945年制作的古董级蝴蝶结胸针是梵克雅宝脍炙人口的代表作。 在这次MOCA的Van Cleef &Arpels臻品展中,我有幸看到了这枚以黄金和钻石打造而成的精妙胸针。它精湛的镂空的工艺让我折服,可以让黄金呈现出如此丝般的光泽和蕾丝的质地。除了这枚大家熟知的款式,这次展览还展出了同系列不同样式蝴蝶结蕾丝胸针,它们同时展现在我眼前的时候,一股温柔自然的气息扑鼻而来。
 

OXETTE不规则蝴蝶结胸针OXETTE不规则蝴蝶结胸针


  OXETTE不规则蝴蝶结胸针 作旧的效果为它增添了几分古董气息,可以作为白色衬衫领口的小心思或是礼帽中的小细节。 近年来,不规则蝴蝶结首饰大行其道。因为不规则的蝴蝶结带有设计师的巧思,戴上这样的首饰不仅有淑女范,更略带几分俏皮。
 

Grosse 白珐琅蝴蝶结胸针Grosse 白珐琅蝴蝶结胸针

  Grosse 白珐琅蝴蝶结胸针 用钻石和白珐琅制成的双色蝴蝶结,曼妙的曲线和色彩将设计师的幻想化做美妙的珠宝圆舞曲。
 

Montblanc Bouquet玫瑰花和蝴蝶结造型项链Montblanc Bouquet玫瑰花和蝴蝶结造型项链

  Montblanc Bouquet玫瑰花和蝴蝶结造型项链 玫瑰花是浪漫情人节不可或缺的礼物!那动感的蝴蝶结呢?细细想来不管是贴心的商家还是借此表达爱意的情人,每样精心包装的礼物都会系上精巧的蝴蝶结! 这款玫瑰花蝴蝶结项链绝对充斥着节日的气氛!相信吗?只要准备这条丝带蝴蝶结项链就能成为表达爱意的最贴心选择!如果想不同以往,拥有一个梦幻惊喜的情人节,那么穿上你精心挑选的小礼服,戴着这条闪耀的项链,与他一同坐在幸福摩天轮上,把自己打扮成情人节礼物送给爱人,让整个秋冬充满温暖缤纷和幸福快乐的感觉。
 

狂野派蝴蝶结首饰狂野派蝴蝶结首饰

  狂野派蝴蝶结首饰 谁说淑女不能摇滚!谁说蝴蝶结不能粗矿!磨光技术打造的纯银蝴蝶结首饰,野性的粗链条与硕大的蝴蝶结搭配的妙趣横生,既俏皮甜蜜又不失摇滚的独特野性!

 绝代艳后项链colliermarguerite 绝代艳后项链colliermarguerite

  绝代艳后项链colliermarguerite玛丽安托瓦内特项链 蝴蝶结柔美可爱,是很多女孩子非常喜爱的造型,同时也是复古宫廷风格中最常见的元素之一。这款珍珠蝴蝶结项链极具少女情怀,走着温润儒雅的风格。蝴蝶结上珍珠的圆满色彩加上编织整齐的不规则蓝宝石,顿时使整条项链复古文艺起来。


TAG:蝴蝶结 首饰 珠宝 配饰