??xml version="1.0" encoding="utf-8" standalone="yes"?>亚洲福利视频一区,青青青国产色视频在线观看国产亚洲欧洲国产综合 ,亚洲人成综合在线播放http://m.tkk7.com/jiafang83/zh-cnSun, 11 May 2025 07:04:46 GMTSun, 11 May 2025 07:04:46 GMT60如何解决安装oracle10g时先x件检查未通过http://m.tkk7.com/jiafang83/archive/2012/08/18/385724.htmljiafang83jiafang83Sat, 18 Aug 2012 05:38:00 GMThttp://m.tkk7.com/jiafang83/archive/2012/08/18/385724.htmlhttp://m.tkk7.com/jiafang83/comments/385724.htmlhttp://m.tkk7.com/jiafang83/archive/2012/08/18/385724.html#Feedback0http://m.tkk7.com/jiafang83/comments/commentRss/385724.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/385724.htmlҎQ打开控制面板Q选者添加硬?#8212;选择是,我已l连接了此硬Ӟ下一步选者最后一Ҏ加新的硬件设备,下一步选择 安装我手动从列表选者的gQ高U)Q下一步选者网l适配器,下一步选者Microsoft Loopback
Adapter,按向导提CZ一步就行了。完成以后打开你的|上d看看是不是多了一个网上连接(2Q,然后讄它的IP地址如?92.168.1.1.随便p了,q样在安装oracle的时候就可以用这一个假的网l来q接Q蒙骗一?oracle了。一定可以验证过?img src ="http://m.tkk7.com/jiafang83/aggbug/385724.html" width = "1" height = "1" />

jiafang83 2012-08-18 13:38 发表评论
]]>
Hibernate 3注释?/title><link>http://m.tkk7.com/jiafang83/archive/2009/07/26/288439.html</link><dc:creator>jiafang83</dc:creator><author>jiafang83</author><pubDate>Sun, 26 Jul 2009 06:00:00 GMT</pubDate><guid>http://m.tkk7.com/jiafang83/archive/2009/07/26/288439.html</guid><wfw:comment>http://m.tkk7.com/jiafang83/comments/288439.html</wfw:comment><comments>http://m.tkk7.com/jiafang83/archive/2009/07/26/288439.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/jiafang83/comments/commentRss/288439.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jiafang83/services/trackbacks/288439.html</trackback:ping><description><![CDATA[    摘自Q?a >http://article.pchome.net/content-330924.html</a><br /> <br />        在过dq里QHibernate不断发展Q几乎成为Java数据库持久性的事实标准。它非常强大、灵z,而且具备了优异的性能。在本文中,我们了解如何用Java 5 注释来简化Hibernate代码Qƈ使持久层的编码过E变得更松? <p>  传统上,Hibernate的配|依赖于外部 XML 文gQ数据库映射被定义ؓ一l?XML 映射文gQƈ且在启动时进行加载。创些映有很多ҎQ可以从已有数据库模式或JavacL型中自动创徏Q也可以手工创徏。无论如何,您最l将获得大量?Hibernate 映射文g。此外,q可以用工P通过javadoc样式的注释生成映文Ӟ管q样会给您的构徏q程增加一个步骤?/p> <p>  在最q发布的几个Hibernate版本中,出现了一U基?Java 5 注释的更为y妙的新方法。借助新的 Hibernate Annotation 库,卛_一ơ性地分配所有旧映射文g——一切都会按照您的想法来定义——注释直接嵌入到您的 Java cMQƈ提供一U强大及灉|的方法来声明持久性映。籍p动代码完成和语法H出昄功能Q最q发布的Java IDE也ؓ其提供了有力的支持?/p> <p>  Hibernate Annotationq支持新?EJB 3 持久性规范。这些规范旨在提供一U标准化?Java 持久性机制。由?Hibernate 3 q提供了一些扩展,因此您可以十分轻村֜遵从q些标准Qƈ使用 EJB 3 ~程模型来对 Hibernate 持久层进行编码?/p> <p>  现在Q让我们来动手用Hibernate Annotation?/p> <h3>安装 Hibernate Annotation</h3> <p>  要?Hibernate AnnotationQ您臛_需要具?Hibernate 3.2和Java 5。可以从 <a target="_blank"><u><font color="#0000ff">Hibernate 站点</font></u></a> 下蝲 Hibernate 3.2 ?Hibernate Annotation库。除了标准的 Hibernate JAR 和依赖项之外Q您q需?Hibernate Annotations .jar 文gQ?em>hibernate-annotations.jar</em>Q、Java 持久?API Q?em>lib/ejb3-persistence.jar</em>Q。如果您正在使用 MavenQ只需要向 POM 文gd相应的依赖项卛_Q如下所C:</p> <pre class="code"> ... <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate</artifactid> <version>3.2.1.ga</version> </dependency> <dependency> <groupid>org.hibernate</groupid> <artifactid>hibernate-annotations</artifactid> <version>3.2.0.ga</version> </dependency> <dependency> <groupid>javax.persistence</groupid> <artifactid>persistence-api</artifactid> <version>1.0</version> </dependency> ... </pre> <p>  下一步就是获?Hibernate 会话工厂。尽无需惊天的修改,但这一工作与?Hibernate Annotations有所不同。您需要?AnnotationConfiguration cL建立会话工厂Q?/p> <pre class="code">sessionFactory = new<br /> AnnotationConfiguration().buildSessionFactory(); </pre> <p>  管通常使用 <mapping>元素来声明持久性类Q您q是需要在 Hibernate 配置文gQ通常?hibernate.cfg.xmlQ中声明持久性类Q?/p> <pre class="code"><hibernate-configuration> <session-factory> <mapping class="com.onjava.modelplanes.domain.PlaneType" /> <mapping class="com.onjava.modelplanes.domain.ModelPlane" /> </session-factory> </hibernate-configuration> </pre> <p>  q期的许?Java 目都用了轻量U的应用框架Q例?Spring。如果您正在使用 Spring 框架Q可以?AnnotationSessionFactoryBean c轻村־立一个基于注释的 Hibernate 会话工厂Q如下所C:</p> <pre class="coce"><!-- Hibernate session factory --> <bean class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean" id="sessionFactory"> <property name="dataSource"> <ref bean="dataSource" /> </property> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">org.hibernate.dialect.DerbyDialect</prop> <prop key="hibernate.hbm2ddl.auto">create</prop> ... </props> </property> <property name="annotatedClasses"> <list> <value>com.onjava.modelplanes.domain.PlaneType</value> <value>com.onjava.modelplanes.domain.ModelPlane</value> ... </list> </property> </bean> </pre> <h3>W一个持久性类</h3> <p>  既然已经知道了如何获得注释所支持?Hibernate 会话Q下面让我们来了解一下带注释的持久性类的情况:</p> <p>  像在其他M Hibernate应用E序中一P带注释的持久性类也是普?POJO。差不多可以说是。您需要向 Java 持久?API Q?em>javax.persistence.*</em>Q添加依赖项Q如果您正在使用M特定?Hibernate的扩展,那很可能是 Hibernate Annotation E序包(<em>org.hibernate.annotations.*</em>Q,但除此之外,它们只是具备了持久性注释的普?POJO 。下面是一个简单的例子Q?/p> <pre class="code">@Entity public class ModelPlane { private Long id; private String name; @Id public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } </pre> <p>  正像我们所提到的,q非常简单。@Entity 注释声明该类为持久类。@Id 注释可以表明哪种属性是该类中的独特标识W。事实上Q您既可以保持字D(注释成员变量Q,也可以保持属性(注释getterҎQ的持久性。后文中用基于属性的注释。基于注释的持久性的优点之一在于大量使用了默认|最大的优点是 “惯例优先原则Qconvention over configurationQ?#8221;Q。例如,您无需说明每个属性的持久性——Q何属性都被假定ؓ持久的,除非您?@Transient 注释来说明其他情c这化了代码Q相对用老的 XML 映射文g而言也大q地减少了输入工作量?/p> <h3>生成主键</h3> <p>  Hibernate 能够地自动生成主键。Hibernate/EBJ 3 注释也可以ؓ主键的自动生成提供丰富的支持Q允许实现各U策略。下面的CZ说明了一U常用的ҎQ其?Hibernate 会Ҏ底层数据库来定一U恰当的键生成策略:</p> <pre class="code">@Id @GeneratedValue(strategy=GenerationType.AUTO) public Long getId() { return id; } </pre> <h3>定制表和字段映射</h3> <p>  默认情况下,Hibernate 会将持久cM匚w的名U映到表和字段中。例如,前一个类可以与映到以如下代码创建的表中Q?/p> <pre class="code">CREATE TABLE MODELPLANE ( ID long, NAME varchar ) </pre> <p>  如果您是自己生成q维护数据库Q那么这U方法很有效Q通过省略代码可以大大化代码维护。然而,qƈ不能满所有h的需求。有些应用程序需要访问外部数据库Q而另一些可能需要遵从公司的数据库命名惯例。如果有必要Q您可以使用 @Table ?@Column 注释来定制您自己的持久性映,如下所C:</p> <pre class="code">@Entity @Table(name="T_MODEL_PLANE") public class ModelPlane { private Long id; private String name; @Id @Column(name="PLANE_ID") public Long getId() { return id; } public void setId(Long id) { this.id = id; } @Column(name="PLANE_NAME") public String getName() { return name; } public void setName(String name) { this.name = name; } } </pre> <p>  该内容将映射C表中Q?/p> <pre class="code">CREATE TABLE T_MODEL_PLANE ( PLANE_ID long, PLANE_NAME varchar ) </pre> <p>  也可以用其他图和列的属性来定制映射。这使您可以指定诸如列长度、非I约束等详细内容。Hibernate支持大量针对q些注释的属性。下例中包含了几种属性:</p> <pre class="code"> ... @Column(name="PLANE_ID", length=80, nullable=true) public String getName() { return name; } ... </pre> <h3>映射关系</h3> <p>  Java 持久性映过E中最重要和最复杂的一环就是确定如何映表间的关系。像其他产品一P Hibernate 在该领域中提供了高度的灵zL,但却是以复杂度的增加Z仗我们将通过研究几个常见案例来了解如何用注释来处理q一问题?/p> <p>  其中一U最常用的关pd是多对一的关pR假定在以上CZ中每?ModelPlane 通过多对一的关p(也就是说Q每个飞机模型只与一U飞机类型徏立联p,管指定的飞机类型可以与七种飞机模型建立联系Q来?PlaneType 建立联系。可如下q行映射Q?/p> <pre class="code"> @ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE} ) public PlaneType getPlaneType() { return planeType; } </pre> <p>  CascadeType D?Hibernate 应如何处理联操作?/p> <p>  另一U常用的关系与上q关pȝ反:一对多再对一关系Q也UCؓ集合。在老式?Hibernate 版本中进行映或使用注释Ӟ集合令h头疼Q这里我们将要加以探讨,以您了解如何处理集合,例如Q在以上CZ中每?PlaneType 对象都可能会包含一?ModelPlanes 集合。可映射如下Q?/p> <pre class="code"> @OneToMany(mappedBy="planeType", cascade=CascadeType.ALL, fetch=FetchType.EAGER) @OrderBy("name") public List<modelplane> getModelPlanes() { return modelPlanes; } </pre> <h3>命名查询</h3> <p>  Hibernate 最优秀的功能之一在于它能够在您的映文件中声明命名查询。随后即可通过代码中的名称调用此类查询Q这使您可以专注于查询,而避免了 SQL 或?HQL 代码分散于整个应用程序中的情c?/p> <p>  也可以用注释来实现命名查询Q可以?@NamedQueries ?@NamedQuery 注释Q如下所C:</p> <pre class="code">@NamedQueries( { @NamedQuery( name="planeType.findById", query="select p from PlaneType p left join fetch p.modelPlanes where id=:id" ), @NamedQuery( name="planeType.findAll", query="select p from PlaneType p" ), @NamedQuery( name="planeType.delete", query="delete from PlaneType where id=:id" ) } ) </pre> <p>  一旦完成了定义Q您可以像调用其他M其他命名查询一h调用它们?/p> <h3>l束?/h3> <p>  Hibernate 3 注释提供了强大而精致的 APIQ简化了 Java 数据库中的持久性代码,本文中只q行了简单的讨论。您可以选择遵从标准q?Java 持久?APIQ也可以利用特定?Hibernate的扩展,q些功能以损失可UL性ؓ代h提供了更为强大的功能和更高的灉|性。无论如何,通过消除?XML 映射文g的需求,Hibernate 注释简化应用程序的l护Q同时也可以使您对EJB 3 有初步认识。来试试吧!</p> <img src ="http://m.tkk7.com/jiafang83/aggbug/288439.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jiafang83/" target="_blank">jiafang83</a> 2009-07-26 14:00 <a href="http://m.tkk7.com/jiafang83/archive/2009/07/26/288439.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Hibernate一对多双向annotation配置http://m.tkk7.com/jiafang83/archive/2009/07/26/288438.htmljiafang83jiafang83Sun, 26 Jul 2009 05:40:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/07/26/288438.htmlhttp://m.tkk7.com/jiafang83/comments/288438.htmlhttp://m.tkk7.com/jiafang83/archive/2009/07/26/288438.html#Feedback1http://m.tkk7.com/jiafang83/comments/commentRss/288438.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/288438.html摘自Q?/strong>http://www.javaeye.com/topic/95822

school和userMember是一对多关系Q?br />
SchoolInfo.java

 1import javax.persistence.CascadeType;   
 2import javax.persistence.Column;   
 3import javax.persistence.Entity;   
 4import javax.persistence.FetchType;   
 5import javax.persistence.GeneratedValue;   
 6import javax.persistence.Id;   
 7import javax.persistence.OneToMany;   
 8import javax.persistence.Table;   
 9import javax.persistence.Temporal;   
10import javax.persistence.TemporalType;   
11   
12import org.hibernate.annotations.Formula;   
13import org.hibernate.annotations.GenericGenerator;   
14   
15@Entity   
16@Table(name = "school_info")   
17public class SchoolInfo implements java.io.Serializable {   
18   
19    @Id   
20    @GeneratedValue(generator = "system-uuid")   
21    @GenericGenerator(name = "system-uuid", strategy = "uuid")   
22    private String id;//hibernate的uuid机制,生成32为字W串   
23   
24    @Column(name = "actcodeId", updatable = false, nullable = true, length = 36)   
25    private String actcodeId;   
26   
27    @Formula("select COUNT(*) from school_info")   
28    private int count;   
29   
30    @Temporal(TemporalType.TIMESTAMP)//不用set,hibernate会自动把当前旉写入   
31    @Column(updatable = false, length = 20)   
32    private Date createTime;   
33   
34    @Temporal(TemporalType.TIMESTAMP)   
35    private Date updateTime;// 刚开始我默认insertable=false,但会d出错提示如下:   
36    // Value '0000-00-00' can not be represented as java.sql.Timestamp   
37   
38    // mappedBy="school"q当于inverse=true,(mappedBy指定的是不需要维护关pȝ一?   
39    // 应该注意的是mappedBy值对应@ManyToOne标注的属?我刚开始写?schoolId",让我郁闷了好一?nbsp;
40    @OneToMany(mappedBy = "school", cascade = CascadeType.ALL, fetch = FetchType.EAGER, targetEntity = UserMember.class)   
41    // 用范性的?׃用targetEntity?nbsp;  
42    private List<usermember> users = </usermember>new ArrayList<usermember>();  </usermember> 
43       
44}
   
45

@GeneratedValue(strategy=GenerationType.AUTO)我们常用的自增长机制,我这里采用的是hibernate的uuid生成机制.
需要注意的是import javax.xx.Entity Q而不是org.hibernate.xx.Entity?/strong>
郁闷的是我上面用到@Formula,生成的sql竟然?select COUNT(*) from school_info as formula0_ from school_info schoolinfo0_,当然不能执行?L正解中~!!!!!!!!!

UserMember.java(前面引入的包已经贴过?下面׃贴了)
 1 @Entity   
 2 @Table(name = "teacher_info")//实体cd数据库表名不一致时,才用q个   
 3 public class UserMember implements java.io.Serializable {   
 4    
 5     @Id   
 6     @GeneratedValue(generator = "system-uuid")   
 7     @GenericGenerator(name = "system-uuid", strategy = "uuid")   
 8     private String id;   
 9    
10     @Column(updatable = false, nullable = false, length = 20)   
11     private String logonName;   
12        
13     @Temporal(TemporalType.TIMESTAMP)   
14     @Column(updatable = false, length = 20)   
15     private Date createTime;   
16    
17     @Temporal(TemporalType.TIMESTAMP)   
18     private Date updateTime;   
19    
20     @ManyToOne(cascade = { CascadeType.MERGE })   
21     @JoinColumn(name = "schoolId")   
22     private SchoolInfo school;   
23     //注意该类׃用声明schoolId属性了,如果不用@JoinColumn指明兌的字D?hibernate默认会是school_id.   
24    
25 }   



jiafang83 2009-07-26 13:40 发表评论
]]>
使用JAVAE序q接各种数据?/title><link>http://m.tkk7.com/jiafang83/archive/2009/07/20/287540.html</link><dc:creator>jiafang83</dc:creator><author>jiafang83</author><pubDate>Mon, 20 Jul 2009 14:31:00 GMT</pubDate><guid>http://m.tkk7.com/jiafang83/archive/2009/07/20/287540.html</guid><wfw:comment>http://m.tkk7.com/jiafang83/comments/287540.html</wfw:comment><comments>http://m.tkk7.com/jiafang83/archive/2009/07/20/287540.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/jiafang83/comments/commentRss/287540.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jiafang83/services/trackbacks/287540.html</trackback:ping><description><![CDATA[ <img src ="http://m.tkk7.com/jiafang83/aggbug/287540.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jiafang83/" target="_blank">jiafang83</a> 2009-07-20 22:31 <a href="http://m.tkk7.com/jiafang83/archive/2009/07/20/287540.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>深入出JSONhttp://m.tkk7.com/jiafang83/archive/2009/06/16/282496.htmljiafang83jiafang83Mon, 15 Jun 2009 17:03:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/06/16/282496.htmlhttp://m.tkk7.com/jiafang83/comments/282496.htmlhttp://m.tkk7.com/jiafang83/archive/2009/06/16/282496.html#Feedback0http://m.tkk7.com/jiafang83/comments/commentRss/282496.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/282496.html转蝲Q?a >http://www.cnblogs.com/Truly/archive/2006/12/31/608896.html

JSON定义

    JSON(JavaScript Object Notation) 是一U轻量的数据交换格式,易于阅读和编写,同时也易于机器解析和生成。它ZECMA262语言规范Q?999-12W三版)中JavaScript~程语言的一个子集?JSON采用与编E语a无关的文本格式,但是也用了cC语言Q包括CQ?C++Q?C#Q?JavaQ?JavaScriptQ?PerlQ?Python{)的习惯,q些ҎJSON成ؓ理想的数据交换格式?

JSON的结构基于下面两?br />

  • 1. "名称/?对的集合 不同语言中,它被理解为对?object)Q记?record)Q结?struct)Q字?dictionary)Q哈希表(hash table)Q键列表(keyed list){?
  • 2. 值的有序列表 多数语言中被理解为数l?array)
JSON使用Q?br />
JSON以一U特定的字符串Ş式来表示 JavaScript 对象。如果将hq样一UŞ式的字符串赋lQ意一?JavaScript 变量Q那么该变量会变成一个对象引用,而这个对象就是字W串所构徏出来的,好像有点拗口Q我们还是用实例来说明?

 q里假设我们需要创Z个User对象Qƈh以下属?/p>

  • 用户ID
  • 用户?
  • 用户Email

    您可以用以下JSON形式来表CUser对象Q?/p>

    {"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"};

    然后如果把这一字符串赋予一个JavaScript变量Q那么就可以直接使用对象的Q一属性了?/p>

    完整代码:

    <script>
    var User = {"UserID":11, "Name":"Truly", "Email":"zhuleipro◎hotmail.com"}; alert(User.Name); </script>

    实际使用时可能更复杂一点,比如我们为Name定义更详l的l构Q它具有FirstName和LastNameQ?/p>

    {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"}

    完整代码:

    <script>
    var User = {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"}; alert(User.Name.FirstName); </script>

    现在我们增加一个新的需求,我们某个面需要一个用户列表,而不仅仅是一个单一的用户信息,那么q里需要创Z个用户列表数l?br /> 下面代码演示了用JSON形式定义q个用户列表Q?

    [
    {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
    {"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
    {"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
    ]


    完整代码:

    <script>
    var UserList = [
    {"UserID":11, "Name":{"FirstName":"Truly","LastName":"Zhu"}, "Email":"zhuleipro◎hotmail.com"},
    {"UserID":12, "Name":{"FirstName":"Jeffrey","LastName":"Richter"}, "Email":"xxx◎xxx.com"},
    {"UserID":13, "Name":{"FirstName":"Scott","LastName":"Gu"}, "Email":"xxx2◎xxx2.com"}
    ];
    alert(UserList[0].Name.FirstName);
    </script>

    事实上除了?."引用属性外Q我们还可以使用下面语句Q?/p>

    alert(UserList[0]["Name"]["FirstName"]); 或?alert(UserList[0].Name["FirstName"]); 

    现在读者应该对JSON的用有点认识了Q归Uؓ以下几点Q?/p>

  • 对象是属性、值对的集合。一个对象的开始于“{”Q结束于“}”。每一个属性名和值间?#8220;:”提示Q属性间?#8220;,”分隔?
  • 数组是有序的值的集合。一个数l开始于"["Q结束于"]"Qg间用","分隔?
  • 值可以是引号里的字符丌Ӏ数字、true、false、nullQ也可以是对象或数组。这些结构都能嵌套?
  • 字符串和数字的定义和C或Java基本一致?

    Q?br />
    本文通过一个实例演C,初步了解了JSON 的强大用途。可以归l如下:

  • JSON 提供了一U优U的面向对象的ҎQ以便将元数据缓存到客户Z?
  • JSON 帮助分离了验证数据和逻辑?
  • JSON 帮助?Web 应用E序提供?Ajax 的本质?


  • jiafang83 2009-06-16 01:03 发表评论
    ]]>
    Tomcat中部|JSTLhttp://m.tkk7.com/jiafang83/archive/2009/06/14/282192.htmljiafang83jiafang83Sun, 14 Jun 2009 10:02:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/06/14/282192.htmlhttp://m.tkk7.com/jiafang83/comments/282192.htmlhttp://m.tkk7.com/jiafang83/archive/2009/06/14/282192.html#Feedback0http://m.tkk7.com/jiafang83/comments/commentRss/282192.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/282192.html 转蝲Q?a id="ArticleContent1_ArticleContent1_AuthorBlogLink" target="_blank">http://blog.csdn.net/sdlcn/

    前提 OS: WIN2000
         tomcat已经配置?tomcat可以?a >http://jakarta.apache.org/tomcat 下蝲)
    开始实战啦
    1.准备jstl
       ?a >http://apache.towardex.com/jakarta/taglibs/standard/下蝲jakarta-taglibs-standard-current.zip
    解压后成为jakarta-taglibs-standard-1.1.1

    2.准备web开发目?br />    比如我的web目录为h:\webapp\myweb\(当然可以把你的web应用攑֜%tomcat_home%\webapps\)Q称为工作目录Working folder,在工作目录h:\webapp\myweb\下徏立WEB-INF\lib,WEB-INF\classes

    3.拯.jar文g
       jakarta-taglibs-standard-1.1.1\lib\下的两个jar文gQstandard.jar和jstl.jar文g拯到\WEB-INF\lib\?/p>

    4.拯.tld文g
     jakarta-taglibs-standard-1.1.1\tld\下的8个tldcd文g拷到"Working folder\WEB-INF\"?/p>

    5.在\WEB-INF\下徏立web.xml文gQ?br />   <?xml version="1.0" encoding="ISO-8859-1"?>

    <web-app xmlns="http://java.sun.com/xml/ns/j2ee"
        xmlns:xsi="
    http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="
    http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
        version="2.4">
     
      <taglib>
        <taglib-uri>http://java.sun.com/jstl/fmt</taglib-uri>
        <taglib-location>/WEB-INF/fmt.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/fmt-rt</taglib-uri>
        <taglib-location>/WEB-INF/fmt-rt.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
        <taglib-location>/WEB-INF/c.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/core-rt</taglib-uri>
        <taglib-location>/WEB-INF/c-rt.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/sql</taglib-uri>
        <taglib-location>/WEB-INF/sql.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/sql-rt</taglib-uri>
        <taglib-location>/WEB-INF/sql-rt.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/x</taglib-uri>
        <taglib-location>/WEB-INF/x.tld</taglib-location>
    </taglib>

    <taglib>
        <taglib-uri>http://java.sun.com/jstl/x-rt</taglib-uri>
        <taglib-location>/WEB-INF/x-rt.tld</taglib-location>
    </taglib>

    </web-app>
    6.建立一个名为test.jsp文g
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <%@ page contentType="text/html;charset=GB2312" %>
    <%@ taglib prefix="c" uri="
    http://java.sun.com/jsp/jstl/core"%>
    <html>
    <head>
    <title>试你的W一个用到JSTL 的网?lt;/title>
    </head>
    <body>
    <c:out value="Ƣ迎试你的W一个用到JSTL 的网?/>
    </br>你用的览器是Q?lt;/br>
    <c:out value="${header['User-Agent']}"/>
    <c:set var="a" value="David O'Davies" />
    <c:out value="David O'Davies" escapeXml="true"/>
    </body>
    </html>

    7.开启tomcat,q行调试Q我的输出结果是

    Ƣ迎试你的W一个用到JSTL 的网?
    你用的览器是Q?br /> Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0) David O'Davies



    jiafang83 2009-06-14 18:02 发表评论
    ]]>
    javascript:return falsehttp://m.tkk7.com/jiafang83/archive/2009/06/13/282094.htmljiafang83jiafang83Sat, 13 Jun 2009 15:52:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/06/13/282094.htmlhttp://m.tkk7.com/jiafang83/comments/282094.htmlhttp://m.tkk7.com/jiafang83/archive/2009/06/13/282094.html#Feedback0http://m.tkk7.com/jiafang83/comments/commentRss/282094.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/282094.html转蝲Q?a >http://blog.csdn.net/mtzai/archive/2009/05/24/4212490.aspx

    在大多数情况?Z件处理函数返回false,可以防止默认的事件行?例如,默认情况下点M?lt;a>元素,面会蟩转到该元素href属性指定的?
     Return False q当于l止W,Return True q当于执行W?/p>

    在js中return false的作用一般是用来取消默认动作的。比如你单击一个链接除了触发你?
    onclick旉Q如果你指定的话Q以外还要触发一个默认事件就是执行页面的跌{。所以如?
    你想取消对象的默认动作就可以return false。return false应用比较多的场合有:
    <form name="form1"  onsubmIT="return youfunction();">...... </form>
    <a href="www.***.com" onclick="...;return false;">dddd </a>    .

    <script>
    function test()
    {
      alert("test");
      return false();
    }
    </script>

    </head>

    <body>
    1Q?<a href='a.JSP' onclick='test();'>链接 </a>
    2Q?<input type="button" onclick='test()' value="提交">
    3Q?<form name="form1"  onsubmIT="return test();">
    内容
    <input type="submIT" value="提交">
    </form>
    </body>

    <a href="xxxx.do?....." target=dolink>q接abcd </a>
    <iframe id=dolink src=about:blank style=display:none> </iframe>

     
    点了上面的那个连接后Qdolink帧执行页面处理的事情Qxxxx.doQ?..然传递参数到服务器)Q页面不会蟩转?nbsp;   .

    最q做的项目,通过l定?button ?onclick 事g的函数提交表单。发?return false 也是很重要的。比如:

     <input type="submit" onclick="submitAction(); return false;" />

     submitAction Ҏ里面有提交表单的动作。如果不?return falseQ在执行?submitAction 之后Qsubmit 按钮q会l箋执行它的默认事gQ就会再ơ提交表单。这可能是很多错误的根源?/p>

    的确Qreturn false的含义不是阻止事件l向层元素传播Q而是L览器对事g的默认处理。你可以q样试验Q首先将所有的js脚本注释掉,在IE览器中试拖动一下图片,你会发现鼠标会成为禁止操作的样式Q图片是被禁止拖动的Q它是浏览器针对mousemove事g所提供的默认行为。return false是ZLq种行ؓQ否则就会出C描述的中断事件连l执行?/p>

    另外Q和return false{效的语句ؓQwindow.event.returnValue = falseQ你可以把return false替换为此语句q进行验证?/p>

    最后说明一下,此种方式只适用于IE览器?/p>

    <html>
    <head>
    <script language="javascript">
    function verifyForm(){
    var ass=document.getElementsByName("assetName");
    if(ass[0].value.length==0){
    alert("名称输入为空Q?);
    return false;
    }

    if(ass[0].value.length>15){
    alert("名称输入长度不能过15个字W!");
    return false;
    }
    }
    </script>
    </head>
    <body>
    <form name="xx">
    <input name="assetName" type="text"/>
                            <--Ҏreturn q回值的TRUE或FALSE 判定是否提交表单--->
    <input type="submit" onclick="return verifyForm()"/>
    </form>
    </body>
    </html>

    潜水看了众大虄_ֽ帖子Q今也A献一点心得。其dƣ赏Q疑义相与析。有不对之处请不吝拍砖?

    众所周知Q在表单中加上onsubmit="return false;"可以L表单提交?
    下面是简单的一段代码Q?/p>

    view plaincopy to clipboardprint?
    <form action="index.jsp" method="post" onsubmit="submitTest();;">  
        <INPUT value="www">  
        <input type="submit" value="submit">  
    </form>  
     
    <SCRIPT LANGUAGE="JavaScript">  
    <!--  
        function submitTest(); {  
            // 一些逻辑判断  
         return false;  
        }  
    //-->  
    </SCRIPT> 

    <form action="index.jsp" method="post" onsubmit="submitTest();;">
        <INPUT value="www">
        <input type="submit" value="submit">
    </form>

    <SCRIPT LANGUAGE="JavaScript">
    <!--
        function submitTest(); {
            // 一些逻辑判断
         return false;
        }
    //-->
    </SCRIPT>
    大家判断像上面的写法Q点击submit按钮该表单是否提交?

    若答案ؓ是,׃用往下看了?

    若答案ؓ否,错了。实际情冉|表单正常提交Q若惛_不提交,应该?/p>

    view plaincopy to clipboardprint?
    <form action="index.jsp" method="post" onsubmit="submitTest();;"> 

    <form action="index.jsp" method="post" onsubmit="submitTest();;">改ؓ

    view plaincopy to clipboardprint?
    <form action="index.jsp" method="post" onsubmit="return submitTest();;"> 

    <form action="index.jsp" method="post" onsubmit="return submitTest();;">

    ZQ?

    原来onsubmit属性就像是<form>q个html对象的一个方法名Q其|一字符Ԍ是其方法体Q默认返回trueQ?

    和Java一P在该Ҏ体中你可以写L多个语句Q包括内|函数和自定义函敎ͼ?/p>

    view plaincopy to clipboardprint?
    onsubmit="  
        alert('haha');; // 内置函数   
        submitTest();;  // 自定义函?nbsp; 
        alert(this.tagName);; // 用到了this关键?nbsp; 
        ......(L多条语句);      
        return false;  

    onsubmit="
        alert('haha');; // 内置函数
        submitTest();;  // 自定义函?br />     alert(this.tagName);; // 用到了this关键?br />     ......(L多条语句);   
        return false;
    "
    q当于

    view plaincopy to clipboardprint?
    Form.prototype.onsubmit = function(); {  
        alert('haha');; // 内置函数  
        submitTest();;  // 自定义函?nbsp; 
        alert(this.tagName);; // 用到了this关键?nbsp; 
        ......(L多条语句);      
        return false;  
    }; 

    Form.prototype.onsubmit = function(); {
        alert('haha');; // 内置函数
        submitTest();;  // 自定义函?br />     alert(this.tagName);; // 用到了this关键?br />     ......(L多条语句);   
        return false;
    };
    q样的话你就覆写?override)光认方法(默认q回trueQ?
    大家注意到方法体中可以用thisq个关键词,q里即代表了<form>的对象实例?

    l过q样的分析后Q以上情况就不难理解了:

    view plaincopy to clipboardprint?
    <form action="index.jsp" method="post" onsubmit="submitTest();;"> 

    <form action="index.jsp" method="post" onsubmit="submitTest();;">q样写,overrideҎ的效果ؓQ?/p>

    view plaincopy to clipboardprint?
    Form.prototype.onsubmit = function(); {  
        submitTest();;  
    }; 

    Form.prototype.onsubmit = function(); {
        submitTest();;
    };
    在这里submitTest()虽然q回falseQ但我们只执行了此函敎ͼ没有对其l果q行M处理。?/p>

    view plaincopy to clipboardprint?
    <form action="index.jsp" method="post" onsubmit="return submitTest();;"> 

    <form action="index.jsp" method="post" onsubmit="return submitTest();;">
    overrideҎ的效果ؓQ?/p>

    view plaincopy to clipboardprint?
    Form.prototype.onsubmit = function(); {  
        return submitTest();;  
    }; 

    Form.prototype.onsubmit = function(); {
        return submitTest();;
    };
    q样Q我们利用到了它的返回|辑ֈ了预期效果?
    q样理解的话我想印象会深d多,׃易出错了

    l论Q?
    我们可以用Java里的思维方式来思考模拟JavaScript中的cM情况QJavaScript中基于prototype的面向对象技术也实是这样做的)Q但他们毕竟q是有本质上的区别,如Java是强cd的,有严格的语法限制Q而JavaScript是松散型的。象上述ҎQ?/p>

    view plaincopy to clipboardprint?
    Form.prototype.onsubmit = function(); {    
    }; 

    Form.prototype.onsubmit = function(); { 
    };
    既可以有q回|又可以没有返回|在Java里是通不q的Q毕竟Java里面不能靠方法的q回g同来重蝲(overload)ҎQ而JavaScript中的重蝲要松散得多?



    jiafang83 2009-06-13 23:52 发表评论
    ]]>
    request.getParameter与request.getParameterValues的区?/title><link>http://m.tkk7.com/jiafang83/archive/2009/06/12/281840.html</link><dc:creator>jiafang83</dc:creator><author>jiafang83</author><pubDate>Fri, 12 Jun 2009 06:53:00 GMT</pubDate><guid>http://m.tkk7.com/jiafang83/archive/2009/06/12/281840.html</guid><wfw:comment>http://m.tkk7.com/jiafang83/comments/281840.html</wfw:comment><comments>http://m.tkk7.com/jiafang83/archive/2009/06/12/281840.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://m.tkk7.com/jiafang83/comments/commentRss/281840.html</wfw:commentRss><trackback:ping>http://m.tkk7.com/jiafang83/services/trackbacks/281840.html</trackback:ping><description><![CDATA[<p>一?单的Ҏ </p> <p>request.getParameter用的比较多,相对熟悉 </p> <p>request.getParameterValues(String   name)是获得如checkboxc(名字相同Q但值有多个Q的数据?nbsp;  接收数组变量 Q如checkobxcd     <br /> request.getParameterQString   nameQ是获得相应名的数据Q如果有重复的名Q则q回W一个的?. 接收一般变?Q如textcd </p> <p>例: </p> <p>1. 三个名字相同的text标签</p> <p><br /> <input type="text" name="test" value="1" /> <br /> <input type="text" name="test" value="2" /> <br /> <input type="text" name="test" value="3" /> </p> <p>request.getParameterValues("test")   ----------------- [1, 2, 3]</p> <p>request.getParameter("test")             ------------------ 1</p> <p>${paramValues.test}</p> <p>${param.test}</p> <p>2. checkbox </p> <p> <input type="checkbox" name="habit" value="read">看书</p> <p> <input type="checkbox" name="habit" value="movie">电媄</p> <p> <input type="checkbox" name="habit" value="game">游戏</p> <p>request.getParameterValues("habit") </p> <p>二、与此相关的话题------隐含对象 </p> <p>1. JSP隐含对象(Implicit Object)</p> <p><br />      所谓隐含对象,是指当编写jsp|页Ӟ不必做Q何声明就可以直接使用的对象?JSP2.0定义了九个隐含对?/p> <p>request response pageContext session application out conifg page exception</p> <p>q里只提一下request ?response 两个对象</p> <p>       request 对象表示客户端请求的内容Q比如我们从request中取得了用户输入的内容,实现了javax.servlet.http.HttpServletRequest接口</p> <p>      response对象表示响应客户端的l果?/p> <p>上面我们使用了request的两个方法getParameter ?getParameterValuesQ其实requestq有其他几个比较重要的方法,q里只涉及几个获取请求参数的Ҏ</p> <p>String getParameter(String name)                     取得name的参数?/p> <p>String[] getParameterValues(String name)        取得所有name的参数?/p> <p>Enumeration getParameterNames()                  取得所有的参数名称</p> <p>Map<String, String[]> getParameterMap()        取得request的所有参数的一个映?/p> <p>//</p> <p>Returns a java.util.Map of the parameters of this request. Request parameters are extra information sent with the request. For HTTP servlets, parameters are contained in the query string or posted form data. <br /> Returns: <br /> an immutable java.util.Map containing parameter names as keys and parameter values as map values. The keys in the parameter map are of type String. The values in the parameter map are of type String array. <br /> //</p> <p>response{其他几个隐含对象也有非帔R要的w䆾Q有Z专门整理一下,宣扬一下它们的显赫C?/p> <p>2. EL隐含对象 </p> <p>EL即Experssion LanguageQ自JSP2.0后正式成为JSP的标准规范之一Q支持Servlet2.4/JSP2.0的Container也就相应的支持EL语法?</p> <p>一个常见的形式如,<c:out value="${ 3 + 7 * 4}" /></p> <p>EL的隐藏对象有11?PageContext PageScope RequestScope sessionScope applicationScope </p> <p>param paramValues header headerValues cookie initParam</p> <p>其中param ?paramValues卛_相应ServletRequest.getParameter(String name)和ServletRequest.getParameterValues(String name)</p> <p> </p> <p>转蝲Q?a >http://blog.csdn.net/moreorless/archive/2009/05/18/4199677.aspx</a></p> <img src ="http://m.tkk7.com/jiafang83/aggbug/281840.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://m.tkk7.com/jiafang83/" target="_blank">jiafang83</a> 2009-06-12 14:53 <a href="http://m.tkk7.com/jiafang83/archive/2009/06/12/281840.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Javascript强制cd转换http://m.tkk7.com/jiafang83/archive/2009/06/09/280948.htmljiafang83jiafang83Tue, 09 Jun 2009 08:03:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/06/09/280948.htmlhttp://m.tkk7.com/jiafang83/comments/280948.htmlhttp://m.tkk7.com/jiafang83/archive/2009/06/09/280948.html#Feedback2http://m.tkk7.com/jiafang83/comments/commentRss/280948.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/280948.html转蝲Qhttp://www.sucai.com/Tech/List2/17830.htm

    javascript是弱cd的语aQ所以强制类型{换还是比较重要的Q下面看一下它的几个强制{换的函数Q?/p>

    1. Boolean(value):把D{换成BooleancdQ?/p>

    2. Nnumber(value):把D{换成数字Q整型或点敎ͼQ?/p>

    3. String(value):把D{换成字符丌Ӏ?/p>

    我们先来看Boolean()Q在要{换的gؓ“臛_有一字符的字W串”?#8220;?的数?#8221;?#8220;对象”Q那么Boolean()返回trueQ如果要转换的gؓ“I字W串”?#8220;数字0”?#8220;undefined”Q?#8220;null”q些话,那么Boolean()会返回false。你可以用以下代码来试

    var t1 = Boolean("");//q回false,I字W串
    var t2 = Boolean("s");//q回trueQ非I字W串
    var t3 = Boolean(0);//q回falseQ数?
    var t3 = Boolean(1),t4 = Boolean(-1);//q回trueQ非0数字
    var t5 = Boolean(null),t6 = Boolean(undefined);//q回false
    var t7 = Boolean(new Object());//q回trueQ对?/p>

    再来看看Number()QNumber()与parseInt()和parseFloat()cMQ它们区别在于Number()转换是整个|而parseInt()和parseFloat()则可以只转换开头的数字部分Q例如:Number("1.2.3"),Number("123abc")会返回NaNQ而parseInt("1.2.3")q回1、parseInt("123abc")q回123、parseFloat("1.2.3")q回1.2、parseFloat("123abc")q回123。Number()会先判断要{换的D否被完整的{换,然后再判断是调用parseInt()或parseFloat()。下面列了一些D用Number()之后的结果:

    Number(false)  0
    Number(true)  1
    Number(undefined)  NaN
    Number(null)  0
    Number("1.2")  1.2

    Number("12")  12
    Number("1.2.3")  NaN
    Number(new Object())  NaN
    Number(123)  123

    最后是String()Q这个以比较单了Q它可以把所有类型的数据转换成字W串Q如QString(false)---"false"、String(1)---"1"。它和toString()Ҏ有些不同Q区别在于:

    var t1 = null;
    var t2 = String(t1);//t2的倹{"null"
    var t3 = t1.toString();//q里会报?br /> var t4;
    var t5 = String(t4);//t5的倹{"undefined"
    var t6 = t4.toString();//q里会报?/p>

    jiafang83 2009-06-09 16:03 发表评论
    ]]>
    JAVA版汉字{拼音~写E序http://m.tkk7.com/jiafang83/archive/2009/06/08/280651.htmljiafang83jiafang83Mon, 08 Jun 2009 06:28:00 GMThttp://m.tkk7.com/jiafang83/archive/2009/06/08/280651.htmlhttp://m.tkk7.com/jiafang83/comments/280651.htmlhttp://m.tkk7.com/jiafang83/archive/2009/06/08/280651.html#Feedback3http://m.tkk7.com/jiafang83/comments/commentRss/280651.htmlhttp://m.tkk7.com/jiafang83/services/trackbacks/280651.html阅读全文

    jiafang83 2009-06-08 14:28 发表评论
    ]]>
    վ֩ģ壺 ˳www߲| av벻| ŷŷɫ| ¸Ļ| av߹ۿ| Ƶ| þþþþþۺձ| þô㽶վ| ˳˳ۺ| ëƬѹۿ| AV߹ۿ| wwwƵ| лGAYƬվWWW| Ļ| þóѲվ| anպר| ֻˬִַ̼ | һƬaƵѹۿ| ޸ҹӰ| Ļ߲| ɫƷva߹ۿƵ| պͼƬר1ҳ| žžƷƵ| AVƷһ| ˳wwwӰҳ | Ƶ߹ۿƵվWWW | һһһ| ˳꼤Ƶ߹ۿ| Ƶ߹ۿ| avƬþ| ĻAV߾Ʒѹۿ| ѿٸ߳Ƭ| ɫ˵| ޾Ʒa߹ۿ| 2021߹ۿƵƷ| ۺAV| ༤ۺ͵ͼ| Ұ߹ۿ3| è˳վ߹ۿ| 2022˾Ʒ | ޾Ʒ99߹ۿ|