java usebean_import java类 和 jsp:useBean 的区别

import 只是帮你在这个页面中声明对一个类的引入,并没有使用这个类

jsp:useBean是帮你产生一个类的实例:),用import是没有直接的产生实例!但是不是说不能生成!

而jsp:useBean是直接生成的!那么效率也就不用说了吧!useBean是在ACTION里serAttribute的实例,也就是带有数据的实

例,而import是没有实例过的CLASS,两者概念完全不同的!

这个无所谓常用不常用的问题,假设我现在要在JSP中引用java.util.Date这个类作为JAVABEAN

可以这样写:

class="java.util.Date" />

/>

也可以这样写:

"java.util.Date"%>

Date date=new Date();

out.println(date.getTime());

%>

两种效果是一样的,

第一种是以标签的形式,即JAVABEAN来实现的,这种方式要求JAVA类中有不带参数的构造函数,并且初始化时只能初始化不带参数的构造函数

第二种是以传统的编码方式来实现的,可以初始化带参数的构造函数,并且不需要JAVA类中一定带有不带参数的构造函数 第一种方式适合JAVABEAN,即那些只需要简单显示属性的值,或设置属性的情况

第二种方式适合工具类的方式,例如需要对某些信息进行格式化输出等等

所以这两种方式的调用要视不同的场合下调用

当然,这些讨论都是基于你的项目是采用JSP+JAVABEAN的这种简单方式而定的,即model1的方式

换一种编程体系,如struts,理想的状况下,这两种方式都不会用到的,一般来说,javabean中只需要包含get和set方法,并且javabean通常只是作为前后台交互数据的媒介,javabean中不应该包含业务逻辑

但在一个项目中,可能或多或少的会在JSP页面中引用JAVA类(如利用工具类对数据进行格式化,尽管不规范,但有时也是很难避免的),这个时候你可能需要用到上述的第二种方式了,当然你如果一定要用JAVABEAN的方式

例如:

class="java.util.Date" />

这样也没错,但这样做会不利于维护,最好的办法就是,尽量不要在页面上包含JAVA代码,把业务逻辑尽量往后台迁移,前台代码尽量的少

其它答案:

一、javabean可以在page,session,application范围内使用,而且只需实例化一次,也就是说如果是

session,application范围,多个jsp页面用的是一个javabean实例,而第二种方法不得不在需要的页面创建实例,那么就不能共享

一个实例了,当bean范围为page时二者无差别;

二、javabeans起初是用于可视化的组件

设计,定义了一些开发规范的类:property,对应的getXXX

&

setXXX,还支持事件处理机制,感觉就像delphi的vcl那么方便。 三、javabean是按技术标准所指定的命名和设计规范而编写的java类,由属性、方法、事件3部分组成。

规范定义了以下几种重要的机制:内省、通信、持续、属性和定制,通过这些可实现在设计平台上所规定的操作。

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:1024 设计师:我叫白小胖 返回首页

打赏作者

花说我像人

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值