A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

© 庞帅 初级黑马   /  2018-5-27 16:14  /  589 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 小石姐姐 于 2018-6-1 09:24 编辑

MVC和事务
反射:
获得Method对象,然后让方法执行 invoke
【Java中的内省技术】(了解)
Ø 内省:用来获得JavaBean的属性及属性的get或set方法.
JavaBean:就是一个满足了特定格式的Java类:
* 需要提供无参数的构造方法:
* 属性私有
* 对私有的属性提供public的get/set方法.
Ø 内省的代码:
        public void demo1() throws Exception{
                // 获得了Bean的信息
                BeanInfo beanInfo = Introspector.getBeanInfo(User.class);
                // 获得Bean的属性描述了
                PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
                for(PropertyDescriptor pd:pds){
                        System.out.println(pd.getName());
                        /*pd.getReadMethod(); // 获得get方法
                        pd.getWriteMethod();// 获得set方法.
*/                }
        }
Ø 使用内省封装一个MyBeanUtils:
public class MyBeanUtils {
        public static void populate(Object obj,Map<String,String[]> map) throws Exception{
                // 获得类的所有的属性的名称:
                BeanInfo beanInfo = Introspector.getBeanInfo(obj.getClass());
                // 获得类中所有的属性:
                PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
                for (PropertyDescriptor pd : pds) {
                        if(map.containsKey(pd.getName())){
                                Method method = pd.getWriteMethod();
                                // 执行set方法:
                                method.invoke(obj, map.get(pd.getName())[0]);
                        }
                }
        }
}
Servlet:接收参数--》封装数据---》调用Service--》将数据存放到域中---》页面跳转
Service:业务逻辑处理
一个Servlet完成多个Servlet的任务(增删改查)

异步AJAX
【AJAX的概述】:
Ø 什么是AJAX:
* AJAX:异步的 JavaScript And XML.
    * 使用的是老的技术,用的是新的思想.
Ø 了解同步和异步的区别:
* 参考图一:
Ø AJAX的功能:完成页面的局部刷新,不中断用户的体验.
* 早期的时候JS技术根本不受重视.后台开发人员经常将JS当成一种玩具式语言.JS中有一个对象XMLHttpRequest对象可以向服务器异步发送请求.传统的B/S结构的软件,所有实现功能都需要在服务器端编写代码(胖服务器).现在有了AJAX以后,可以将部分代码写到客户端浏览器(RIA:Rich Internet Application).FLEX:AS脚本编程.
* XML:使用XML做为数据传递的格式: JSON:
原生的JS的写法去实现
【XMLHttpRequest】:
Ø 属性:
* readyState                        :XMLHttpRequest的状态
0(未初始化):对象已建立,但未初始化(尚未调用open方法)
1(初始化) :对象已建立,尚未调用send方法
2(发送数据):send方法已调用,但是当前的状态及http头未知
3(数据发送中):已接收部分数据,因为响应及http头不全,这时通过responseBody和responseText获取部分数据会出现错误
4(完成)   :数据接收完毕,此时可以通过responseBody和responseText获取完整的回应数据
* onreadystatechange        :当XMLHttpRequest状态改变的时候触发一个函数.
* status                                :获得响应的状态码. 200 , 404 ...
* responseText                :获得响应的文本数据.
* responseXML                        :获得响应的XML的数据.
Ø 方法:
* open(请求方式,请求路径,是否异步) :异步去向服务器发送请求.
* send(请求参数)                                                :发送请求.
* setRequestHeader(头信息,头的值)        :处理POST请求方式的中文问题.
Ø 创建XMLHttpRequest对象:
* IE                :将XMLHttpRequest对象封装在一个ActiveXObject组件.
* Firefox        :直接就可以创建XMLHttpRequest对象.
利用JS的框架去实现(重点
Data:代表服务器对当前这次请求的响应
Load:将服务器对当前这次请求的响应加载到选择器所选中的元素里面
JQuery的AJAX
JQuery的AJAX部分方法:
* Jq的对象.load(路径,参数,回调函数);
* $.get(路径,参数,回调函数,数据类型);
* $.post(路径,参数,回调函数,数据类型);
* $.ajax();(路径,[settings])
* serialize(); -- JQ的AJAX传递参数的时候需要使用的方法.
*ajax();
  * $.ajax({
        url:,
        data:,
        success:function(){
        }
    });
AJAX的响应的数据】:
文本,一段HTML的数据,XML,JSON
使用工具生成XML的文件
通常使用xStream工具. 将集合,数组,对象转成XML.
JSON的概述
Ø JSON的概念:
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式
Ø JSON的数据格式的介绍:
{“id”:1,”name”:aaa}
[{“id”:1,”name”:aaa},{“id”:2,”name”:bbb}]
{
    “city”:{“cid”:1,”cname”:”xxx”}
}
JSON的生成工具
Ø JSONLIB 转换JSON数据:
* JSONArray        :将数组或List集合转成JSON.
* JSONObject        :将对象或Map集合转成JSON.
监听器
ServletContextListenter:监听ServletContext对象的创建和销毁:
优化程序
方法】:
void contextDestroyed(ServletContextEvent sce)
void contextInitialized(ServletContextEvent sce)
【ServletContext对象的创建和销毁】:
* 创建:服务器启动的时候,服务器为每个WEB应用创建一个属于该web项目的对象ServletContext.
* 销毁:服务器关闭或者项目从服务器中移除的时候.
配置:
  <!-- 配置监听器 -->
<listener>
<listener-class>com.itheima.weblistener.MyServletContextListener</listener-class>
</listener>
企业中的应用:
* 1.加载框架的配置文件                :Spring框架 ContextLoaderListener
* 2.定时任务调度:
    * Timer,TimerTask

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马