任务1基于MVC实现漫画类型的删除与修改_第1页
任务1基于MVC实现漫画类型的删除与修改_第2页
任务1基于MVC实现漫画类型的删除与修改_第3页
任务1基于MVC实现漫画类型的删除与修改_第4页
任务1基于MVC实现漫画类型的删除与修改_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

5.1任务1:基于MVC实现漫画类型的删除与修改任务描述在管理员主页(admin.jsp),点击“更多种类”链接,跳转到种类列表页面(typeList.jsp),显示所有漫画类型;点击“删除”链接,完成漫画类型的删除操作;点击“修改”链接,跳转到种类修改页面(editType.jsp),完成漫画类型的修改操作。任务描述技能目标理解JavaBean的概念与应用能够基于MVC完成数据操作技能目标5.1.1JavaBean简介一、JavaBean的概念广义上来说,任何一个构成Java应用程序的class文件,都叫JavaBean。广义JavaBean一般可以分为两类:1、数据承载bean,即实体类,如User、Cartoon、CartoonType等用于储存数据的类。2、业务处理bean,比如项目中数据访问层和业务逻辑层的功能类,专门用于数据处理。狭义上来说,JavaBean是特殊的Java类,遵守JavaBeanAPI规范。具体要求如下:1、该类必须声明为public类;2、该类必须可序列化,即实现Serializable接口;3、该类必须有无参构造器(使用默认的无参构造或者显式定义);4、类中所有属性必须是私有的,并提供相应的setter、getter方法;一般情况下,数据承载bean会被定义成满足JavaBeanAPI规范的bean。5.1.1JavaBean简介二、<jsp:useBean>动作元素<jsp:useBean>动作用来加载一个将在JSP页面中使用的JavaBean。该动作可以发挥Java组件复用的优势。其语法形式如下:<jsp:useBeanid="beanName"class="package.class"scope="page|request|session|application"/>其中,id属性代表一个JavaBean的唯一标识,在执行JSP时,JavaBean被实例化为对象,其对象名就是这个id;然后,将这个对象存储在scope指定的作用域中,所用的属性名也是这个id。class属性用于指定这个JavaBean所对应的Java类的全名称。scope属性用于指定JavaBean的作用范围,scope的值可以是page、request、session、application四者之一,默认为page。5.1.1JavaBean简介1、<jsp:setProperty>动作元素用来设置已经实例化的bean对象的属性,有两种用法:第一种用法:在<jsp:useBean>元素的外面(后面)使用语法形式如下:<jsp:useBeanid="myName"...></jsp:useBean>...<jsp:setPropertyname="myName"property="someProperty"value="value".../>此时,不管jsp:useBean是找到了一个现有的bean,还是新创建了一个bean实例,jsp:setProperty都会执行。其中,name属性指定JavaBean的名称,它的值应与<jsp:useBean>动作中的id属性值一致;property属性指定要设置的JavaBean的属性名称;value属性指定bean属性的值。5.1.1JavaBean简介

第二种用法:在<jsp:useBean>元素的内部使用语法形式如下:<jsp:useBeanid="myName"...>...<jsp:setPropertyname="myName"property="someProperty"value="value".../></jsp:useBean>此时,jsp:setProperty只有在新建bean实例时才会执行,如果是使用现有实例则不执行。5.1.1JavaBean简介property属性有一种特殊用法,语句格式如下:<jsp:setPropertyname="myName"property="*"/>其中,“*”表示JSP引擎将发送到JSP页面的请求参数逐个地和JavaBean的属性名称进行匹配,当用户请求参数的名称与JavaBean的属性名称相匹配时,自动完成属性赋值。5.1.1JavaBean简介2、<jsp:getProperty>动作元素<jsp:getProperty>动作元素用于提取指定bean属性的值,转换成字符串,然后输出。语法格式如下:<jsp:useBeanid="myName".../>...<jsp:getPropertyname="myName"property="someProperty".../>其中,name用于指定bean名称;property用于指定要从bean中检索的属性名称。5.1.2MVC编程模式在MVC模式中,应用程序被划分成了模型(Model)、视图(View)和控制器(Controller)三个部分。其中,模型部分包含了应用程序的业务逻辑和业务数据;视图部分封装了应用程序的输出形式,也就是通常所说的页面或者是界面;而控制器部分负责协调模型和视图,根据用户请求来选择要调用哪个模型来处理业务,以及最终由哪个视图为用户做出应答。5.1.3JSPModel1与Model21、传统的JSPModel1模型在传统的Model1模式下,整个Web应用全部由JSP页面组成,JSP页面接收处理客户端请求,并做出响应。5.1.3JSPModel1与Model22、改进的JSPModel1模型在改进的Model1模式下,用少量的JavaBean来处理数据库访问等操作,由JSP页面与JavaBean共同协作完成任务。5.1.3JSPModel1与Model23、JSPModel2模式JSPModel2中使用了JSP、Servlet和JavaBean三种技术。其中,JSP负责生成动态网页,只用做界面;Servlet负责流程控制,用来处理各种请求的分派;JavaBean负责业务逻辑及对数据库的操作。5.1.4MVC模式与三层架构的区别任务实现一、搭建三层架构,并完成数据访问层代码1、新增数据访问接口方法在数据访问接口(CartoonTypeDao)中,新增返回漫画类型列表(List<CartoonType>getTypeList())、根据编号删除漫画类型(intdelType(inttypeid))及漫画类型修改(intupdateType(CartoonTypetype))三个方法。任务实现2、实现数据访问方法在数据访问类(CartoonTypeDaoImpl)中,结合通用BaseDao,实现数据访问接口中新增的三个方法。任务实现二、完成业务逻辑层代码在业务逻辑接口(CartoonTypeBiz)中,新增返回漫画类型列表(List<CartoonType>getTypeList())、根据编号删除漫画类型(intdelType(inttypeid))及漫画修改(intupdateType(CartoonTypetype))三个方法;并在业务逻辑类(CartoonTypeBizImpl)中,通过调用数据访问层的方法,实现这三个方法。任务实现三、创建漫画类型列表页面在Web根目录WebRoot下的adminpages文件夹中,新建漫画列表页面typeList.jsp。任务实现四、创建漫画类型修改页面在WebRoot/adminpages下,新建漫画修改页面editList.jsp。其中,action属性中的typeservlet是用于进行流程控制的Servlet,即控制器;URL参数opr用于指定操作类型,del表示删除,edit表示修改;URL参数typeid用于传递当前漫画类型的编号,作为删除或修改漫画类型的条件。任务实现六、实现Servlet控制器新建控制器TypeServlet,在doPost()方法中获取URL地址栏参数opr和typeid,并根据opr参数值调用业务逻辑层相应的删除或修改方法。任务实现七、设置框架链接在管理员主页admin.jsp中,添加<iframe>框架标签,并用超链接属性target将其设置为目标框架。拓展与提高在JavaWeb项目中可以将一些通用的配置(如产品名称等)放置在.properties文件中,然后在页面中直接读取配置值;在需要对通用配置做变更时即可做到一处修改、处处生效。拓展与提高可以使用java.util包下的ResourceBundle来读取properties文件中的属性,步骤如下:1、在JSP页面中引入java.util包<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%>2、使用ResourceBundle加载properties文件ResourceBundleresource=ResourceBundle.getBundle("FileName");//不需要properties扩展名3、读取配置值resource.getString("ArgName");//参数为属性名

以下是获取配置文件的属性值的完整代码:<%@pagelanguage="java"import="java.util.*"pageEncoding="UTF-8"%><%ResourceBundleresource=ResourceBundle.getBundle("database");

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论