jsp中使用JavaBean使用户提交计算机信息并获取

本实验有三个页面,

1)input.jsp和show.jsp:

用户在input.jsp页面输入计算机的品牌、型号、价格和数量,并提交给当前页面。当前页面调用名字为computer的bean对象,存储计算提交的数据。input.jsp页面提供访问show.jsp页面的超链接。注:当用户提交的数据有空值,价格或数量不是数字时,程序要处理并给用户返回相应错误信息。

show.jsp页面调用名为computer的bean,显示该bean的各个属性值。分别用动作标记和EL表达式两种方式返回要显示的数据。

(提示:input.jspshow.jsp页面使用同一个computer对象,在创建computer,scope值为session)

2)Computer.java:

Computer.java具有描述计算机品牌、型号、价格、数量和总金额等属性,并提供相应的getXXX和setXXX方法。本类在包com.my.bean中。

写出input.jspshow.jspComputer.java的内容。

页面显示效果如下图:

 

input.jsp

 <%@ page contentType="text/html; charset=UTF-8"%>
<jsp:useBean id="computer" class="com.my.bean.computer" scope="session"></jsp:useBean>
  <script type="text/javascript">
   function notNull(f){
     var a = f.sign.value;
     var b = f.type.value;
     var c = f.price.value;
     var d = f.number.value;
     
     var numVal=/^[1-9]\d*$/;
     if(a.length==0 ){
       alert("输入不能为空");
       f.a.select();
     }
      if(b.length==0 ){
       alert("输入不能为空");
       f.b.select();
     }
  
   }
 </script>
 //JavaScript函数,增加判断输入是否为空或是是否为数字
  <form action="" method="post" οnsubmit="return notNull(this)">
    <p>品牌:<input type="text" name = "sign"/>
    <p>型号:<input type="text" name = "type"/>
    <p>价格:<input type="text" name = "price"/>
    <p>数量:<input typr="text" name = "number"> 
     </br> </br>
    <input type=submit name = "提交"> 
   
  </form>

  <jsp:setProperty property="*" name="computer" />   

 //*号代表设置全部的属性值,name表示属性值,与JavaBean中属性值保持一致

 

  <a href="show.jsp"> 访问show.jsp,查看相关信息!</a>

//超链接跳转 等价于response.sendRedirect("show.jsp"); //重定向

show.jsp

<%@ page contentType="text/html; charset=UTF-8"%>
<jsp:useBean id="computer" class="com.my.bean.computer" scope="session"></jsp:useBean>

 <p>计算机的品牌:<jsp:getProperty property="sign" name="computer"/></p></br>
 <p>计算机的型号:<jsp:getProperty property="type" name="computer"/></p></br>
 <p>计算机的价格:<jsp:getProperty property="price" name="computer"/></p></br>
 <p>计算机的数量:<jsp:getProperty property="number" name="computer"/>
 

 Computer.java

package com.my.bean;
import java.io.UnsupportedEncodingException;

public class computer {
   String sign,type;
   int price,number;
   double total;
public double getTotal() {
total = price*number;
return total;
}
public String getSign() {
return sign;
}
public void setSign(String sign) {
try{
sign = new String(sign.getBytes("ISO-8859-1"),"UTF-8");
}catch (UnsupportedEncodingException e){
e.printStackTrace();
}   //处理字符集,即处理客户端中文乱码的问题
this.sign = sign;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public int getNumber() {
return number;
}
public void setNumber(int number) {
this.number = number;
}
   
}

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值