本文目录一览:
- 1、获取与修改beans的属性用什么动作标签
- 2、JSP的语法标识有哪几种?
- 3、jsp中用javaBean为什么这个类的引用是无效的?
- 4、jsp中使用javabean,应该把编译生成的字节码类文件class放在tomcat的哪个目录下
- 5、编写三个JSP 页面:main.jsp 、circle.jsp和radius.jsp,并保存在同一文件夹。具体要求如下:
- 6、jsp文件怎么运行??
获取与修改beans的属性用什么动作标签
获取和修改 beans 的属性
当使用 useBean 动作标签创建一个 beans 后,在 Java 程序片中这个
beans就可以调用方法产生行为,比如修改属性,使用类中的方法等,如前面的例子所示。获取或修改 beans的属性还可以使用动作标签
getProperty、setProperty,下面讲述怎样使用这两个 JSP 的动作标签去获取和修改 beans 的属性。
getProperty 动作标签
使用该标签可以获得 beans 的属性值,并将这个值用串的形式显示给客户,使用这个
标签之前,必须使用 useBean 标签获得一个 beans。
getProperty动作标签设置和获取 beans 属性的方式:
jsp:getProperty name=“beans 的名字” property=“beans的属性” /
或
jsp:getProperty name=“beans 的名字” property=“beans的属性”
/jsp:getProperty
其中,name 取值是 beans 的名字,用未指定要获取哪个 beans 的属性的值;property取值是该 beans 的一个属性的名宇。该指令的作用相当于在程序片中使用 beans 调用 getXxx()方法。
setProperty 动作标签
使用该标签可以设置 beans 属性的值。使用这个标签之前,必须使用 useBean标签得到一个可操作的 beans。
setProperty动作标签可以通过 3 种方式设置 beans 属性的值。
(1)将 beans 属性的值设置为一个表达式的值或字符串。
这种方式不如后面的两种方式方便,但当涉及属性值是汉字时,使用这种方式更好一些。
beans 属性的值设置为一个表达式的值:
jsp:setProperty name=“beans 的名字" property="beans 的属性" value="%=表达式%" /
Beans 属性的值设置为一个字符串:
jsp:setProperty name="beans 的名字" property="beans 的属性" value="字符串" /
如果将表达式的值设置为 beans 属性的值,表达式值的类型必须和 beans 属性的类型一致。如果将字符串设置为 beans属性的值这个字符串会自动被转化为 beans 属性的类型。
Circle.java
package bean;
import java.io.*;
//JavaBeans
public class Circle {
int radius;
public Circle(){
radius=1;
}
public int getRadius() {
return radius;
}
public void setRadius(int radius) {
this.radius = radius;
}
public double circleArea(){
return Math.PI*radius*radius;
}
public double circleLength(){
return Math.PI*2*radius;
}
}
useBean.jsp
%@ page language="java" contentType="text/html; charset=gb2312"%
%@page import="bean.Circle" %
!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" ""
html
head
meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"
titleInsert title here/title
/head
body
jsp:useBean id="test1" class="bean.Circle" scope="page"/jsp:useBean
%
test1.setRadius(10);
%
%=test1.getRadius() %
jsp:setProperty name="test1" property="radius" value="1000"/
jsp:getProperty name="test1" property="radius" /
/body
/html
JSP的语法标识有哪几种?
JSP基础语法有:2中注释类型、3个脚本元素、3个指令元素、8个动作指令、9个内置对象。
补充:JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它[1] 是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML(标准通用标记语言的子集)文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件,后缀名为(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。
jsp中用javaBean为什么这个类的引用是无效的?
%@ page language="java" contentType="text/html;charset=GBK" pageEncoding="ISO-8859-1" session="True"%
去掉import 你的jsp:useBean里的class="circle.Circle"这个class的属性不能用import来导入必须写全名
jsp:useBean id="circleBean" scope="page" class="circle.Circle" /jsp:useBean
去掉type type属性是 其实就是设置一个class的类的父类的引用你的Circle又不是继承String来的
-----------------------
最后说下你这个bean一点都不好
public double circleLength(){
return Math.PI*radius*2.0;
}
public double circleArea(){
return Math.PI*radius*radius;
这两个方法加进去完全是画蛇添足 使用jsp:useBean的主要用途就是不在jsp出现任何的脚本程序也就是% %或者%= % 式前台(写网页部分)和后台(jsp 和Servlet开发)完全分开
jsp中使用javabean,应该把编译生成的字节码类文件class放在tomcat的哪个目录下
放在WebRootWEB-INFclasses包名 文件夹下,建议楼主用那个MyEclipse写jsp,它会自己编译好了放在相应的文件夹下,不需要自己手动编译。
你那里再在classes下加个包名的文件夹,然后放进去吧
编写三个JSP 页面:main.jsp 、circle.jsp和radius.jsp,并保存在同一文件夹。具体要求如下:
if(username.equals("user")pwd.equals("user123")){response.sendRedirect("sucess.jsp");out.println("用户名为:"+username);out.println("密码为:"+pwd);}这段代码换成if(username.equals("user")pwd.equals("user123")){ session.setAttribute("username",username); session.setAttribute("pwd",pwd); response.sendRedirect("sucess.jsp");}然后在另外一个页面中取出就行了
jsp文件怎么运行??
你的工程名字没有写,应该是这样
你的工程名/Circle.jsp
当然这个工程要部署到web容器上才行
说明:你首先是建立一个web的过程吧,例如工程名称叫做:firstweb,然后你在webroot下面创建了一个jsp文件,写好后,你把这个工程部署到web容器中(Tomcat),然后你通过url:
就可以访问到此页面了。