博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSP开发模式
阅读量:4326 次
发布时间:2019-06-06

本文共 2326 字,大约阅读时间需要 7 分钟。

JSP开发模式

JSP+JavaBean模式与JSP+Servlet+JavaBean模式

Model1,
JSP+JavaBean模式适合开发业务逻辑不太复杂的web应用程序,在这种模式下,JavaBean用于封装业务数据,JSP即负责处理用户请求,又显示数据,(JSP中编写业务控制逻辑代码)
Model2,
JSP+Servlet+JavaBean(MVC)模式适合开发复杂的web应用,在这种模式下,Servlet负责处理用户请求,jsp负责数据显示,javaBean负责封装数据,各个模块之间层次清晰,web开发推荐采用此种模式。
MVC架构模式组成
1,Model(模型)封装数据,处理数据
2,View(视图)用来页面显示
3,Controller(控制器)控制程序处理流程

JavaBean

JavaBean是一个类,必须存在一个无参数的构造方法,所有成员属性都是private私有化的,向外提供访问方式get和set方法。
在JSP规范中,提供了三个与JavaBean相关的动作标签
<jsp:useBean id="person" scope="page" class="cn.itcast.javabean.Person">用于在指定的域范围内查找指定名称的应用,如果存在返回该JavaBean对象Person的引用保存在page域范围内的person属性中
<jsp:setProperty property="name" name="person" value="Tom">设置属性,注意property="*"时自动存储
<jsp:getProperty property="name" name="person">获取属性显示在页面
因为实际开发中主要使用Model2模式所以javaBean标签现在很少使用

Model1,简单计算器主页
javaBean封装计算器数据与运算
JSP显示页面,处理请求
非法数据的校验(客户端校验通过JS,服务端校验)
客户端校验
在form表单提交数据时,onsubmit事件返回checkForm方法
<form οnsubmit="return checkForm()">
<script>
function checkForm(){
var first=document.getElementById("first").value;
var second=document.getElementById("second").value;
if(first==""||isNaN(first)){
alert("第一个参数必须是数字");
return false;//返回false提交不成功
}
....
}
</script>
关于精度问题的处理使用java中的BigDecimal类进行处理

内省(introspector)

JDK提供的一套JavaBean操作的API,对JavaBean的操作可以通过反射技术操作,而JDK就提供了一套基于反射技术操作JavaBean的方法即内省技术
1,导包imort java.beans.*
2,通过Introspector或得JavaBeanInfo信息
Introspector.getBeanInfo(Person.class);
3.通过JavaBeanInfo对象获取所有属性描述器和方法描述器,返回的是一个数组
getMethodDescriptor()
getPropertyDescriptor()
4.遍历通过属性和方法设置javabean数据

内省封装form数据到javabean中的过程一般不自己编写,使用已经写好的工具开发包BeanUtils内省开发包,其中封装了对javabean的操作

BeanUtils由阿帕奇公司提供,专门进行javaBean操作,在web层开发框架中被集成内置使用。
下载BeanUtils的jar;commons-beanutils connons-logging
将beanutils和logging的jar包复制到web-inf下的lib中
接下来就可以编写beanutils的封装程序了
在Servlet处理请求程序中
Person p=new Person()
Beanutils.populate(p,request.getParameterMap()); 该方法直接将接收到属性map集合封装到对象中
在进行数据封装时,当客户端提交的数据类型与javabean封装属性数据类型不同时,需要进行类型转换,beanutils内部封装了类型转换器接口和一些常见的转换器实现,对于特殊类型的数据需要自定义转换器实现该接口Converter,复写convert转换方法。

Model2案例;用户注册和登录

1,将用户信息保存xml文件中-----xml文件读写 pull解析
2,注册;将用户信息写入xml ----xml节点操作---一次性验证码
3,登录;xml节点查询,----记住用户账号密码
注册功能 register.jsp(注册页面form表单)----RegisterServlet----封装数据Uesr-----将User信息写入XML UserModel-----注册结果页面Jsp
步骤
1,创建web工程
2,导入jar包搭建环境,xpp3.jar,beanutils.jar,logging.jar
3.创建Package结构;公司.部门.项目.分包

转载于:https://www.cnblogs.com/ss561/p/4642256.html

你可能感兴趣的文章
JavaBean规范
查看>>
第四阶段 15_Linux tomcat安装与配置
查看>>
NAS 创建大文件
查看>>
学习笔记-模块之xml文件处理
查看>>
接口测试用例
查看>>
面试:用 Java 实现一个 Singleton 模式
查看>>
Sybase IQ导出文件的几种方式
查看>>
案例:手动输入一个字符串,打散放进一个列表,小写字母反序 大写字母保持不变...
查看>>
linux 系统下 tar 的压缩与解压缩命令
查看>>
阿里负载均衡,配置中间证书问题(在starcom申请免费DV ssl)
查看>>
转:How to force a wordbreaker to be used in Sharepoint Search
查看>>
MySQL存储过程定时任务
查看>>
Python中and(逻辑与)计算法则
查看>>
POJ 3267 The Cow Lexicon(动态规划)
查看>>
设计原理+设计模式
查看>>
音视频处理
查看>>
tomcat 7服务器跨域问题解决
查看>>
前台实现ajax 需注意的地方
查看>>
Jenkins安装配置
查看>>
个人工作总结05(第二阶段)
查看>>