用Eclipse开发java web应用程序.ppt

上传人:sh****n 文档编号:7502361 上传时间:2020-03-22 格式:PPT 页数:36 大小:295KB
返回 下载 相关 举报
用Eclipse开发java web应用程序.ppt_第1页
第1页 / 共36页
用Eclipse开发java web应用程序.ppt_第2页
第2页 / 共36页
用Eclipse开发java web应用程序.ppt_第3页
第3页 / 共36页
点击查看更多>>
资源描述
第2讲基于Servlet JavaBean Jsp开发应用的过程 第2讲基于Servlet JavaBean Jsp开发应用的过程 本讲主要介绍主流的javaweb编程技术 设计模式和框架 以及如何利用Eclipese开发Web应用程序 要点 1 JavaWeb编程的主要组件技术 2 MVC设计模式 3 用Eclipse构建一个基于MVC模式的JavaWeb的应用程序 目的 掌握如何用Eclipse构建一个基于MVC模式的JavaWEB的应用程序 2 1javaweb编程的主要组件技术 HtmljspServletJavabeanJdbcXmlTomcatMySQL 2 2MVC设计模式 今天 我们见到的绝大部分应用 都是基于B S 浏览器 服务器 架构的 其中的服务器就是Web服务器 可见 Web应用是目前广泛使用的应用模式 Web程序开发方法的发展 JSP的Model1JSP的Model2MVC 1Model1和Model2 对于Java的动态Web编程技术而言 则经历了Model1和Model2时代 Model1 Model1就是JSP大行其道的时代 在Model1模式下 整个Web应用几乎全部由JSP页面组成 JSP页面接收处理客户端请求 对请求处理后直接做出响应 用少量的JavaBean来处理数据库连接 数据库访问等操作 Model2 Model2下JSP不再承担控制器的责任 它仅仅是表现层角色 仅仅用于将结果呈现给用户 JSP页面的请求与Servlet 控制器 交互 而Servlet负责与后台的JavaBean通信 在Model2模式下 模型 Model 由JavaBean充当 视图 View 由JSP页面充当 而控制器 Controller 则由Servlet充当 Model1的程序流程 特点 由JSP页面组成 JSP页面接收处理客户端请求 对请求处理后直接做出响应 用少量的JavaBean来处理数据库连接 数据库访问等操作 Model2的程序流程 基本上是MVC结构 特点 Model2下JSP不再承担控制器的责任 它仅仅是表现层角色 仅仅用于将结果呈现给用户 JSP页面的请求与Servlet 控制器 交互 而Servlet负责与后台的JavaBean通信 在Model2模式下 模型 Model 由JavaBean充当 视图 View 由JSP页面充当 而控制器 Controller 则由Servlet充当 2Model1和Model2的比较 对于非常小型的Web站点 如果后期的更新 维护工作不是特别大 可以使用Model1的模式来开发应用 而不是使用Model2的模式 虽然Model2提供了更好的可扩展性及可维护性 但增加了前期开发成本 从某种程度上讲 Model2为了降低系统后期维护的复杂度 却导致前期开发的更高复杂度 3MVC思想 MVC并不是Java语言所特有的设计思想 也并不是Web应用所特有的思想 它是所有面向对象程序设计语言都应该遵守的规范 MVC思想将一个应用分成三个基本部分 Model 模型 View 视图 和Controller 控制器 这三个部分以最少的耦合协同工作 从而提高应用的可扩展性及可维护性 MVC MVC M model 是指数据模型 V View 是指用户界面 C Control 则是控制器 使用MVC的目的是将M和V的实现代码分离 从而使同一个程序可以使用不同的表现形式 模型 视图与控制器的分离 使得一个模型可以具有多个显示视图 如果用户通过某个视图的控制器改变了模型的数据 所有其它依赖于这些数据的视图都应反映到这些变化 因此 无论何时发生了何种数据变化 控制器都会将变化通知所有的视图 导致显示的更新 这实际上是一种模型的变化 传播机制 模型 视图 控制器3者之间的关系和各自的主要功能 MVC的组成部分 视图 View 代表用户交互界面 对于Web应用来说就是HTML界面 模型 Model 就是业务流程 状态的处理以及业务规则的制定 控制 Controller 可以理解为一个分发器 他来决定选择什么样的模型 选择什么样的视图 可以完成什么样的用户请求 控制层并不做任何的数据处理 MVC带来的好处 MVC从根本上强制性的将它们分开 最大程度上实现了程序代码与网页的分离 数据和业务规则从表示层分开 所以可以最大化的重用代码 MVC的特点 MVC特点 多个视图可以对应一个模型 按MVC设计模式 一个模型对应多个视图 可以减少代码的复制及代码的维护量 一旦模型发生改变 也易于维护 模型返回的数据与显示逻辑分离 模型数据可以应用任何的显示技术 例如 使用JSP页面 Velocity模板或者直接产生Excel文档等 应用被分隔为三层 降低了各层之间的耦合 提供了应用的可扩展性 控制层的概念也很有效 由于它把不同的模型和不同的视图组合在一起 完成不同的请求 因此 控制层可以说是包含了用户请求权限的概念 MVC更符合软件工程化管理的精神 不同的层各司其职 每一层的组件具有相同的特征 有利于通过工程化和工具化产生管理程序代码 4常用的MVC框架 Struts 包括struts1和struts2两个 JSF JSF是一个标准 目前 JSF是作为JEE5 0的一个组成部分 与JEE5 0一起发布JSF的行为方法在POJO中实现 JSF的ManagedBean无需继承任何特别的类 因此 无需在表单和模型对象之间实现多余的控制器层 JSF中没有控制器对象 控制器行为通过模型对象实现 JSF的事件框架可以细化到表单中每个字段 JSF依然是基于JSP Servlet的 仍然是JSP Servlet架构 因而学习曲线相对简单 2 3用Eclipse构建一个基于MVC模式的JavaWeb应用程序 题目要求 1 技术要求 按照MVC设计模式 利用JSP Servlet及JavaBean构建一个简单的登录系统 2 系统功能要求 当用户在登录页面上填写用户名和密码并提交后 系统检查该用户是否已经注册 若注册 系统进入主页面 否则 进入注册页面 系统的工作流程见下图 2 控制器 1LoginServlet 1 登录页面Login jsp 5 数据组件userdoadb op 6 数据库MySQL 进行验证 不符合格式 返回注册页面 重新注册 并提示出错情况 注册成功 进入登录页面 未注册 登录系统的工作流程 3 提示 登录成功Main jsp 过20秒后再自动进入注册页面 4 进入注册页面Register jsp 7 控制器 2RegisterServlet 8 提示 注册失败Register err jsp 过20秒后再自动进入注册页面 9 注册成功Register succ jsp 过20秒后再自动进入注册页面 已注册 或者 密码错误 10 进入主页面Main2 jsp 构建系统的处理步骤 1 数据库设计 构建数据库表T UserInfo 2 在Eclipse中创建一个项目 Login Proj 3 构建视图组件 登录页面 login jsp 主页面 main jsp 注册页面 register jsp 注册失败 Register err jsp 注册成功 Register succ jsp 4 构建控制层组件 一个servlet LoginServlet java 实现登录的控制一个servlet RegisterServlet Java 实现注册的验证控制 5 构建业务逻辑层组件 模型组件 一个JavaBean user doa db op 6 部署该程序到服务器Tomcat中 然后运行 1 数据库设计 构建数据库表T UserInfo 利用MySQL数据库 创建数据库 user创建表及其结构 T UserInfo 数据表结构T UserInfo 注意 该数据库所存放的位置 2 在Eclipse中创建一个项目 Login Proj 按Eclipse建立工程的提示 建立Web工程 工程的名称为 Login Proj 3 构建视图组件 登录页面 login jsp 选中工程 Login Proj 击右键 选 新建 按Eclipse的提示 建立jsp 名称为 Login 修改默认jsp内容 达到我们所要求的编码 login jsp的代码 登录页面用户名 密 3 构建视图组件 主页面 main jsp 选中工程 Login Proj 击右键 选 新建 按Eclipse的提示 建立jsp 名称为 main jsp 修改默认jsp内容 达到我们所要求的编码 main jsp代码 主页面 你成功登录 20秒后自动进入主页面 类似可以建立其它的页面 系统页面main2 jsp注册页面register jsp注册失败提示页面Register err jsp注册成功提示页面Register succ jsp 构建控制层组件 第4步 建立数据JavaBean 用户 user 建立连接数据库的JavaBean doa 建立实现对用户数据库进行操作的java类 db op java 4 1建立数据JavaBean 用户 user packageJavaBean publicclassuser privateStringusername privateStringpassword publicStringgetUsername returnusername publicvoidsetUsername Stringusername this username username publicStringgetPassword returnpassword publicvoidsetPassword Stringpassword this password password 4 2建立连接数据库的JavaBean doa packageJavaBean publicclassdoa privateStringdb username privateStringdb password privateStringdb driver privateStringdb connection publicStringgetDb username returndb username publicvoidsetDb username Stringdb username this db username db username publicStringgetDb password returndb password publicvoidsetDb password Stringdb password this db password db password publicStringgetDb driver returndb driver publicvoidsetDb driver Stringdb driver this db driver db driver publicStringgetDb connection returndb connection publicvoidsetDb connection Stringdb connection this db connection db connection 4 3在JavaBean doa 的基础上 建立实现对用户数据库进行操作的java类 db op java publicclassdb op publicConnectiondb getConnection Connectionconn null Stringdb username null Stringdb password null Stringdb driver null Stringdb connection null Propertiespro newProperties Filefile newFile H web 15 Login Proj src db properties try pro load newFileInputStream file catch Exceptione e printStackTrace db username pro getProperty db username db password pro getProperty db password db driver pro getProperty db driver db driver db connection pro getProperty db connection db connection try Class forName db driver newInstance conn DriverManager getConnection db connection db username db password returnconn catch Exceptione System out println e returnnull 实现数据库的连接 publicbooleanselect 1 useru 查询用户是否已经注册Connectionconn null ResultSetrs null Statementps null Stringxm u getUsername Stringpass u getPassword conn db getConnection Strings1 select fromT userInfowhereusername xm andpassword pass try ps conn createStatement rs ps executeQuery s1 if rs next rs close ps close conn close returntrue else rs close ps close conn close returnfalse catch SQLExceptione returnfalse publicbooleanselect 2 Stringu 在注册时 查询是否有重名的用户已经注册Connectionconn null ResultSetrs null Statementps null conn db getConnection Strings1 select fromT userInfowhereusername u try ps conn createStatement rs ps executeQuery s1 if rs next rs close ps close conn close returntrue else rs close ps close conn close returnfalse catch SQLExceptione returnfalse publicvoidappend useru 注册时 添加注册用户信息Connectionconn null Statementps null conn db getConnection Stringxm u getUsername Stringpass u getPassword Strings1 insertintoT userInfo username password values xm pass try ps conn createStatement ps executeUpdate s1 ps close conn close catch SQLExceptione System out println e 5 构建控制层组件 第5步 5 1一个servlet LoginServlet java 实现登录的控制5 2一个servlet RegisterServlet Java 实现注册的验证控制5 3web xml配置文件的解读 5 2构建控制层组件 一个servlet registerServlet java publicvoiddoGet HttpServletRequestrequest HttpServletResponseresponse throwsServletException IOException Stringxm String request getParameter username Stringmm String request getParameter password Stringmm2 String request getParameter repassword Stringtype err db opb newdb op if b select 2 xm type err xm 该用户已经注册 HttpSessions request getSession true s setAttribute type err type err response sendRedirect Register err jsp elseif mm equals mm2 type err 两次密码不一致错 HttpSessions request getSession true s setAttribute type err type err response sendRedirect Register err jsp else HttpSessions request getSession true s setAttribute username xm s setAttribute password mm useru newuser u setUsername xm u setPassword mm db opd newdb op d append u response sendRedirect Register succ jsp 5 1构建控制层组件 一个servlet LoginServlet java publicvoiddoGet HttpServletRequestrequest HttpServletResponseresponse throwsServletException IOException useru newuser Stringxm Stringps xm request getParameter username ps request getParameter password u setUsername xm u setPassword ps HttpSessions request getSession true s setAttribute username xm db opd newdb op booleantf d select 1 u if tf response sendRedirect main2 jsp else response sendRedirect register2 jsp 5 3web xml配置文件的解读和配置 提示 必须要学会自己修改和配置 这对于我们了解servlet的工作原理和实用有着重要的作用 JavaWeb应用通过一个基于XML的发布描述符文件来配置其发布信息 这个文件名为web xml 它存放于WEB INF子目录下 在web xml文件中可主要包含如下配置信息 1 Servlet的定义 2 Servlet的初始化参数 3 Servlet以及JSP的映射 4 Filter的定义 5 安全域配置参数 6 welcome文件清单 7 资源引用 8 环境变量的定义 6 部署该程序到服务器Tomcat中 然后运行另外 必须对系统进行测试和调试 总结 该程序的设计关键 1 了解系统流程 给出系统分析 并给出图形描述 2 数据库模型的设计 为了使对数据库的操作 具有通用性 采用属性文件 存放数据库连接的有关信息 通过对数据文件的读 获取该信息 实现连接 3 网页之间是如何传递信息的 4 jsp网页与servlet之间是如何传递信息的 信息由jsp servlet如何实现 信息由servlet jsp如何实现 5 应该自己逐步设计 绝不能找一个类似的程序修该一下
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!