(一)  简单说明 字典是Python的内置数据结构,将数据与键关联(例如:姓名:张三,姓名是键,张三就是数据).例如:下面这个就是一个字典 {'姓名': '张三', '出生日期': '2899-08-12', '成绩': ['3.21', '3.10', '3.01']} 创建字典.添加数据.访问字典数据的方式如下: d = {}  #直接用{}创建字典 f = dict() #通过工厂函数dict()创建字典 #通过下面的方式添加数据 d['姓名'] = '张三' d['出生日期'] = '…
python基础--类名称空间与对象(实例)名称空间 1 类名称空间 创建一个类就会创建一个类的名称空间,用来存储类中定义的所有名字,这些名字称为类的属性 而类的良好总属性:数据属性和函数属性 其中类的数据属性是共享给所有对象 print(id(g1.camp)) #引用的地址是一样的 print(id(Garen.camp)) 输出结果为: 364617767096 364617767096 其中类的函数属性是绑定到所有对象 print(id(g1.attack)) #两个引用地址不一样 pr…
一 面向对象初识 Python要么是面向过程要么是面向对象. 概念及优缺点: 面向过程的程序设计的核心是过程,过程即解决问题的步骤,面向过程的设计就好比精心设计好一条流水线,考虑周全什么时候处理什么东西. 优点是:极大的降低了程序的复杂度 缺点是:一套流水线或者流程就是用来解决一个问题,生产汽水的流水线无法生产汽车,即便是能,也得是大改,改一个组件,牵一发而动全身. 应用场景:一旦完成基本很少改变的场景,著名的例子有Linux內核,git,以及Apache HTTP Server等. 面向对象的…
我们在定义一个类时,经常会在类的各个方法中看到self,那么在程序执行时self到底起了什么作用,什么时候要加self,这一点需要我们思考并好好理解.之前在学习时没有想这么多,加之用pycharm写代码,很多地方都自动补全了,有些地方没加self,会提示错误,然后补全,没有想过这个过程,今天刚好整理一下. 1.先简单说明一下self的含义 类的方法与普通的函数只有一个特别的区别 —— 它们必须有一个额外的第一个参数名称,但是在调用这个方法的时候你不为这个参数赋值, Python 会提供这个值.这…
在hibernate中,通过sql语句查询带clob字段的记录,查出来的结果集是List<HashMap<String,Object>>类型,在调用jackson的接口转为json字符串的时候,会报异常,为了解决该问题,尝试在转json之前,先将clob字段找出,然后手动转成string.但是在找出clob字段的过程中,发现List<HashMap<String,Object>>中,clob字段的类型尽然不是Clob,而是一种类似$+数字的东东,原因是hib…
1.Question Description : when you use @Transactional annotation and @RequiresPermissions annotation (about shiro) together, you will find the @RequiresPermissions annotation donot work, why? 2. Explain: It's caused by the Proxy Mechanism of Spring, b…
一:在JDK里也有动态代理的类和接口,是Proxy和InvocationHandler,但是Proxy只能为接口产生代理类,借助InvocationHandler的实现类来完成对类对象的代理: 但是在Spring里可以为没有实现接口的类进行aop编程,这时候要模拟则可以借助cglib的Enhancer类和MethodInterceptor接口来实现: 下面的代码实现里有很多即兴的注释,诸君可忽略: 二:pom.xml <?xml version="1.0" encoding=&q…
AOP 代理类的创建 入口:AnnotationAwareAspectJAutoProxyCreator#postProcessAfterInitialization 和 AnnotationAwareAspectJAutoProxyCreator#getEarlyBeanReference /** * 代理配置:保证所有的代理创建者都有一致的属性配置 */ public class ProxyConfig implements Serializable { /** use serialVers…
#region 修改--官方的修改是,先查询,然后修改 /// <summary> /// 修改--官方的修改是,先查询,然后修改 /// </summary> static void Modify() { //此时返回的是一个Student类的代理类(包装类)对象 Studnet stu = db.Studnets.Where(s => s.s_ID == ).ToList().FirstOrDefault(); //此时其实操作的是代理类的属性,这些属性,会将只设置给内部…
怎样在一个容器中包含类型不同,但是彼此有关系的对象?众所周知,C++的容器只能存放类型相同的元素,所以直接在一个容器中存储不同类型的对象本身是不可能的,只能通过以下两种方案实现: 1. 提供一个间接层,在容器中存放对象的指针而不是对象本身. 2. 通过代理类实现. class Animal { public: ; }; class Cat : public Animal{}; class Dog : public Animal{}; class Bird : public Animal{}; 在…