SSH框架开发(一)课件

上传人:我*** 文档编号:139691688 上传时间:2020-07-23 格式:PPT 页数:35 大小:160KB
返回 下载 相关 举报
SSH框架开发(一)课件_第1页
第1页 / 共35页
SSH框架开发(一)课件_第2页
第2页 / 共35页
SSH框架开发(一)课件_第3页
第3页 / 共35页
SSH框架开发(一)课件_第4页
第4页 / 共35页
SSH框架开发(一)课件_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《SSH框架开发(一)课件》由会员分享,可在线阅读,更多相关《SSH框架开发(一)课件(35页珍藏版)》请在金锄头文库上搜索。

1、基于SSH的WEB开发 (Struts2+Spring+Hibernate),严俊 Email: qq:676970475,WEB的开发及运行环境,Eclipse Tomcat 6.0 Strusts 2.0 Spring 2.0 Hibernate 3.0 Oracle/Mysql,WEB应用的部署结构,最简单的WEB应用程序只需要有WEB-INF下的web.xml就可以部署使用了. 因此web.xml是使用Java语言开发的WEB应用程序中最为重要的一个配置文件.,web.xml配置, email ,web.xml配置, struts2 org.apache.struts2.dispatc

2、her.FilterDispatcher struts2 /* ,web.xml配置, org.springframework.web.context.ContextLoaderListener action org.apache.struts.action.ActionServlet ,web.xml配置, action *.do 30 welcome.jsp ,Servlet的概念及生命周期,Servlet是一种服务器端的Java应用程序,具有独立于平台和协议的特性,可以生成动态的Web页面Servlet接口类主要提供init(),service(),destroy()这个基本的接口方法(

3、不能直接使用,需要自己实现) 其中service()方法有ServletRequest, ServletResponse这两个对象,servlet实现的各类功能就是由这两个对象来确定的另外每个servlet都需要在web.xml配置.,Servlet的概念及生命周期,HttpServlet实现servlet的一种扩展类,该类提供doGet(), dopost()接口来处理HTTP请求 public class MyServlet extends HttpServlet public void doPost(HttpServletRequest req,HttpServletResponse r

4、esp) Session session=req.getSession(); session.setAttribute(“test”, “this is a httpservlet”); RequestDispatcher rd = req.getRequestDispatcher(demo.jsp) ; rd.forward(req,resp) ; / 跳转 ,Servlet的概念及生命周期,Web.xml myservlet example.MyServlet myservlet /test/myservlet ,Filter(过滤器)简介,Filter 的基本功能是对 Servlet 容

5、器调用 Servlet 的过程进行拦截,从而在 Servlet 进行响应处理的前后实现一些特殊的功能。 在 Servlet API 中定义了三个接口类来开供开发人员编写 Filter 程序(Filter, FilterChain, FilterConfig) Filter 程序是一个实现了 Filter 接口的 Java 类,与 Servlet 程序相似,它由 Servlet 容器进行调用和执行,需要在 web.xml 文件中进行注册和设置它所能拦截的资源:Filter 程序可以拦截 Jsp, Servlet, 静态图片文件和静态html 文件 public void doFilter(Ser

6、vletRequest arg0, ServletResponse arg1, FilterChain arg2) throws IOException, ServletException arg0.setCharacterEncoding(“UTF-8”);/典型应用处理中文乱码问题 arg2.doFilter(arg0, arg1);,Listener(WEB事件监听),Listener顾名思义是用来监听WEB事件的. 主要有已下几类Listener和分别对应的Event ServletContextListener(ServletContextEvent) ServletContextA

7、ttributeListener(ServletContextAttributeEvent) ServletRequestListener(ServletRequestEvent) ServletRequestAttributeListener(ServletRequestAttributeEvent) HttpSessionListener(ServletRequestEvent) HttpSessionAttributeListener(HttpSessionBindingEvent) HttpSessionBindingListener(HttpSessionBindingEvent)

8、HttpSessionActivationListener(HttpSessionEvent),Listener(WEB事件监听),举例: public class MySessionListener implements HttpSessionListener,HttpSessionAttributeListener public void sessionCreated(HttpSessionEvent event) Session session= event.getSession(); System.out.println(新建一个session | id=+ session. getI

9、d() ); public void attributeReplaced(HttpSessionBindingEvent event) Session session= event.getSession(); System.out.println(“修改了一个session值 | id=+ session.getId() ); ,Listener(WEB事件监听),Web.xml配置 example.MySessionListener ,JSP概念及其语法,JSP(全称JavaServer Pages)是由Sun Microsystems公司倡导和许多公司参与共同建立的一种使软件开发者可以响应

10、客户端请求,而动态生成HTML、XML或其他格式文档的Web网页的技术标准。JSP技术是以Java语言作为脚本语言的,JSP网页为整个服务器端的Java库单元提供了一个接口来服务于HTTP的应用程序。,JSP概念及其语法,Directive (指令) isThreadSafe =“true”(默认) contextType=text/html isElIgnored=“false”(默认)/忽略el表达式 isErrorPage=“false” errorPage=“errorpage.jsp” Scriptlet ,JSP概念及其语法,Declaration (宣告) 将会定义出Servle

11、t类别中 的成员属性或成员方法。 (同于scriptlet定义出_jspService() 方法中的局部属性或方法操作) Expression (表达式) /得在此定义变量。 Comment (注释) ,JSP概念及其语法,Action (动作) /标签的用法 EL expression (EL 表达式) $requestScope.xxx ,JSP概念及其语法,JSP隐含对象 JspWriter out HttpServletRequest request $requestScope.xx HttpServletResponse response HttpSession session $s

12、essionScope ServletContext application $applicationScope ServletConfig config Throwable exception PageContext pageContext $pageContext Object page $pageScope,MVC架构,MVC模式(三层架构模式)(Model-View-Controller)是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller).其目的是实现一种动态的程式设计,使后续对程序的修改和扩展简化,并且使程

13、序某一部分的重复利用成为可能. 控制器Controller- 负责转发请求,对请求进行处理。 视图View - 界面设计人员进行图形界面设计。 模型Model - 程序员编写程序应有的功能(实现算法等等)、数据库专家进行数据管理和数据库设计(可以实现具体的功能)。 Struts2对MVC模式有很好的支持,提供清晰的结构,强大的标签库,使得开发者只需要关注业务逻辑的实现.,Struts2,Struts是Apache软件基金会(ASF)赞助的一个开源项目。它最初是Jakarta项目中的一个子项目,并在2004年3月成为ASF的顶级项目。它通过采用Java ServletJSP技术,实现了基于Jav

14、a EE Web应用的Model-View-ControllerMVC设计模式的应用框架Web Framework,是MVC经典设计模式中的一个经典产品。 Struts2 不是一个Struts的新的发布版本,而是一个全新的框架.它是WebWork和Struts社区合并后的产物,实质上是以WebWork设计理念为核心的。,Struts2的运行流程,当Web容器收到一个Request它将请求传递给一个FilerDispatcher核心控制器(拦截器),然后它调用ActionMapper生成一个ActionMaping对象。 接下来FilerDispatcher将控制权委派给ActionProxy.

15、该对象根据ActionMaping和配置信息(struts.xml) 依次序调用拦截器,action,并根据结果跳转到Result页面.,Struts2的配置文件,struts.xml(默认) - ,Struts2的配置文件, /error.jsp ,Struts2的配置文件, /input.jsp /success.jsp /error.jsp /sussess.jsp ,Struts2的配置文件,web.xml struts2 org.apache.struts2.dispatcher.FilterDispatcher struts2 /* ,Struts2的使用方法,方法一:/使用默认e

16、xecute、validate方法 import com.opensymphony.xwork2.ActionSupport; public class MyAction extends ActionSupport /分别定义numberA, numberB,result属性,并封装get/set public String execute() /action 默认执行方法 result=Double.toString(Double.parseDouble(numberA)+Double.parseDouble(numberB); return SUCCESS; public void validate() /数据验证 if(!MyUtils.isNumeric(numberA) this.addFieldError(numberA,不是数字); if(!MyUtils.isNumeric(numberB) this.addFieldError(numberB,不是数字); ,Stru

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号