五、JavaWeb二层模型-JSP+JavaBean实现
5.1、JSP_JavaBean框架总体说明
新建Web项目:JSP_JavaBean, 参考JSP项目
URL: http://localhost:8080/JSP_JavaBean/login.jsp
本节包含三个部分:
1、JavaBean技术基础
2、数据库JavaBean技术——DBAccess.jsp
3、JavaBean业务应用——UserBean.jsp
源代码:
http://download.csdn.net/detail/big2008bone/8850973
实例需求,请看博文:
http://blog.csdn.net/big2008bone/article/details/46682421
5.2、JSP_JavaBean技术实现
5.2.1、JavaBean技术基础
JavaBean是软件组件模型,类似微软COM组件,在JSP程序中经常用于业务逻辑的封装,操作数据库等。
使用JavaBean将数据逻辑与前台页面分离,使用程序模块化更具有灵活性,更会维护。
第一步,创建javaBean 对象
import java.io.*;
public class FirstJavaBean{
private String FirstProperty= newString(“”);
public FirstJavaBean(){
}
public String getFirstProperty(){
Return FirstProperty;
}
public void setFirstProperty(Stringvalue){
FirstProperty = value;
}
}
FirstProperty为类的属性,通过get 和set 来读写。
JavaBean都有哪些属性呢?
1、Simple属性
2、indexed属性 ——针对数值,表示一个数组值
3、Bound属性——当然属性发生变化时,触发一个PropertyChange事件来通知其他对象。
4、Constrained属性
第二步、在jsp中实例,并引用JavaBean对象
<BODY>
<!—初始化,实例一个JavaBean-->
<jsp:useBean id=”FirstPropertyid”scope=”session”
Class=” FirstJavaBean”>
<!—通过个Bean直接调用属性方法-->
<%out.println(“The Fist Property is:”+
FirstPropertyid.getFirstProperty()+”<BR>”)%>
<!—通过个指令动作直接调用Bean的属性-->
The Fist Propertyis:<jsp:getProperty
name=” FirstPropertyid” property=”FirstProperty”><BR>
</BODY>
5.2.2、JavaBean实现数据逻辑的操作
之前使用inc.jsp文件来存放配置信息,并且在JSP文件中实现数据库的操作。现在我们通过创建DBAccess.java的javaBean来实现对数据库的操作。在原来demo(JSP)基础上删除inc.jsp文件,并删除所有jsp对它的引用。
使用jsp.war import新的项目JSP_JavaBean
新增class文件 DBAccess.java (放在指定package中,不然运行会报错)
右击“source”—“生成Getter和Setter”命令生成所有set和get方法
在新增对数据库操作方法:
1、openConn()
2、closeConn()
3、executeSql ()
4、querySql ()
5、next()
6、getValue()
参考源代码:JSP_JavaBean
5.2.3、JavaBean业务应用
业务上我们要实现如下功能,登录,注册,退出
新增java文件UserBean.java
实现三个方法:
1、登录时验证 Valid()
2、检查用户是否存在 isExist()
3、添加用户 addUser()
http://localhost:8080/JSP_JavaBean/login.jsp
异常:
应该是class没有加载到JSP中
解决的方法:将DBAccess.java 和UserBean.java 创建在
Package 包com下,然后再JSP中引入这个java文件。
如果java文件放在默认package下Eclipse开放时,不会显示错误,但是运行时不通过。
5.2.4、程序结构总结
和JSP框架比起来,我们新增Java类的使用,目录Src上新增com和java内容: 如下
其中运行后,再build目录自动生成classes/com目录,存放java对应class文件。
JSP_JavaBean框架,将业务逻辑都放在java类中处理,实现和jsp的分离。有利后期维护和开发。
接下来请看下面三层模型