J2EEJAVA基础培训教材.ppt

上传人:本田雅阁 文档编号:3481671 上传时间:2019-09-01 格式:PPT 页数:32 大小:1.03MB
返回 下载 相关 举报
J2EEJAVA基础培训教材.ppt_第1页
第1页 / 共32页
J2EEJAVA基础培训教材.ppt_第2页
第2页 / 共32页
J2EEJAVA基础培训教材.ppt_第3页
第3页 / 共32页
J2EEJAVA基础培训教材.ppt_第4页
第4页 / 共32页
J2EEJAVA基础培训教材.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

《J2EEJAVA基础培训教材.ppt》由会员分享,可在线阅读,更多相关《J2EEJAVA基础培训教材.ppt(32页珍藏版)》请在三一文库上搜索。

1、CRM J2EE 架构设计,内容简介,培训目的 常用技术 Java基础知识 JAVA模式 JSP STRTUS Spring Hibernate,培训目的,展示JAVA在我们项目中的应用 项目开发中的需要关注的重点 指导新员工后续的java学习 了解公司项目开发中的架构,常用技术,Html、java、jsp、 javascript 、Struts 、Spring、 Hibernate 、 Log4j、 oracle,Java基础知识,JAVA 的特征 Java的关键字 JAVA容器 异常的处理 JDBC,JAVA 的特征,封装:封装是把过程和数据包围起来,对数据的访问只能通过已定义的界面。面向

2、对象计算始于这个基本概念,即现实世界可以被描绘成一系列完全自治、封装的对象,这些对象通过一个受保护的接口访问其他对象继承性,主要是提高代码的复用率。 多态:多态性是指允许不同类的对象对同一消息作出响应。多态性包括参数化多态性和包含多态性。多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题(向上转型) 抽象:抽象就是忽略一个主题中与当前目标无关的那些方面,以便更充分地注意与当前目标有关的方面。抽象并不打算了解全部问题,而只是选择其中的一部分,暂时不用部分细节。抽象包括两个方面,一是过程抽象,二是数据抽象。 继承:继承是一种联结类的层次模型,并且允许和鼓励类的重用

3、,它提供了一种明确表述共性的方法。对象的一个新类可以从现有的类中派生,这个过程称为类继承。新类继承了原始类的特性,新类称为原始类的派生类(子类),而原始类称为新类的基类(父类)。派生类可以从它的基类那里继承方法和实例变量,并且类可以修改或增加新的方法使之更适合特殊的需要 (介绍重载),Java的关键字,Static 与final在我们目前项目的使用 类、方法、变量 Public 、privae、protected、friendly this,JAVA容器,Java.util.Collection接口 几种常用容器 1)List (1)List和Vector的区别: vector,它拥有一段连续

4、的内存空间,并且起始地址不变,因 此它能非常好的支持随即存取,即操作符,但由于它的内存空间是连续 的,所以在中间进行插入和删除会造成内存块的拷贝,另外,当该数组后 的内存空间不够时,需要重新申请一块足够大的内存并进行内存的拷贝。 这些都大大影响了vector的效率 list就是数据结构中的双向链表,因此它的内存空间可以是不连 续的,通过指针来进行数据的访问,这个特点使得它的随即存 取变的非常没有效率,因此它没有提供操作符的重载。但由于链表的特 点,它可以以很好的效率支持任意地方的删除和插入 2)Set 3)Map 数组和容器的区别 数组是放同一数据类型的基本类型,比如你可以放String、Ar

5、rayList、函数、同一类型的对象等 容器就是能放置其他组件的一种数据类型,异常的处理,异常的接口 java.lang.Throwable 异常的结构 Try catch( Exception e) finally 异常的重掷 Throw new Exception(“message”); 方法异常的掷出 Public void test()throws ExceptionSample;,JDBC,实例见train2工程,JAVA模式,模式中的几个原则 开闭原则 概念:对不变的系统因素修改进行关闭,对可变的系统因素进行开放 对可变的封装原则,一种可变性应该封装在一个对象里,不应但散落到代码的

6、各个角落。(例如对差用工具类的处理,和对项目中service的处理) 一种可变性,不应当与另一种可变性封装到一起 (例如对action的封装和对service的封装),里氏代换原则 概念:如果对每一个类型为T1的对象o1,都有类型为T2的对象O2,使得以T1定义的所有程序P在所有的对o1都代换成o2时,程序P的行为没有变化,那么类型T2是类型T1的子类 在java中的应用 反过来的代换不成立 依赖倒转原则 概念,依赖倒转原则讲的是要依赖于抽象,不要依赖于具体 倒转的含义,对传统设计的一个倒转、传统都是依赖于具体细节,接口隔离原则 为不同的用户提供不同的角色,合成/聚合复用原则 就是在一些新的对

7、象里使用一些已有的对象,使之成为新对象 合成和聚合的区别: 合成:用来表示“拥有”关系和整体与部分的关系 聚合: 表示一种比合成强的多的“拥有关系”。 迪米特法则 概念,又叫知识最少原则,就是说一个对于应但对其他对于有尽可能少的了解。 表述, 只与你直接的朋友通信 不要和陌生人说话 每一个软件单位对其他单位都只有最少的知识,而且局限与与本单位密切相关的软件单位。,JSP,JSP的几个内建对象 Servlet介绍 Web.xml的配置,JSP的几个内建对象,Out内置对象,可以用来进行调试jsp Request内置对象,(项目中传递的变量用来查询) request.getParameter(St

8、ring name); /该方法用于获得客户端传送给服务器端的参数,该参数有name指定,通常是表单中的参数。 request.setAttribute(String name, Object ob); /将一个对象绑定到request中指定的name属性 request.getAttribute(String name); /该方法返回由name指定的属性值,如果指定的属性值不存在,则返回null。 Exception对象 1) 配置到web.xml error-page元素 2)jsp页面标识 response对象 response.sendRedirect(String location

9、); /将客户机重定向到特定的URL。 session对象 session.getAttribute(String name); /返回与指定名称相联系的属性 session.setAttribute(String name, Object ob); /将一个对象绑定到会话中指定的name属性 session.removeAttribute(String name); /删除绑定到对话中指定名称的对象 application对象 applicaton.getAttribute(String name); /返回与指定名称相联系的属性 applicaton.setAttribute(String

10、 name, Object ob); /将一个对象绑定到application中指定的name属性 applicaton.removeAttribute(String name); /删除绑定到application中指定名称的对象,Servlet 介绍,JSP和Servlet关系 1)_jspService可以接收访问 2) doGeg(), doPost(),service()可以接收访问 Servlet代码结构 init(); doGeg(); doPost(); destory(); service();-doGet,doPost都可接收 Servlet生命周期 1)2种加载方式 首次

11、调用 配置到web.xml,Web.xml的配置,context-param context-param元素声明应用范围内的初始化参数。 filter 过滤器元素将一个名字与一个实现javax.servlet.Filter接口的类相关联。 llistener servlet API的版本2.3增加了对事件监听程序的支持,事件监听程序在建立、修改和删除会话或servlet环境时得到通知 servlet-mapping 服务器一般为servlet提供一个缺省的URL,常常会更改这个URL session-config 如果某个会话在一定时间内未被访问,服务器可以抛弃它以节省内存。可通过使用Http

12、Session的setMaxInactiveInterval方 、法明确设置单个会话对象的超时值,或者可利用session-config元素制定缺省超时值。 mime-mapping 如果Web应用具有想到特殊的文件,希望能保证给他们分配特定的MIME类型,则mime-mapping元素提供这种保证 welcom-file-list welcome-file-list元素指示服务器在收到引用一个目录名而不是文件名的URL时,使用哪个文件 error-page error-page元素使得在返回特定HTTP状态代码时,或者特定类型的异常被抛出时,能够制定将要显示的页面 taglib taglib

13、元素对标记库描述符文件(Tag Libraryu Descriptor file)指定别名。此功能使你能够更改TLD文件的位置,而不用编辑使用,STRTUS,普通情况下: JSP 表单的内容提交给Servlet Servlet 请JavaBean来查询数据库 Servlet 跳转到另一个JSP显示结果 Struts 中: JSP 表单内容首先提交给ActionServlet,ActionServlet将信息打包在 ActionForm里,送给Action ActionServlet 不直接处理业务逻辑,让Action来调用JavaBean Action 负责决定跳转到另一个JSP显示结果 配置

14、文件 要编写: JSP,ActionForm,Action,配置文件,JavaBean,Struts 组成及原理,Struts原理,ActionServlet,JSP,JavaBean,数据库,AddAction,AddForm, ActionMapping,1,2,3,4,5,6,开发时只需关注: 两个核心组件: ActionForm AddAction 一个配置文件,1、页面提交的数据封装到ActionForm中 2、通过请求路径查找Struts-config.xml中Action的配置,找到并调用对应的Action,Controller (控制器),Model(模型),View(视图),

15、查找ActionMapping,找到正确的JSP页面,并转发,Struts的运行过程,Spring整体介绍,Spring,Spring 核心是基于控制反转“IOC”原理, IOC是一将组件依赖关系的创建和管理置于程序外部的技术。 使用Spring的几个理由 1)减少“粘合”代码 2)依赖外化置 3)在统一的地方管理依赖,AOP AOP种类: 1)静态,编码时直接写入 2)动态的,例如Spring OAP,横切逻辑是在运行时动态加入的。,Spring通知种类 前置: org.springframework.aop. MethodBeforeAdvice . before() 后置 org.spr

16、ingframework.aop. AfterReturningAdvice . afterReturning () 包围: org.springframework.aop. MethodInterceptor 抛出:抛出异常时才被调用 org.springframework.aop. ThrowAdvice 引用:可以定义引入的方法的实现 org.springframework.aop .Throwadvice 使用通知写日志 项目中的应用,Spring的事务管理 Spring中获得bean的2种方式 1)this.getBean(“beanName”) 2) 直接注入,Hibernate,

17、基本实例 hibernate公司项目中的应用,基本实例,表 CREATE TABLE USER ( user_id varchar2(10) NOT NULL PRIMARY KEY, name varchar2(20) NOT NULL, sex CHAR(1), age number(2) ); 与表对于的对象 public class User private String id; private String name; private char sex; private long age; public long getAge() return age; public String

18、getId() return id; public String getName() return name; public char getSex() return sex; public void setAge(int i) age = i; public void setId(String string) id = string; public void setName(String string) name = string; public void setSex(char c) sex = c; ,表和对象的映射文件 ,数据库连接配置hibernate.cfg.xml true ne

19、t.sf.hibernate.dialect.MySQLDialect com.mysql.jdbc.Driver jdbc:mysql:/localhost/HibernateTest caterpillar 123456 ,测试代码 import onlyfun.caterpillar.*; import net.sf.hibernate.*; import net.sf.hibernate.cfg.*; public class HibernateTest public static void main(String args) throws HibernateException Ses

20、sionFactory sessionFactory = new Configuration().configure().buildSessionFactory(); User user = new User(); user.setName(“caterpillar“); user.setSex(M); user.setAge(28); Session session = sessionFactory.openSession(); Transaction tx= session.beginTransaction(); session.save(user); mit(); session.close(); sessionFactory.close(); System.out.println(“新增資料OK!請先用MySQL觀看結果!“); ,携手共进 再创辉煌,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1