jsp基础学习资料

时间:2024.5.15

jsp基础学习资料

作者:佚名 阅读人次:19826 文章来源: 发布时间:2004-10-9 网友评论(8)

一、 JSP 技术概述

在 Sun 正式发布 JSP(JavaServer Pages) 之后,这种新的 Web 应用开发技术很快引起了人们的关注。 JSP 为创建高度动态的 Web 应用提供了一个独特的开发环境。按照 Sun 的说法, JSP 能够适应市场上包括 Apache WebServer 、 IIS4.0 在内的 85% 的服务器产品。即使您对 ASP “一往情深”,我们认为,关注 JSP 的发展仍旧很有必要。

㈠ JSP 与 ASP 的简单比较

JSP 与 Microsoft 的 ASP 技术非常相似。两者都提供在 HTML 代码中混合某种程序代码、由语言引擎解释执行程序代码的能力。在 ASP 或 JSP 环境下, HTML 代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通的 HTML 页面只依赖于 Web 服务器,而 ASP 和 JSP 页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到 HTML 代码中,然后一起发送给浏览器。 ASP 和 JSP 都是面向 Web 服务器的技术,客户端浏览器不需要任何附加的软件支持。

ASP 的编程语言是 VBScript 之类的脚本语言, JSP 使用的是 Java ,这是两者最明显的区别。此外, ASP 与 JSP 还有一个更为本质的区别:两种语言引擎用完全不同的方式处理页面中嵌入的程序代码。在 ASP 下, VBScript 代码被 ASP 引擎解释执行;在 JSP 下,代码被编译成 Servlet 并由 Java 虚拟机执行,这种编译操作仅在对 JSP 页面的第一次请求时发生。

㈡运行环境

Sun 公司的 JSP 主页在 /products/jsp/index.html ,从这里还可以下载 JSP 规范,这些规范定义了供应商在创建 JSP 引擎时所必须遵从的一些规则。

执行 JSP 代码需要在服务器上安装 JSP 引擎。此处我们使用的是 Sun 的 JavaServer Web Development Kit ( JSWDK )。为便于学习,这个软件包提供了大量可供修改的示例。安装 JSWDK 之后,只需执行 startserver 命令即可启动服务器。在默认配置下服务器在端口 8080 监听,使用 http://localhost:8080 即可打开缺省页面。

在运行 JSP 示例页面之前,请注意一下安装 JSWDK 的目录,特别是“ work ”子目录下的内容。执行示例页面时,可以在这里看到 JSP 页面如何被转换成 Java 源文件,然后又被编译成 class 文件(即 Servlet )。 JSWDK 软件包中的示例页面分为两类,它们或者是 JSP 文件,或者是包含一个表单的 HTML 文件,这些表单均由 JSP 代码处理。与 ASP 一样, JSP 中的 Java 代码均在服务器端执行。因此,在浏览器中使用“查看源文件”

菜单是无法看到 JSP 源代码的,只能看到结果 HTML 代码。所有示例的源代码均通过一个单独的“ examples ”页面提供。

㈢ JSP 页面示例

下面我们分析一个简单的 JSP 页面。您可以在 JSWDK 的 examples 目录下创建另外一个目录存放此文件,文件名字可以任意,但扩展名必须为 .jsp 。从下面的代码清单中可以看到, JSP 页面除了比普通 HTML 页面多一些 Java 代码外,两者具有基本相同的结构。 Java 代码是通过 < % 和 %> 符号加入到 HTML 代码中间的,它的主要功能是生成并显示一个从 0 到 9 的字符串。在这个字符串的前面和后面都是一些通过 HTML 代码输出的文本。

< HTML>

< HEAD>< TITLE>JSP 页面 < /TITLE>< /HEAD>

< BODY>

< %@ page language="java" %>

< %! String str="0"; %>

< % for (int i=1; i < 10; i++) {

str = str + i;

} %>

JSP 输出之前。

< P>

< %= str %>

< P>

JSP 输出之后。

< /BODY>

< /HTML>

这个 JSP 页面可以分成几个部分来分析。

首先是 JSP 指令。它描述的是页面的基本信息,如所使用的语言、是否维持会话状态、是否使用缓冲等。 JSP 指令由 < %@ 开始, %> 结束。在本例中,指令“ < %@ page language="java" %> ”只简单地定义了本例使用的是 Java 语言(当前,在 JSP 规范中 Java 是唯一被支持的语言)。

接下来的是 JSP 声明。 JSP 声明可以看成是定义类这一层次的变量和方法的地方。 JSP 声明由 < %! 开始, %> 结束。如本例中的“ < %! String str="0"; %> ”定义了一个字符串变量。在每一项声明的后面都必须有一个分号,就象在普通 Java 类中声明成员变量一样。

位于 < % 和 %> 之间的代码块是描述 JSP 页面处理逻辑的 Java 代码,如本例中的 for 循环所示。

最后,位于 < %= 和 %> 之间的代码称为 JSP 表达式,如本例中的“ < %= str %> ”所示。 JSP 表达式提供了一种将 JSP 生成的数值嵌入 HTML 页面的简单方法。

二、会话状态管理

作 者 : 仙人掌工作室

会话状态维持是 Web 应用开发者必须面对的问题。有多种方法可以用来解决这个问题,如使用 Cookies 、隐藏的表单输入域,或直接将状态信息附加到 URL 中。 Java Servlet 提供了一个在多个请求之间持续有效的会话对象,该对象允许用户存储和提取会话状态信息。 JSP 也同样支持 Servlet 中的这个概念。

在 Sun 的 JSP 指南 中可以看到许多有关隐含对象的说明(隐含的含义是,这些对象可以直接引用,不需要显式地声明,也不需要专门的代码创建其实例)。例如 request 对象,它是 HttpServletRequest 的一个子类。该对象包含了所有有关当前浏览器请求的信息,包括 Cookies , HTML 表单变量等等。 session 对象也是这样一个隐含对象。这个对象在第一个 JSP 页面被装载时自动创建,并被关联到 request 对象上。与 ASP 中的会话对象相似, JSP 中的 session 对象对于那些希望通过多个页面完成一个事务的应用是非常有用的。

为说明 session 对象的具体应用,接下来我们用三个页面模拟一个多页面的 Web 应用。第一个页面( q1.html )仅包含一个要求输入用户名字的 HTML 表单,代码如下:

< HTML>

< BODY>

< FORM METHOD=POST ACTION="q2.jsp">

请输入您的姓名:

< INPUT TYPE=TEXT NAME="thename">

< INPUT TYPE=SUBMIT VALUE="SUBMIT">

< /FORM>

< /BODY>

< /HTML>

第二个页面是一个 JSP 页面( q2.jsp ),它通过 request 对象提取 q1.html 表单中的 thename 值,将它存储为 name 变量,然后将这个 name 值保存到 session 对象中。 session 对象是一个名字 / 值对的集合,在这里,名字 / 值对中的名字为“ thename ”,值即为 name 变量的值。由于 session 对象在会话期间是一直有效的,因此这里保存的变量对后继的页面也有效。 q2.jsp 的另外一个任务是询问第二个问题。下面是它的代码:

< HTML>

< BODY>

< %@ page language="java" %>

< %! String name=""; %>

< %

name = request.getParameter("thename");

session.putValue("thename", name);

%>

您的姓名是: < %= name %>

< p>

< FORM METHOD=POST ACTION="q3.jsp">

您喜欢吃什么 ?

< INPUT TYPE=TEXT NAME="food">

< P>

< INPUT TYPE=SUBMIT VALUE="SUBMIT">

< /FORM>

< /BODY>

< /HTML>

第三个页面也是一个 JSP 页面( q3.jsp ),主要任务是显示问答结果。它从 session 对象提取 thename 的值并显示它,以此证明虽然该值在第一个页面输入,但通过 session 对象得以保留。 q3.jsp 的另外一个任务是提取在第二个页面中的用户输入并显示它:

< HTML>

< BODY>

< %@ page language="java" %>

< %! String food=""; %>

< %

food = request.getParameter("food");

String name = (String) session.getValue("thename");

%>

您的姓名是: < %= name %>

< P>

您喜欢吃: < %= food %>

< /BODY>

< /HTML>

三、引用 JavaBean 组件

作 者 : 仙人掌工作室 编译

JavaBean 是一种基于 Java 的软件组件。 JSP 对于在 Web 应用中集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为 JSP 应用带来了更多的可伸缩性。 JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。如果我们有三个 JavaBean ,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的 Web 页面只需要实例化这三个 Bean ,使用 HTML 表格将它们依次定位就可以了。

为说明在 JSP 环境下 JavaBean 的应用,我们创建了一个名为 TaxRate 的 Bean 。它有两个属性,即 Product (产品)和 Rate (税率)。两个 set 方法分别用来设置这两个属性,两个 get 方法则用于提取这两个属性。在实际应用中,这种 Bean 一般应当从数据库提取税率值,此处我们简化了这个过程,允许任意设定税率。下面是这个 Bean 的代码清单:

package tax;

public class TaxRate {

String Product;

double Rate;

public TaxRate() {

this.Product = "A001";

this.Rate = 5;

}

public void setProduct (String ProductName) {

this.Product = ProductName;

}

public String getProduct() {

return (this.Product);

}

public void setRate (double rateValue) {

this.Rate = rateValue;

}

public double getRate () {

return (this.Rate);

}

}

在 JSP 页面中应用上述 Bean 要用到 < jsp:useBean> 标记。依赖于具体使用的 JSP 引擎的不同,在何处配置以及如何配置 Bean 的方法也可能略有不同。本文将这个 Bean 的 .class 文件放在 c:\jswdk-1.0\examples\WEB-INF\jsp\beans\tax 目录下,这里的 tax 是一个专门存放该 Bean 的目录。下面是一个应用上述 Bean 的示例页面:

< HTML>

< BODY>

< %@ page language="java" %>

< jsp:useBean id="taxbean" scope="application" class="tax.TaxRate" />

< % taxbean.setProduct("A002");

taxbean.setRate(17);

%>

使用方法 1 : < p>

产品 : < %= taxbean.getProduct() %> < br>

税率 : < %= taxbean.getRate() %>

< p>

< % taxbean.setProduct("A003");

taxbean.setRate(3);

%>

< b> 使用方法 2 : < /b> < p>

产品 : < jsp:getProperty name="taxbean" property="Product" />

< br>

税率 : < jsp:getProperty name="taxbean" property="Rate" />

< /BODY>

< /HTML>

在 < jsp:useBean> 标记内定义了几个属性,其中 id 是整个 JSP 页面内该 Bean 的标识, scope 属性定义了该 Bean 的生存时间, class 属性说明了该 Bean 的类文件(从包名开始)。

这个 JSP 页面不仅使用了 Bean 的 set 和 get 方法设置和提取属性值,还用到了提取 Bean 属性值的第二种方法,即使用 < jsp:getProperty> 标记。 < jsp:getProperty> 中的 name 属性即为 < jsp:useBean> 中定义的 Bean 的 id ,它的 property 属性指定的是目标属性的名字。

事实证明, Java Servlet 是一种开发 Web 应用的理想构架。 JSP 以 Servlet 技术为基础,又在许多方面作了改进。 JSP 页面看起来象普通 HTML 页面,但它允许嵌入执行代码,在这一点上,它和 ASP 技术非常相似。利用跨平台运行的 JavaBean 组件, JSP 为分离处理逻辑与显示样式提供了卓越的解决方案。 JSP 必将成为 ASP 技术的有力竞争者。 JSP学习心得

作者:徐春金 阅读人次:15294 文章来源:计算机世界网 发布时间:2004-10-9 网友评论

(4)条

下面是本人在学习JSP时的一些心得,特此奉献出来以供大家分享。

一、JSP工作原理

在一个JSP文件第一次被请求时,JSP引擎把该JSP文件转换成为一个servlet。而这个引擎本身也是一个servlet,在JSWDK或WEBLOGIC中,它就是JspServlet。 JSP引擎先把该JSP文件转换成一个Java源文件,在转换时如果发现jsp文件有任何语法错误,转换过程将中断,并向服务端和客户端输出出错信息;如果转换成功, JSP引擎用javac把该Java源文件编译成相应的class文件。然后创建一个该SERVLET的实例,该SERVLET的jspInit

()方法被执行,jspInit()方法在servlet的生命周期中只被执行一次。然后jspService()方法被调用来处理客户端的请求。对每一个请求,JSP引擎创建一个新的线程来处理该请求。如果有多个客户端同时请求该JSP文件,则JSP引擎会创建多个线程。每个客户端请求对应一个线程。以多线程方式执行可大大降低对系统的资源需求,提高系统的并发量及响应时间.但应该注意多线程的编程限制,由于该servlet始终驻于内存,所以响应是非常快的。 如果.jsp文件被修改了,服务器将根据设置决定是否对该文件重新编译,如果需要重新编译,则将编译结果取代内存中的servlet,并继续上述处理过程。 虽然JSP效率很高,但在第一次调用时由于需要转换和编译而有一些轻微的延迟。 此外,如果在任何时候如果由于系统资源不足的原因,JSP引擎将以某种不确定的方式将servlet从内存中移去。当这种情况发生时jspDestroy()方法首先被调用, 然后servlet实例便被标记加入“垃圾收集”处理。 jspInit()及jspDestory()格式如下:可在jspInit()中进行一些初始化工作,如建立与数据库的连接,或建立网络连接,从配置文件中取一些参数等,在jspDestory()中释放相应的资源。

二、服务端的输出缓冲区

缺省情况下:服务端要输出到客户端的内容,不直接写到客户端,而是先写到一个输出缓冲区中.只有在下面三中情况下,才会把该缓冲区的内容输出到客户端上:

1.该JSP网页已完成信息的输出

2.输出缓冲区已满

3.JSP中调用了out.flush()或response.flushbuffer()

输出缓冲区的大小可以用:或response.setBufferSize()设置,如下:

1、设置输出缓冲区的大小为1KB。或response.setBufferSize(1);

2、设置输出缓冲区的大小为0,即不缓冲。或response.setBufferSize(0);

用response.getBufferSize()或out.getBufferSize()可取的输出缓冲区的大小,单位为字节.

用response.isCommitted()可检查看服务端是否已将数据输出到客户端. 如果返回值是TRUE则已将数据输出到客户端,是FALSE则还没有。

三、服务端输出重定向

有以下3种方法可以做到输出重定向:

(1) RESPONSE.SETREDERECT("URL")

该方法通过修改HTTP协议的HEADER部分,对浏览器下达重定向指令的,使浏览器显示重定向网页的内容.

response.sendRedirect("http://localhost:7001/index.html");

(2)下面的方法也能改变HTTP HEADER属性,它的原理和(1)是一样的.

(3)采用

该方法是利用服务器端先将数据输出到缓冲区的机制,在把缓冲区的内容发送到客户端之前,原来的不发送,改为发送该页面的内容,如果在之前有很多输出,前面的输出已使缓冲区满,将自动输出到客户端,那么该语句将不起作用,这一点应该特别注意.

如下面的例子中(1)会输出index.html的内容,(2)不会输出index.html的内容,而是输出out.println("@@@@@@@@@@@@@@@@@");

中的内容,并且在服务端会抛出:java.lang.IllegalStateException: Response already committed 异常,但客户端没有任何错误输出。

(1)

<JSP:FORWARD&NBSP;PAGE=". index.html? />

说明:

1. 方法(1),(2)可以使用变量表示重定向的地址;方法(3)不能使用变量表示重定向的地址。

String add="./index.html";

<JSP:FORWARD&NBSP;PAGE=&NBSP;ADD&NBSP; />

无法重定向到index.html中去

String add=http://localhost:7001/index.html

response.sendRedirect(add);

可以重定向到http://localhost:7001/index.html中去。

2. 采用方法(1),(2)request中的变量(通过request.setAttribute()保存到request中的值)不能在新的页面中采用,采用方法(3)能.

综上,我们应该采用(1),(2)重定向比较好。

四、JSP中正确应用类

应该把类当成JAVA BEAN来用,不要在 中直接使用. 如下的代码(1)经过JSP引擎转化后会变为代码(2):

从中可看出如果把一个类在JSP当成JAVA BEAN 使用,JSP会根据它的作用范围把它保存到相应的内部对象中.

如作用范围为request,则把它保存到request对象中.并且只在第一次调用(对象的值为null)它时进行实例化.

而如果在中直接创建该类的一个对象,则每次调用JSP时,都要重新创建该对象,会影响性能.

代码(1)

<JSP:USEBEAN&NBSP;ID="TEST"&NBSP;SCOPE="REQUEST"&NBSP;CLASS="DEMO.COM.TESTDEMO">

代码(2)

demo.com.testdemo test = (demo.com.testdemo)request.getAttribute("test");

if (test == null)

{

try

{

test = (demo.com.testdemo) java.beans.Beans.instantiate(getClass().getClassLoader(),"demo.com.testdemo");

}

catch (Exception _beanException)

{

throw new weblogic.utils.NestedRuntimeException("cannot instantiate 'demo.com.testdemo'",_beanException);

}

request.setAttribute("test", test);

out.print("\r\n");

}

out.print("\r\n\r\n\r\n");

test.print("this is use java bean");

testdemo td= new testdemo();

td.print("this is use new");

五、JSP的调试

JSP的调试比较麻烦,特别是当bean是在一个session中存在时,更加困难。得从好几个页面开始往里面走才行。通常是用out.println()或System.out.print()来打一大堆的信息来查问题。如果是用jbuilder做开发,它能直接调试JSP.不过更重要的是知道错误产生的原因及解决方法。下面对一些JSP编程常见错误进行分析。

(1).java.lang.NullPointerException异常

一般是对一个为NULL值的变量进行操作引起的.如下面的操作就会抛出java.lang.NullPointerException

String a = null;

a.substring(0,1);

为避免这种异常,最好在对变量操作之前检查看它是否为NULL值.如:

(2).JSP是用JAVA写的,所以它是大小写敏感的,用过其他编程语言的人最容易犯这个错误。另外在浏览器的地址栏中输入的访问JSP的地址也

是区分大小写的.如http://localhost:7001/demo/t.jsp与http://localhost:7001/Demo/t.jsp是不一样的.

(3).在jsp中判断字符串要使用compareTo方法,不要用==,因为在java中String变量不是一个简单的变量而是一个类实例,不同的方法会得到 不同的结果,如下所示:

1.

String str1="ABCD";

String str2="ABCD"; (或 String str2="AB"+"CD"; )

if (str1==str2)

out.print("yes");

else

out.print("no");

结果是"yes"。

2.

String str1,str2,str3;

str1="ABCD";

str2="AB";

str3=str2+"CD";

if (str1==str3)

out.print("yes");

else

out.print("no");

结果是"no"。

3.

String str1=new String("ABCD");

String str2=new String("ABCD");

if (str1==str2)

out.print("yes");

else

out.print("no");

结果是"no"。

4.

String str1=new String("ABCD");

String str2=new String("ABCD");

if (str1.compareTo(str2)==0)

out.print("yes");

else

out.print("no");

结果是"yes"。

(4)防止JSP或SERVLET中的输出被浏览器保存在缓冲区中:

浏览器在默认情况下会把浏览过的网页保存在缓冲区中,在调试时,一般不希望这样.把下面的脚本加入程序中,就可

防止JSP或SERVLET中的输出被浏览器保存在缓冲区中

在IE中也可通过设置实现:把/工具/INTERNET选项/常规/设置/的检察所存页面的较新版本,设为每次访问该页时都检查.

六、COOKIE

HTTP COOKIE实质是服务端与在客户端之间传送的普通HTTP头,可保存也可不保存在客户的硬盘上.如果保存,每一个文件大小不超过4K的文本文件.多个COOKIE可保存到同一个文件中. 如果从编程角度来看,在JSP中COOKIE就是JAVA提供的一个类.常用的方法如下所表示,因为客户端可能不接受COOKIE,所以建议不用它,改用SESSION等其他方式。 public class cookie

{

public String getDomain() //返回该COOKIE的有效域

public int getMaxAge() //返回该COOKIE的有效期,单位为秒

public String getName() //返回该COOKIE的名称

public String getPath() //返回该COOKIE的有效路径

public boolean getSecure() //返回该COOKIE的安全设置

public String getValue() //返回该COOKIE的值

public void setDomain(java.lang.String pattern) //设置该COOKIE的有效域

public void setMaxAge(int expiry) //设置该COOKIE的有效期,单位为秒

public void setPath(java.lang.String uri) //设置该COOKIE的有效路径

public void setSecure(boolean flag) //设置该COOKIE的安全设置

public void setValue(java.lang.String newValue) //设置该COOKIE的值

}

一个COOKIE包含以下五部分:

1. NAME/VALUE对,设置该COOKIE的名字及它保存的值

2. COOKIE通常和服务器相关,如果将域设为JAVA.SUN.COM,那么该COOKIE就和这个域相关,只对该网址起作用,当浏览该网址时,浏览器将把该 COOKIE的内容发送给服务端,COOKIE是作为HTTP HEADER的一部分被发送的,如果没有设置域,那么COOKIE就只和创建该COOKIE的服务器相关.

3. 路径用于指定服务器上可以使用该COOKIE的文件所在的路径,它只对该网址下的该路径下的应用起作用."/"表示服务器上所有目录都可以使 用该COOKIE.

4. COOKIE都有一个有效期,有效期默认值为-1,这表示没有保存该COOKIE,当该浏览器退出时,该COOKIE立即失效.

5. 安全选项true/false,如果设置为true,那么在服务端与在客户端之间传送该COOKIE的内容时,采用HTTPS协议.

如何检查一个客户端是否支持COOKIE的方法:

用下面的方法写一个COOKIE到客户端,并确认成功

try

{

Cookie c = new Cookie("mycookie","COOKIE TEST");

response.addCookie(c);

}

catch(Exception e)

{

System.out.println(e);

}

然后在一个新的JSP文件中:用下面的方法取客户端的COOKIE到cookies中,

如果cookies.length ==0,说明该客户端的浏览器不支持COOKIE

try

{

Cookie[] cookies = request.getCookies();

if(cookies.length ==0)

{

System.out.println("not support cookie");

}

}

catch(Exception e)

{

System.out.println(e);

}

八、JSP和SERVLET的区别

SUN首先发展出SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方式,是一句一句输出,所以,编写和修改HTML非常不方便。 后来SUN推出了类似于ASP的JSP,把JAVA代码嵌套到HTML语句中,这样,就大大简化和方便了网页的设计和修改。ASP,PHP,JSP都是嵌套型的SCRIPT语言。 一个分布式系统应分为三层:表示层,业务逻辑层,数据存取层,在J2EE体系结构中,SERVLET用来写业务逻辑层是很强大的,但是对于写表示层就很不方便。JSP则主要是为了方便写表示层而设计的。ENTITY BEAN实现数据存取层,SESSION BEAN实现业务逻辑层。如果是简单的应用系统,可采用JSP+BEANS的结构进行设计,JSP中应该仅仅存放与表示层有关的东西,也就是说,只放输出HTML网页的部份。而所有的数据计算,数据分析,数据库联结处理,统统是属于业务逻辑层,应该放在JAVA BEANS中。通过JSP调用JAVA BEANS,实现两层的整合。 实际上,微软的DNA技术,简单说,就是ASP+COM/DCOM技术。与JSP+BEANS完全类似,所有的表示层由ASP完成,所有的业务逻辑由COM/DCOM完成。 为什么要采用这些组件技术呢?因为单纯的ASP/JSP语言是非常低效率执行的,如果出现大量用户点击,纯SCRIPT语言很快就到达了他的功能上限,而组件技术就能大幅度提高功能上限,加快执行速度。另外一方面,纯SCRIPT语言将表示层和业务逻辑层混在一起,造成修改不方便,并且代码不能重复利用,采用组件技术就只改组件就可以了。 对于复杂的应用,应该采用ENTITY BEAN实现数据存取层,SESSION BEAN实现业务逻辑层,用JSP来调用SESSION BEAN,由SESSION BEAN调用ENTITY BEAN。即采用JSP+EJB来构建一个复杂的分布式系统。它比JSP+BEAN具有更高的吞吐量,可靠性,安全性。综上所述,对简单应用,可采用JSP+BAEN,对复杂的应用系统,应采用JSP+EJB,SERVLET变的无足轻重。用JSP完全可替代它。

更多相关推荐:
spss学习心得

学院:传播学院专业:10级广播电视新闻学学号:1290120xx023姓名:许咪咪学习SPSS有感——与EXCEL之比较在学习SPSS软件的过程中,自己不敢有丝毫松懈,但同时感到学习压力很大,有一定的学习难度,…

spss心得体会

学习SPSS在教育统计中的应用心得体会一什么是SPSS为什么要学习SPSS新学期开始时在信息化教育测量与评价的课程中第一次接触到SPSS这个软件作为本科是计算机专业出身的我当时只知道SPSS是一套统计软件就是一...

dsp学习心得

一.我是已经从事DSP开发有几年了,看到许多朋友对DSP的开发非常感兴取,我结合这几年对DSP的开发写一写自己的感受,一家之言,欢迎指教。我上研究生的第一天起根据老板的安排就开始接触DSP,那时DSP开发在国内…

dsp 学习总结

一Bios的启动过程DSP/BIOS的启动过程包括以下几步:*初始化DSP:复位中断向量指向c_int00地址,DSP/BIOS程序从入口点c_int00开始运行。对C6000,初试化堆栈指针(B15)和全局页…

dsp调试can一点心得

dsp调试can一点心得调试的过程也就是学习的过程,无前人领路,只有自己摸索,不免要耗费更多的时间和精力,从看书到调试到完全调通,用了差不多一星期的时间,当然不是全满,嘿嘿,偶尔还是要玩玩,在这里总结一下,脑子…

dsp_学习心得

如果说前几年DSP作为一个器件,一个处理器或一个事物是相对比较新的东西,那么现在DSP已经在我们电子设计开发中非常常见了。首先我们从定义上简单理解一下DSP。我们涉及到的DSP主要是只这里特指数字信号处理器芯片…

dsp实验报告心得体会

TMS320F2812xDSP原理及应用技术实验心得体会1.设置环境时分为软件设置和硬件设置,根据实验的需要设置,这次实验只是软件仿真,可以不设置硬件,但是要为日后的实验做准备,还是要学习和熟悉硬件设置的过程。…

css学习经验与心得

关于CSS的学习经验和心得1网站网页做给谁看人和电脑人客户电脑电脑浏览器搜索引擎等从客户的角度设计页面从电脑的角度编写代码2网页分类与构成分类从程序上讲分为动态和静态结构从代码结构上ltDOCTYPEhtmlg...

js学习心得

关于js的定时问题有以下两种解决方案1setTimeoutfunction39abouttext639togglequotslowquot20xx只执行一次2setIntervalfunction39about...

asp学习心得

近几天正好有时间静下心来搞下技术研究便打算好好学习学习asp到网上到处找asp教程大多都是你转我我转你谬误不少有些连我这个asp的外行都能一眼看出最后我发现windows自带的教程都很不错看来我们还是没有好好挖...

asp编程心得回放

asp编程心得回放学好一门编程语言有两个条件是必不可少的一是理论与实践结合在实际例程去验证书本上的理论能加深你对理论的理解二是学会总结把学习运用中的心得体会记下来当成一种经验或者教训加以提炼并在日后的应用中加以...

aspnet软件开发学习总结

asp.net学习经验总结通过几个月的学习,我初步掌握ASP.NET开发平台的基本知识,也通过老师的教学,完成了实际项目中的应用。由于大学学习中打下了较为扎实的C#基础,所以在选择开发平台学习时选择了ASP.N…

spss学习心得(2篇)