第2讲基于开源框架的企业级信息系统开发技术-课堂2012.ppt
《第2讲基于开源框架的企业级信息系统开发技术-课堂2012.ppt》由会员分享,可在线阅读,更多相关《第2讲基于开源框架的企业级信息系统开发技术-课堂2012.ppt(197页珍藏版)》请在三一文库上搜索。
1、企业级信息系统开发技术,济南大学信息学院 刘鹍 ,第2讲 基于开源框架的企业级信息系统开发技术,第2章 基于Java EE开发环境的构建 第3章 Struts2应用 第4章 Hibernate应用 第5章 Spring应用 第6章 Struts2、Hibernate和Spring整合应用,第2讲 基于开源框架的企业级信息系统开发技术,Servlet Servlet是Java语言的CGI实现,与传统的CGI和许多其他类似CGI的技术相比,Java Servlet具有更高的效率,更容易使用,功能更强大,具有更好的可移植性。 高效: 传统的CGI程序以进程方式运行,而Servlet以线程方式运行。
2、方便: Servlet提供了大量的实用工具例程,例如自动地解析和解码HTML表 单数据、读取和设置HTTP头、处理Cookie、跟踪会话状态等。 功能强大:可以完成很多传统的CGI程序很难做到的事情。 可移植性好:Servlet API具有完善的标准。,Web服务器,doGet()方法,doPost()方法,HTTP GET请求,HTTP POST请求,响应,响应,客户机,第2讲 基于开源框架的企业级信息系统开发技术,JSP JSP(Java Server Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在
3、传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 JSP采用的是动态代码与静态HTML页面相结合的方式,JSP的语法内容放入在以“%”开始,以“%”结束的特殊标记之内。 JSP页面文件通常以.jsp为扩展名。虽然从代码编写来看,JSP页面更象普通Web页面而不象Servlet,但实际上,JSP最终会被转换成正规的Servlet,静态HTML直接输出到和Servlet service方法关联的输出流。,第2讲
4、 基于开源框架的企业级信息系统开发技术,Struts 2框架 Struts是开源软件。使用Struts的目的是为了帮助我们减少在运用MVC设计模型来开发Web应用的时间。 Struts框架具有组件的模块化、灵活性和重用性的优点,同时也简化了基于MVC的Web应用程序的开发。 从应用的角度来说,Struts有三大块,分别是Struts核心类、Struts配置文件及Struts标签库。,Hibernate框架 传统的Java应用都是采用JDBC来访问数据库,它是一种基于SQL的操作方式,但对目前的Java EE信息化系统而言,通常采用面向对象分析和面向对象设计的过程。系统从需求分析到系统设计都是按
5、面向对象方式进行,但是到详细的数据访问设计阶段,又回到了传统的JDBC访问数据库的老路上来。 Hibernate的问世解决了这个问题,Hibernate是一个面向Java环境的对象/关系映射工具,它用来把对象模型表示的对象映射到基于SQL的关系数据模型中去,这样就不用再为怎样用面向对象的方法进行数据的持久化而大伤脑筋了。,第2讲 基于开源框架的企业级信息系统开发技术,第2讲 基于开源框架的企业级信息系统开发技术,Spring框架 Spring框架是Rod Johnson开发的,2003年发布了Spring框架的第一个版本。Spring是一个从实际开发中抽取出来的框架,因此它完成了大量开发中的通
6、用步骤,从而大大提高了企业应用的开发效率。 Spring为企业应用的开发提供了一个轻量级的解决方案。其中依赖注入、基于AOP的声明式事务管理、多种持久层的整合与优秀的Web MVC框架等最为人们关注。Spring可以贯穿程序的各个层之间,但它并不是想取代那些已有的框架,而是以高度的开放性和它们紧密的整合。这也是Spring被广泛应用的原因之一。,第2讲 基于开源框架的企业级信息系统开发技术,JSP+Servlet+JavaBean实现MVC,JSP,JSP,JSP,Servlet,JavaBean,EJB,Web服务,视图,控制器,模型,JDBC,DataBase,第2讲 基于开源框架的企业级
7、信息系统开发技术,Struts2、Spring和Hibernate框架,第2讲 基于开源框架的企业级信息系统开发技术,Struts2、Spring和Hibernate框架,IService,jsp,command,IDomain,IDao,资源层,发出请求,viewbean,databean,databean,service实现类,domain实现类,组织数据,在页面显示,dao实现类,Spring框架,Struts框架,Hibernate框架,第2章 Java EE开发环境的构建,JSP和Servlet例子,JSP和Servlet例子,JSP JSP(Java Server Pages)是由
8、Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。 用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 简单的说JSP就是: HTML文件中嵌入Java程序段和JSP标记 扩展名是*.jsp,JSP和Servlet例子,看个JSP的例子计算圆面积: 新建Web Project,项目名称:test 输入半径的页面input.jsp(WebRo
9、ot文件夹下):, 请输入半径r: ,JSP和Servlet例子,看个例子计算圆面积: 计算圆面积的页面result.jsp:,JSP和Servlet例子,看个例子计算圆面积: 发布 启动Tomcat服务器,在IE浏览器中输入“http:/localhost:8080/test/input.jsp”,系统会显示input.jsp页面,如图2.1所示。当在文本框中输入10后,单击【计算】按钮会跳转到另外一个页面,也就是result.jsp页面,并且输出结果314.0,如图2.2所示。,图2.1 input.jsp页面 图2.2 result.jsp页面,JSP和Servlet例子,Servlet
10、 Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面。 它担当客户请求(Web浏览器或其他HTTP客户程序)与服务器响应(HTTP服务器上的数据库或应用程序)的中间层。 Servlet是位于Web 服务器内部的服务器端的Java应用程序,与传统的从命令行启动的Java应用程序不同,Servlet由Web服务器进行加载,该Web服务器必须包含支持Servlet的Java虚拟机。 简单的理解: Servlet是Java类 Servlet可以接收客户请求request Servlet可以给客户响应response Servlet在服务器端加载 Ser
11、vlet运行在Servlet容器中,JSP和Servlet例子,看个Servlet的例子:计算圆面积 新建Web Project:项目名称:servlet 新建Servlet类(继承HttpServlet类):Servlet.java,package cn.edu.ujn.servletdemo; /省略import public class Servlet extends HttpServlet Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletExce
12、ption, IOException resp.setCharacterEncoding(“GBK“); PrintWriter pw=resp.getWriter(); double radius = Double.valueOf(req.getParameter(“radius“); pw.println(“圆的面积是:“+radius*radius*3.14); Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOExcepti
13、on resp.setCharacterEncoding(“GBK“); PrintWriter pw=resp.getWriter(); double radius = Double.valueOf(req.getParameter(“radius“); pw.println(“圆的面积是get:“+radius*radius*3.14); ,JSP和Servlet例子,看个Servlet的例子:计算圆面积 编辑web.xml,增加该Servlet的配置:, servletdemo cn.edu.ujn.servletdemo.Servlet servletdemo /servlet ,JS
14、P和Servlet例子,看个Servlet的例子:计算圆面积 新建JSP页面:inputservlet.jsp 发布 测试POST方式,在浏览器中输入:http:/localhost:8080/servlet/inputservlet.jsp 测试GET方式,在浏览器中输入:http:/localhost:8080/servlet/servlet?radius=18, 请输入半径r: ,JSP和Servlet例子,JSP数据定义: JSP程序块: JSP表达式 JSP指令 page指令:设定整个JSP文件的属性和相关功能 include指令:导入包含静态的文件(JSP、HTML) taglib
15、指令:标签引用(Struts2中会用到),21,JSP和Servlet例子,JSP动作 赋值: 向一个对象提出请求 寻找或者实例化一个JavaBean 设置JavaBean的属性 输出某个JavaBean的属性 把请求转到一个新的页面 根据浏览器类型为Java插件生成OBJECT或EMBED标记 JSP注释 输出注释: 隐藏注释: 该注释不发送给用户,JSP和Servlet例子,JSP内置对象,JSP和Servlet例子,Servlet主要接口和类 Servlet接口(实现init、service、destroy方法) GenericServlet类(覆写service方法) HttpServ
16、let类(覆写doPost或doGet方法) HttpServletRequest和HttpServletResponse接口 Servlet生命周期 当Servlet被装载到容器后,生命周期开始。 首先调用init()方法进行初始化。 初始化后,调用service()方法,根据请求的不同调用不同的doXxx()方法处理客户请求,并将处理结果封装到HttpServletResponse中返回给客户端。 当Servlet实例从容器中移除时调用其destroy()方法,这就是Servlet运行的整个过程。,思考:MVC模式,怎样应用MVC模式?, MVC 用户登录 登录名: 密码: , login
17、 登录成功! 登录失败! 数据库操作失败,请联系管理员。 ,login.jsp,loginok.jsp,思考:MVC模式,JSP+Servlet+JavaBean实现MVC模式 抽取表示层(JSP) 抽取“领域对象” 实现“控制层”Servlet 抽取业务逻辑层接口 实现业务逻辑层 实现其他业务逻辑层(数据库连接),思考:MVC模式,login.jsp,成功页面,失败页面, String username = request.getParameter(“username“); String pwd = request.getParameter(“pwd“); Dlb dl = new Dlb(
18、); dl.setXh(username); dl.setKl(pwd); ICheckLoginDomain dlDomain = new CheckLoginDomainImpl(); if(dlDomain.checkLogin(dl) response.sendRedirect(“/secondloginok.jsp“); else response.sendRedirect(“/secondloginfalse.jsp“); ,web.xml,LoginServlet,ICheckLoginDomain接口, public boolean checkLogin(Dlb dl) try
19、 DBConn conn = new DBConn(); String sql = “select * from dlb where “; ResultSet rs = conn.executeQuery(sql); if(rs.next() return true; else return false; catch (SQLException e) return false; , private String id; private String xh; private String kl; ,Dlb.java,CheckLoginDomainImpl.java, Class.forName
20、 DriverManager.getConnection createStatement executeQuery ,DBConn.java,思考:MVC模式,MVC模式没有给出代码结构性的具体要求 MVC的控制器是做一个Servlet,还是多个Servlet? 跳转页面的名称是写在代码中还是配置文件中?,企业级信息系统开发技术,济南大学信息学院 刘鹍 ,JSP+Servlet+JavaBean,JSP+Servlet+JavaBean实现MVC,请求,FORM,POST GET,request,JSP,Servlet,JavaBean,DB,request,object,object,lis
21、t,getParameter 实例化对象 调用JavaBean,JDBC 数据库 增删改查 ,返回结果 setParameter setAttribute,显示数据,session,session,第3章 Struts2应用,3.1 Struts 2概述 3.2 Struts 2基本应用及工作流程,3.1 Struts 2概述,Struts 2与Struts 1 Webwork + Struts 1 = Struts 2,3.1 Struts 2概述,3.1.1 MVC简介 MVC有以下优点: 多个视图可以对应一个模型。 模型返回的数据与显示逻辑分离。 应用被分隔为三层,降低了各层之间的耦合,
22、提供了应用的可扩展性。 控制层的概念也很有效,由于它把不同的模型和不同的视图组合在一起,完成不同的请求,因此控制层可以说是包含了用户请求权限的概念。 MVC更符合软件工程化管理的精神。不同的层各司其职,每一层的组件具有相同的特征,有利于通过工程化和工具化产生管理程序代码。,回顾:JSP+Servlet实现MVC模式,login.jsp,成功页面,失败页面, String username = request.getParameter(“username“); String pwd = request.getParameter(“pwd“); Dlb dl = new Dlb(); dl.set
23、Xh(username); dl.setKl(pwd); ICheckLoginDomain dlDomain = new CheckLoginDomainImpl(); if(dlDomain.checkLogin(dl) response.sendRedirect(“/secondloginok.jsp“); else response.sendRedirect(“/secondloginfalse.jsp“); ,web.xml,LoginServlet,ICheckLoginDomain接口, public boolean checkLogin(Dlb dl) try DBConn c
24、onn = new DBConn(); String sql = “select * from dlb where “; ResultSet rs = conn.executeQuery(sql); if(rs.next() return true; else return false; catch (SQLException e) return false; , private String id; private String xh; private String kl; ,Dlb.java,CheckLoginDomainImpl.java, Class.forName DriverMa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 框架 企业级 信息系统 开发 技术 课堂 2012
链接地址:https://www.31doc.com/p-2986828.html