Java动态代理、xml、正则表达式

15.1  动态代理
        在之后学习Spring框架时,Spring框架有一大核心思想,就是AOP,(Aspact-Oriented-Programming 面向切面编程) 而AOP的原理就是Java的动态代理机制,在Java的动态代理机制中,有两个重要的类或接口,一个是 InvocationHandler(Interface)、另一个则是 Proxy(Class),这一个类和接口是实现我们动态代理所必须用到的
15.1.1 动态代理的基础
动态代理的基础 : 必须有接口
Java中使用接口来定义统一的行为规范 : 接口.

接口必须有实现类:
interface SuperStar 超级明星
行为规范 :
void sing(int money);
void liveShow(int moeny);
void sleep();

// 接口必须有实现类 :
1. L implements SuperStar
2. B implements SuperStar
Proxy 代理类 :

        Class Proxy 代理类 是在运行时创建的实现指定的接口列表(称为代理接口)的类 。 代理实例是代理类的一个实例。 每个代理实例都有一个关联的调用处理程序对象,它实现接口InvocationHandler 。 通过其代理接口之一的代理实例上的方法调用将被分派到实例调用处理程序的invoke方法

        static Object newProxyInstance(ClassLoader loader, Class[] interfaces, InvocationHandler h) 返回指定接口的代理实例,该代理实例将方法调用分派给指定的调用处理程序。 

15.1.2 动态代理作用:   
         拦截和控制 被代理对象 的所有行为
15.1.3 InvocationHandler 调用处理器
        Interface InvocationHandler 每个代理实例都有一个关联的调用处理程序。 当在代理实例上调用方法时,方法调用将被编码并分派到其调用处理程序的invoke方法。

          15.1.4 案例

15.2  XML
简介 : XML全称为Extensible Markup Language,意思是可扩展的标记语言。

    标记 -> 用标记来修饰文本信息.
    
    可扩展 -> 标记可随意定义.

XML技术 : 与数据相关技术, 在企业中xml技术常用来存储数据和传输数据, xml之所以流行的原因在于xml语言与任何编程语言无关, xml可用于 php, java, .net任何编程语言.

        15.2.1 书写一个xml配置文件
            xml编写时也要符合一定的规则 :
1)xml文件的后缀名是.xml
2)xml有且只有一个根标签
3)xml的标签是尖括号包裹关键字成对出现的,有开始标签有结束标签,关键字是自定义的, xml也可以有空标签/自关闭标签
4)xml允许有属性,属性也是根据需要自定义的,属性格式:属性= “属性值”,多个属性之间使用空格隔开
5)xml是区分大小写的
            xml 的组成
1)文档声明:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在Python中,我们可以使用正则表达式来处理XML文件,并进行替换操作。 首先,我们需要导入`re`模块,这是Python中用于操作正则表达式的标准模块。 接下来,我们需要读取XML文件并将其保存到一个字符串中,我们可以使用`open()`函数打开文件,然后使用`.read()`方法将文件内容保存到一个字符串中。 然后,我们可以使用正则表达式的`sub()`函数来进行替换操作。`sub()`函数接受三个参数:要替换的字符串模式、替换后的字符串和要进行替换操作的字符串。 例如,如果我们想要将XML文件中的所有`<name>`标签替换为`<username>`,可以使用以下代码: ```python import re # 读取XML文件并保存到字符串中 with open('example.xml', 'r') as file: xml_content = file.read() # 使用正则表达式替换操作 new_xml_content = re.sub(r'<name>', '<username>', xml_content) # 输出替换后的结果 print(new_xml_content) ``` 上述代码中,我们首先使用`open()`函数将名为`example.xml`的XML文件打开并读取其内容保存到`xml_content`字符串中。 然后,我们使用正则表达式的`sub()`函数,将`<name>`替换为`<username>`,替换操作应用于`xml_content`字符串,并将结果保存到`new_xml_content`中。 最后,我们使用`print()`函数输出替换后的结果。 以上就是使用Python的正则表达式XML进行替换的简单示例。当然,实际应用中可能会有更多复杂的替换操作,我们可以根据具体的需求来编写相应的正则表达式来完成相应的替换任务。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值