当柳上原的风吹向天际的时候...

真正的快乐来源于创造

  BlogJava :: 首页 :: 联系 :: 聚合  :: 管理
  368 Posts :: 1 Stories :: 201 Comments :: 0 Trackbacks

#

因为在click事件中,使用return false;语句,能让浏览器认为用户没有单击该链接,从而阻止该超链接跳转.
posted @ 2013-04-27 19:57 何杨 阅读(262) | 评论 (0)编辑 收藏

使高度自动,上部控制padding即可.
示例:
#XXX .XX .x{
      padding-top:20px;
      height:auto;
      ...
}

posted @ 2013-04-26 18:14 何杨 阅读(551) | 评论 (0)编辑 收藏

http://developer.51cto.com/art/201008/222367.htm

本文和大家重点讨论一下DIV高度自适应及注意问题,主要包括父div高度随子div的高度改变而改变和子div高度随父亲div高度改变而改变两种情况。

DIV高度自适应及注意问题

积累了一些经验,总结出一些关于div高度自适应的技巧,希望有助于大家,转载请标明出处,谢谢。

一、DIV高度自适应(父div高度随子div的高度改变而改变)

1、如果父div不定义height、子div均为标准流的时候,父div的height随内容的变化而变化,实现父div高度随子div的高度改变而改变。

代码: 

  1. <styletypestyletype="text/css"> 
  2. #aa{border:#000000solid5px}  
  3. #bb{border:#00ffffsolid5px;}  
  4. #cc{border:#0033CCsolid5px}  
  5. style> 
  6. <dividdivid="aa">父div  
  7. <dividdivid="bb">子divdiv> 
  8. <dividdivid="cc">子divdiv> 
  9. div> 

效果:IE、FF下一致

2、如果父div定义height,子div均为标准流的时候,在IE下父div的height随内容变化而变化,ff中则固定大小,如父div设置height:50px

代码: 

  1. <styletypestyletype="text/css"> 
  2. #aa{border:#000000solid5px;height:50px}  
  3. #bb{border:#00ffffsolid5px;}  
  4. #cc{border:#0033CCsolid5px}  
  5. style> 
  6. <dividdivid="aa">父div  
  7. <dividdivid="bb">子divdiv> 
  8. <dividdivid="cc">子divdiv> 
  9. div> 

IE效果

FF下效果

3、如果子div使用了float属性,此时已经脱离标准流,父div不会随内容的高度变化而变化,解决的办法是在浮动的div下面,加一个空div,设置clear属性both

未加空div代码: 

  1. <styletypestyletype="text/css"> 
  2. #aa{border:#000000solid5px;}  
  3. #bb{border:#00ffffsolid5px;float:left}  
  4. #cc{border:#0033CCsolid5px;float:left}  
  5. style> 
  6. <dividdivid="aa">父div  
  7. <dividdivid="bb">子divdiv> 
  8. <dividdivid="cc">子divdiv> 
  9. div> 

IE效果:

FF效果:

修改后代码: 

  1. <styletypestyletype="text/css"> 
  2. #aa{border:#000000solid5px;}  
  3. #bb{border:#00ffffsolid5px;float:left}  
  4. #cc{border:#0033CCsolid5px;float:left}  
  5. style> 
  6. <dividdivid="aa">父div  
  7. <dividdivid="bb">子divdiv> 
  8. <dividdivid="cc">子divdiv> 
  9. <divstyledivstyle="clear:both">div> 
  10. div> 

修改后效果:IEFF一致

4.另类的DIV高度自适应
原理:
padding-bottom将列拉长变的一样高,而负的margin-bottom又使其回到底部开始的位置,同时,溢出部分隐藏掉了。此方法必须加文档信息才能正常显示
代码: 


  1.  
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
  3. <htmlxmlnshtmlxmlns="http://www.w3.org/1999/xhtml"> 
  4. <styletypestyletype="text/css"> 
  5. #aa{border:#000000solid5px;overflow:hidden;}  
  6. #bb{border:#00ffffsolid5px;float:left;  
  7. padding-bottom:100000px;margin-bottom:-100000px;}  
  8. #cc{border:#0033CCsolid5px;float:left;  
  9. padding-bottom:100000px;margin-bottom:-100000px;}  
  10. #dd{float:left}  
  11. style> 
  12. <dividdivid="aa"> 
  13. <dividdivid="bb">子divdiv> 
  14. <dividdivid="cc">子divdiv> 
  15. <dividdivid="dd">子div<br/><br/><br/><br/><br/>div> 
  16. div> 
  17.  

效果:


二、DIV高度自适应(子div高度随父亲div高度改变而改变)

在有边框的情况下,你会发现同一个div,在IE下的高度和在FF下的高度是不一样的,比如你设置了高度为100px的div,边框是 border:5px;IE的高度是5+5+空白区域=100px,而FF下高度是100px的div是不包括高度的,只是空白区域的高度,如下图黑框的 部分:


黑框的上方是对齐的,但是设置了同样的高度,效果却不一样,代码如下:

  1. <styletypestyletype="text/css"> 
  2.  
  3. #aa{border:#000000solid5px;height:100px;}  
  4.  
  5. #bb{border:#00ffffsolid5px;float:left;height:100%}  
  6.  
  7. #cc{border:#0033CCsolid5px;float:left}  
  8.  
  9. style> 
  10.  
  11. <dividdivid="aa"> 
  12.  
  13. <dividdivid="bb">子divdiv> 
  14.  
  15. <dividdivid="cc">子divdiv> 
  16.  
  17. div> 

如果没有设置边框,完全没有高度不一致的情况,子div适应父div很简单,如上面代码,只是在子div加了height:100%属性即可。如果 设置了边框,可以把子div的高度设置为比父div小上下边框高度的值,比如在此例中,可把#bb中height改为100-5-5=90px,结果在 IE和Mozilla中显示一致。

有一点要注意,如果父div是body的话,也就是说一个body套了一个div,让div适合body的大小的,必须设置body的高度才能实现子div随body改变而改变,body{height:100%}

posted @ 2013-04-25 16:18 何杨 阅读(274) | 评论 (0)编辑 收藏

适用于IE和FF

父Div中设置
    text-align:center;

子Div中设置:
    margin-left:auto:
    margin-right:auto;

    marigin:0 auto;

posted @ 2013-04-22 18:13 何杨 阅读(10252) | 评论 (1)编辑 收藏

select * from SYSCAT.REFERENCES  where constname = 'FK_SRT_ASSIGNMENTS_SMT_RESOURCES_01'
posted @ 2013-04-22 15:23 何杨 阅读(883) | 评论 (0)编辑 收藏

将一个字符串存入数据库并显示出来是一项简单任务,当字符串长度较短(新闻级别)时确实如此.
然而量变引起质变,当字符串长度增加到一定程度(小说级别)时,原有的对简短字符串的处理流程就需要做出一些变化了.下文将讨论这些变化的细节.

一.Web系统的基本情况
以下是某Web系统的基本情况:
前台JS框架:jQuery1.7.2 它确实贴心,比Dojo强,write less do more真不是空话
前后台信息传递方式:全部为Ajax异步处理 拒绝form提交
控制器:Spring3 MVC 很好 SpringMVC终将动摇Struts1/2的低位
Mapping:Hibernate3.2(C),SpringDAO(RUD)
后台DB:MySql5.2 它确实小巧方便,如果Oracle DB2跑在我的T410上那就开不了别的程序了

二.长文本向后台的传递
Web前台向后台传递数据的方式有get和post两种,它们之间有一些差别.就本文涉及的场景来说,差别主要在数据量的大小上,GET方式对传输的数据有大小限制,通常不能大于2KB;而使用POST方式传递的数据量比GET方式大得多,理论上不受限制.因此我采用了POST方式.
传递代码如下:
    var url='wisdom/add.do';

    $.post(
        url, 
        {title:
encodeURIComponent($("#title").val()),concept:
encodeURIComponent(
$(
"#concept").val())},
        function(data,textStatus){    
            
var status=$(data).find("status").text();
            
            
if(status=="ok"){
                ...

            }
            
else{
                
var text=$(data).find("text").text();
                alert(text);
            }
        }
    );
以上代码中,concept就是在textarea中的长文本,理论上长度是无限的,但实际应用中会受到数据库字段的限制.

三.服务器的设置
POST提交有长度限制,当超过时将会出错,可以配置maxPostSize参数来改变大小。
<Connector port="8080" protocol="HTTP/1.1"  connectionTimeout="20000"  redirectPort="8443" maxPostSize="0"/>
当设置为零时,就没有长度限制了.

四.长文本在DB中的存储
首先需要考虑的数据库的字段,一般的varchar肯定是不够了;clob/blob容量是够,但查询时需要取出来转化一下,而这样速度上就受限了;一向比较贴心的MySql提供了一个LONGTEXT类型,它可以容纳4294967295byte的文字,而在使用上又如同文本一样,这成了我的首选,在后来的实际测试中,我发现它存储80万个汉字是没有问题的,100万也行,这就已经满足我的需求了,因此更大的测试没有再进行.
这个Web系统CRUD处理中,C是通过Hinernate完成的,因此在hbm.xml中进行设置就好了.
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    
"-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping package="com.ibm.heyang.domain">
    
<class name="Wisdom" table="collections_wisdom">
        
<id name="id" column="ID" >
            
<generator class="increment"/>
        
</id>
        
        
<property name="title" column="title" not-null="true"/>
        
<property name="concept" type="text">
            
<column name="concept" not-null="true" length = "16777216" />
        
</property>
    
        
<property name="conceptLength" column="conceptLength" />
        
<property name="addUserId" column="addUserId" />        
        
<property name="modifyTime" column="modifyTime"/>        
    
</class>
</hibernate-mapping>
以上粗体部分就是大文本字段的设置细节.
由于Hibernate是采用PreparedStatement,因此concept不需要进行转义和其它特殊处理.这给检索也带来了不少方便.

五.长文本的检索
由于插入数据库的文本就是原文,所以检索就是常规的检索,无须赘述.

六.长文本向前台的传递前的包装
在这个Web系统中,后台向前台传递的数据是以XML的型式往回传的,前台JS得到后再解析出来.
但长文本有一个特殊的地方就是内容无限制,比如违反XML规则的字符如<>等,这里就需要把它放在CDATA块里包起来后再向前传递.
如下:
        StringBuilder sb=new StringBuilder();
        
        sb.append(
"<title><![CDATA[");
        sb.append(StringUtils.isBlank(title)
?"-":title);
        sb.append(
"]]></title>");
                        
        sb.append(
"<concept><![CDATA[");
        sb.append(concept);
        sb.append(
"]]></concept>");
如果不这样处理一下,前台js就可能解析XML出错.

七.长文本的显示

将长文本显示给用户看可以采用textarea显示和网页显示,如果是前者那就没有特殊处理,直接放进去就行了,文本格式和存储前会一样,只是用户看起来不方便,需要用滚动条拖来拖去;而网页方式就好多了,用户舒适度好很多,但要求我们进行一些特殊的处理.

首先是CSS设置,这是为了保证文本不把DIV撑开,设置如下:
#concept{
    width
:900px;
    max-width
:900px;
    min-width
:900px;
    display
:inline-block;
    padding-top
:10px;
    
    color
:#7a7a7a;
    font-size
:14px; 
    font-weight
:normal;
    
    text-align
:left;
    
    word-wrap
: break-word; 
    word-break
: normal;
    
    -moz-binding
: url('./wordwrap.xml#wordwrap');/*FF only*/
    word-break
:break-all;
    white-space
: moz-pre-wrap;
}

其次,需要对文本处理一下,这样做的目的是把<>转义,另外把\n转化成<br>,空格转化成&nbsp;等,如果不这样做,文字会乱,阅读起来很觉不便.
以下是转化函数:
function makeText2Html(originalText){
    
    originalText
=originalText.replace("<","&lt;");
    originalText
=originalText.replace(">","&gt;");
    originalText
=originalText.replace(/\n/g,"<br/>");
    originalText
=originalText.replace(/\t/g,"&nbsp;&nbsp;&nbsp;&nbsp;");
    originalText
=originalText.replace(" ","&nbsp;");
    
    
return originalText;
}
以下是把XML中的长文本放到页面中:
$("#concept").html(getFormatedText($(data).find("concept").text()));

如果IE ONly的话,也可以把文本用<pre>标签包起来,这样就不用makeText2Html的辅助了.

以上就是对长文本的存储和显示的一些处理,由于作者水平有限,上文只是我的孔见,不当之处还请指出.
posted @ 2013-04-19 16:11 何杨 阅读(651) | 评论 (5)编辑 收藏

转载自:
http://www.cnblogs.com/Mygirl/archive/2012/03/27/2419971.html


     什么是HTTP长连接? HTTP长连接,与一般每次发起http请求或响应都要建立一个tcp连接不同,http长连接利用同一个tcp连接处理多个http请求和响应,也叫 HTTP keep-alive,或者http连接重用。使用http长连接可以提高http请求/响应的性能。

     使用http长连接有很多好处,包括:
更少的建立和关闭tcp连接,可以减少网络流量。 因为已建立的tcp握手,减少后续请求的延时。 长时间的连接让tcp有充足的时间判断网络的拥塞情况,方便做出下步操作。

    这些优点在使用https连接时更显著。可以减少多次建立高消耗的SSL/TLS握手。 在HTTP/1.1中,默认使用的是长连接方式。客户端默认服务端会保持长连接,即便返回错误响应;除非明确指示不使用长连接。同时,协议中也指定了客户 端可以发送关闭信号到服务端来关闭TCP连接。

    怎样是连接可以重用? 因为TCP是基于流的协议,所以HTTP协议需要有一种方式来指示前一个响应的结束和后一个响应的开始来重用已建立的连接。所以,它要求连接中传输的信息 必须有自定义的消息长度。自定义消息长度可以通过设置 Content-Length 消息头,若传输编码的实体内容块,则每个数据块的标明数据块的大小,而且响应体也是以一个特殊的数据块结束。

    若中间存在代理服务器将会如何? 因为长连接仅占用一条传输链路,所以代理服务器能否正确得与客户端和服务器端(或者其他代理服务器)发送长连接或非长连接的信号尤为重要。但是HTTP的 客户端或服务器端来看,代理服务器对他们来说是透明的,即便长连接是需要关注的。

     当前的JDK如何处理Keep-Alive? JDK同时支持HTTP/1.1 和 HTTP/1.0。 当应用程序读取完响应体内容后或者调用 close() 关闭了URLConnection.getInputStream()返回的流,JDK中的HTTP协议句柄将关闭连接,并将连接放到连接缓存中,以便后 面的HTTP请求使用。 对HTTP keep-Alive 的支持是透明的。但是,你也可以通过系统属性http.keepAlive和http.maxConnections以及HTTP/1.1协议中的特定的 请求响应头来控制。控制Keep-Alive表现的系统属性有:
    http.keepAlive=<布尔值> 默认: true 指定长连接是否支持
    http.maxConnections=<整数> 默认: 5 指定对同一个服务器保持的长连接的最大个数。
    影响长连接的HTTP header是: Connection: close 如果请求或响应中的Connection header被指定为close,表示在当前请求或响应完成后将关闭TCP连接。

     JDK中的当前实现不支持缓存响应体,所以应用程序必须读取完响应体内容或者调用close()关闭流并丢弃未读内容来重用连接。此外,当前实现在清理连接时并未使用阻塞读,这就意味这如果响应体不可用,连接将不能被重用。

    JDK1.5中的新特性 当应用接收到400或500的HTTP响应时,它将忽略IOException 而另发一个HTTP 请求。这种情况下,底层的TCP连接将不会再保持,因为响应内容还在等待被读取,socket 连接未清理,不能被重用。应用可以在捕获IOException 以后调用HttpURLConnection.getErrorStream() ,读取响应内容然后关闭流。但是现存的应用没有这么做,不能体现出长连接的优势。为了解决这个问题,介绍下workaround。
当响应体的状态码大于或等于400的时候,workaround 将在一定时间内缓存一定数量的响应内容,释放底层的socket连接来重用。基本原理是当响应状态码大于或等于400时,服务器端会发送一个简短的响应体来指明连接谁以及如何恢复连接。

   

下面介绍一些SUN实现中的特定属性来帮助接收到错误响应体后清理连接: 主要的一个是: sun.net.http.errorstream.enableBuffering=<布尔值> 默认: false

     当上面属性设置为true后,在接收到响应码大于或等于400是,HTTP 句柄将尝试缓存响应内容。释放底层的socket连接来重用。所以,即便应用不调用getErrorStream()来读取响应内容,或者调用 close()关闭流,底层的socket连接也将保持连接状态。
下面的两个系统属性是为了更进一步控制错误流的缓存行为: sun.net.http.errorstream.timeout=<int> in 毫秒 默认: 300 毫秒

     你如何做可以保持连接为连接状态呢? 不要忽略响应体而丢弃连接。这样会是TCP连接闲置,当不再被引用后将会被垃圾回收器回收。 如果getInputStream()返回成功,读取全部响应内容。如果抛出IOException ,捕获异常并调用getErrorStream() 读取响应内容(如果存在响应内容)。
即便你对响应内容不感兴趣,也要读取它,以便清理连接。但是,如果响应内容很长,你读取到开始部分后就不感兴趣了,可以调用close()来关闭流。值得注意的是,其他部分的数据已在读取中,所以连接将不能被清理进而被重用。
下面是一个基于上面建议的代码样例:

try
    URL a = new URL(args[0]); 
    URLConnection urlc = a.openConnection(); 
    is = conn.getInputStream(); 
    int ret = 0; 
    while ((ret = is.read(buf)) > 0) { 
      processBuf(buf); 
    }
    // close the inputstream
    is.close();
} catch (IOException e) {
    try {
        respCode = ((HttpURLConnection)conn).getResponseCode();
        es = ((HttpURLConnection)conn).getErrorStream();
        int ret = 0;
        // read the response body
        while ((ret = es.read(buf)) > 0) {
            processBuf(buf);
        }
        // close the errorstream
        es.close();
    } catch(IOException ex) {
        // deal with the exception
    }
}

  如果你预先就对响应内容不感兴趣,你可以使用HEAD 请求来代替GET 请求。例如,获取web资源的meta信息或者测试它的有效性,可访问性以及最近的修改。下面是代码片段:

URL a = new URL(args[0]);
URLConnection urlc = a.openConnection();
HttpURLConnection httpc = (HttpURLConnection)urlc;
// only interested in the length of the resource
httpc.setRequestMethod("HEAD");
int len = httpc.getContentLength();
posted @ 2013-04-10 21:16 何杨 阅读(294) | 评论 (0)编辑 收藏

看到很多童鞋讨论有关美剧学习英语到底有没有用,以及用哪部美剧练习,我在这里想说这只是一个参考,世界上没有绝 对的事情,究竟有没有用看个人,想必在校内上至少是高中生,大部分是大学生吧,如果你到现在还无法衡量自己的英语水平或者依旧被英语牵着鼻子走,我只能说 我很抱歉,我觉得这不仅是个人的悲哀更是中国教育的悲哀。如果你到现在连自己基本的评判标准的话,即使存在完美无缺的日志,你依旧照搬照抄,不适合自己的 实际情况,那一切皆为徒劳。就算这是学习英语的一条途径,有几个人能真的照着做呢?

  1. 不是所有的美剧都适合学英语

   如果喜欢看如《24小 时》这样的动作片, 那你基本会讲一口流利的”呯”"轰”"啊”之类的开枪爆炸声英语.如果你喜欢看如《豪斯医生》这种专业性很强的片子,那你基本会讲一些如 MRI,CT,Tumor之类的连自己都不明白的江湖郎中英语.如果看的是《越狱》,基本不用举手,别人就知道你是黑手党的了.不是所有剧都合适的,用来 学习的美剧,是要有一定对话量,生活化的,平民化的片子.   2. 开着字幕看是没有前途的

  很 多人喜欢开着字幕看,觉得会有参照更有帮助,其实这是在拖你的后腿.就像很多人结婚,喜欢找个比自己丑的伴娘,以为这样自己就进步了,事实上是被拖下水 了.中文是母语,对我们的眼球来说有无比强大的吸引力,只要在那里,你一定会看,就像放个美女在眼前,男人一定会看,不看的可能是老婆在一边,或是他爱人 也是个男人.一般人永远会不自觉通过中文字幕理解英语,而不是通过听懂-理解-记忆-重复,这样的过程学到英语.

  3.看一遍是不够的

   看 一遍根本不能叫学英语,充其量只能叫娱乐.如果是抱着学习的目的,必须反复看,精听,理解句子词语的意思,为我所用才行.如果看一遍,基本你就被情节彻底 打败了,或哭或笑,反复思考自己该拥有<HEROES>里的哪种超能力,担心下集可以下载前的日子该怎么过,哪还有心思管学英语这码事,哪怕 讲 的是柬埔寨语都无所谓.所以通过看个几遍,基本到了对剧情已经免疫的程度,如看老友记看到已经笑不出来了,那差不多可以洗干净耳朵仔细听了.

  给大家推荐几部我最喜欢用来正常学英语的美剧:

  1. 初级:Friends

  Friends是经典中的经典,对于英语初级水平的朋友来说,是突破发音和对话交流最好的美剧.整个剧都是人物间谈话,而且都很简短,没有长句,词汇非常简单,基本是plain english的典范.我发觉自己的英文有明显的提升,就是在看这部剧多达十遍后.

  2. 中级:Desperate Housewives

  这部剧讲述的是美国中产阶级的故事,所以用词和语言非常标准,相对于Friends有更多的长句和表达,非常适合中级水平的朋友学习.

  3. 高级:The West Wing

  这是关于美国白宫的政治题材美剧,整个剧基本都是对话,而且语速非常快,充斥着辩论和演讲,词汇也非常高级,听起来很有难度.如果能把这部剧都搞透了,真可以谢谢十八辈祖宗了.

通 过看美剧的方法,在2个月的时间内将《欲望都市》看了4至5遍,托福听力由原先的20分的水平升至了满分。她的做法就是,找到一部自己很喜欢的美剧,然后 先看一遍带中文字幕的。了解了大致的剧情,满足了自己休闲娱乐的好奇心,然后第二,三遍的时候开始看带双语字幕的,遇到不认识的生词,就停下来查一查,然 后记录。这样虽然比较费时,但是相比死气沉沉地不停地听抄听写,已经要生动很多。经过一段时间的积累,已经记了满满一本的生词和句型。这个时候,再去看第 四遍和第五遍,完全脱离拐杖,不带中英字幕。经过前面的积累,这时候再看情节已经轻松很多,并且能够深入理解每个人物在说这句对白时候的动机和理由,对语 言本身的理解也更深入了一步。于此同时,进行一下跟读。比如,听到一个人物的口语很好听,发音标准优雅,就刻意地进行一下模仿,体会一下她的语音、语调、 重音、节奏。这样在训练了听力的前提下,口语水平也会有大幅度地提升。要知道美剧当中的对白和旁白是最好的口语学习范本。

在看美剧学习语 言的时候要注意些什么?首先,注意发音。对于任何一门语言,语音是基础,它不仅包括单词的发音,还包括真实交际中词汇、习语的连读、失爆、弱化、浊化、重 音、缩读等一系列的音变形式。至于语调节奏,则是地道流利表达英语的润滑剂,没有接触过地道的外国人,没有和他们有过面对面的交谈,是很难感受到语调节奏 在表达思想中的巨大作用和强大震撼力的。因此要仔细地体会美剧之中,人物的发音和表达之中的语言习惯。其次,了解文化。语言是文化的载体,用词和句式使用 是否准确直接体现了对异国文化了解的程度。可以说,发音好其实只是与美国人的语言形似,如果能够掌握美国人的思维习惯和文化,用美国文化去思维,则可达到 神似的效果。这就是一种立体的学习方式,美剧则是这种学习方法最好的媒介。

一、准备好笔和纸,将笔放在鼠标旁边,将便笺放在屏幕和座椅之间,作好随时停顿和记录的预备动作。

二、只记录能引发自己内心感触和共鸣的语句和一些符合自身个性特色的句型及语法。

三、记录的时候最好不要分析思考和尝试记忆,待整个影片观看完毕之后,将统一回顾和整理。

四、一部章节或一部电影里面的典型句子和精彩对白记录完毕之后,一定要趁热打铁,想办法用上。(如通过写博客或者到英语角去操练。如果有参加培训班的话,一定不要放过任何能锻炼自己演讲口才的机会。)

五、 再告诉大家一个绝活:如果你发现了那种让自己百看不厌的经典英文影片,不妨通过全能音频转换通软件将它的MP3提取出来,然后到网站上下载完整的英文字 幕,再用LRC歌词编辑器将它做成同步显示歌词文本,放到自己的MP3或者电脑里,随时温习,处处操练。不知不觉这部影片的精髓尽入脑海,随时引用。从而 达到通过影视学英语的最终目的。


不少英语学习者都有这样的困惑:学了十几年的英语,通过了考试,能完全听懂标准语速的英语新闻广播,可就是听(看)不懂英语原版影视剧(无中文字幕),这使他们开始怀疑自己的听力能力。
    要解决这个问题,我们先来了解一下新闻英语和影视英语之间的区别。首先,两者在语体上有较大的区别。前者是书面语体的口头形式,用于正式的交际场合,经过 加工和润饰,比较文雅,是合乎标准的书面语言,因而使较多使用长句、复句、结构严谨的完整句。布局层次分明、逻辑关系严谨是它的主要特征。后者为口头语 体,以日常会话为基本形式,一般用于交际双方直接接触的场合,因而多使用短句、单句、省略句。随意性,不完整是它的主要特征。在英语学习过程中,我国的英 语学习者接触的绝大部分是书面语体。而在英语影视剧中,口头体的语言材料是最重要的特征,具体表现为口语中流行的惯用表达方式、俚语以...(未完)
posted @ 2013-04-08 21:48 何杨 阅读(231) | 评论 (0)编辑 收藏


阅读的时间:

1、早上5:30-6:00起床,有将近1小时的整块阅读时间,如果时间充足一点,会做些笔记.

2、包里放上7寸的阅读设备(以前是K3,这段时间换成NT),放上几十本排版不错的电子书,在有时间的时候看看,比如排队、等人、开会之类零散时间。

3、手机里放一些有声书,比如台湾的博客思听、每天八分钟、中医堂、百家讲坛,做车、做家务、身体锻炼时听听

4、睡前把所有事情都安排完,会拿本书在床上看上一会,然后睡觉。
5、所有读完第一遍,觉得不错的书,会开始读第二遍并做些笔记。
6、出差时如果周末有时间会找家环境好点的咖啡厅,看上半天或一天书。不出差如果周末有空闲时会去图书馆,带上笔记看上半天书,做个记录。
7、做飞机或动车时会准备二、三本纸制书,比较厚有些深度的那种,我发现自己在飞机上看书效果最好。看累了就做笔记或简评。
想多看点书的最有用的建议:就是关闭电脑、离开网络,有网络有电脑的地方永远会让你分心的
我看书效果最好的三个地方:飞机、图书馆、咖啡厅

-----------------------------------------------------------------------------------------------------------------------
总能在网上看到有人抱怨没有时间看书,在现在这个时代最影响注意力的东西就是网络,只要有了网络很容易浪费时间,不管是你用电脑、手机都是一样,点来点去,1个小时2个小时很快就没了,就在我在回答中说的,想多看点书最好的办法就是离开网络,下决心每天留出半小时或1小时的阅读时间,关电脑,关手机,开始看书,看完书做随手做些记录。

关于阅读设备:现在7寸的阅读器已经非常便宜了,K4和N2(Nook Simple Touch)也就700-800元左右,可以考虑买一个。放在包里,拷贝些电子书,有空的时间顺手就拿出来读一会。最好是E-Ink屏的,不要平板,平板什么都能做太容易分心了,我换成Nook Tablet之后,阅读的时间和数量要比K3少很多。

给个建议:最好不要在地铁或公交上用手机看书。颠簸中看小说、玩游戏,很容易引起视力功能尚未发育成熟的青少年视疲劳。一般来说,人们使用手机、平板电脑时,眼睛和屏幕的距离在20厘米左右,这样近距离且长时间地盯着屏幕看,容易使睫状肌产生疲劳,变成假性近视.,
在使用手持终端时,最好不要离屏幕太近,保持30厘米以上的距离最为适宜。同时尽量多眨眼,避免眼球过多地暴露在空气中,以减少眼部水分的蒸发。此外,应在休息时间经常站起来,活动活动颈部肌肉,最好找些有声书、Podcast或英语来听。

前二天在微博转的一句话:
每天花一点钟看10页有用的书,每年可看3600多页书,30年读11万页书。诸位,11万页书足可以使你成为一个学者了。可是,每天看三种小报也得费你一点钟的工夫;四圈麻将又得费你一点钟的光阴。看小报呢?还是打麻将呢?还是努力做一个学者呢?——胡适,纪念胡适先生逝世50周年。

就从今天开始培养你的阅读习惯吧,少上网、少玩会游戏,少聊天,少刷些豆瓣、微博,开始阅读。
posted @ 2013-04-06 22:37 何杨 阅读(199) | 评论 (0)编辑 收藏

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC 
    "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
    "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"
>
<hibernate-mapping package="com.ibm.heyang.XXX">
    
<class name="XXXClas" table="XXX_Table">
        
<id name="id" column="ID" >
            
<generator class="increment"/>
        
</id>
        
        
<property name="name" column="name" not-null="true"/>
        
<property name="content" type="text">
            
<column name="content" length = "16777216" />
        
</property>    
    
    
</class>
</hibernate-mapping>

以上length="16777216"
是关键,它会把字段对应到MySql的LONGTEXT类型.

以上是受到
http://sonyfe25cp.iteye.com/blog/830566
启发的.

posted @ 2013-04-02 23:18 何杨 阅读(5540) | 评论 (0)编辑 收藏

仅列出标题
共28页: 上一页 1 2 3 4 5 6 7 8 9 下一页 Last