实例化

mybatis配置全局变量

孤人 提交于 2020-03-30 11:45:02
在平时的工作中有时候是需要在配置文件中配置全局变量的,因为这些东西是不会变的,并且每个mapper都传参的话也显得有点繁琐,还好mybatis本身是支持全局变量的,今天工作中用到了,记录一下。 先在实例化sqlSessionFactory的时候添加上mybatis-configuration.xml的配置文件 <bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="mapperLocations" value="classpath:mapping/*.xml" /> <property name="configLocation" value="classpath:mybatis-configuration.xml" /> </bean>  之后在mybatis-configuration配置文件中添加全局变量 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis

实例化问题

血红的双手。 提交于 2020-03-29 05:54:17
Object .Instantiate public static Object Instantiate( Object original); public static Object Instantiate( Object original, Vector3 position, Quaternion rotation); //实例化Prefab 例1: public GameObject prefab; void Start() { for (int i = 0; i < 10; i++) Instantiate(prefab, new Vector3(i * 2.0f, 0, 0), Quaternion.identity); }// 例2:Transform theClonedExplosion;theClonedExplosion = Instantiate(explosion) as Transform; //脚本里面定义: public GameObject PrefabNo; 那么, 在使用这个PrefabNo做Instantiate()的时候, 接收返回值变量的类型必须是GameObject: GameObject newObject = Instantiate(myPrefab) as GameObject; 又比如prefab 类型是自定义的

spring depends-on

别来无恙 提交于 2020-03-27 21:42:30
  depend-on用来表示一个Bean的实例化依靠另一个Bean先实例化。如果在一个bean A上定义了depend-on B那么就表示:A 实例化前先实例化 B。 这种情况下,A可能根本不需要持有一个B对象。 比如说,你的DAO Bean实例化之前你必须要先实例化Database Bean,DAO Bean并不需要持有一个Database Bean的实例。因为DAO的使用是依赖Database启动的,如果Database Bean不启动,那么DAO即使实例化也是不可用的。这种情况DAO对Database的依赖是不直接的。 除了在DAO上使用构造函数注入Database Bean以外,Spring没有任何依赖注入的关系能够满足上面的情况。但是DAO也许根本不需要Database的实例被注入,因为DAO是通过JDBC访问数据库的,它不需要调用Database 上的任何方法和属性。 在这种情况下你可以使用depends-on来定义在DAO被实例化之前先去实例化Database。你可这样定义: 1 <?xml version="1.0" encoding="UTF-8"?> 2 3 <!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" 4 "http://www.springframework.org/dtd/spring-beans

Flask 第八篇 实例化Flask的参数 及 对app的配置

此生再无相见时 提交于 2020-03-27 08:10:50
Flask 是一个非常灵活且短小精干的web框架 , 那么灵活性从什么地方体现呢? 有一个神奇的东西叫 Flask配置 , 这个东西怎么用呢? 它能给我们带来怎么样的方便呢? 首先展示一下: from flask import Flask app = Flask(__name__) # type:Flask app.config["DEBUG"] = True 这句 app.config["DEBUG"] = True 可以实现的功能可刺激了 代码只要发生改动,自动重启Flask程序(app.run) 在控制台打印的信息非常全面 以上两个功能就是传说中的 DEBUG 模式(调试模式) Flask的配置就是在 app.config 中添加一个键值对,但是你存进去的键必须是config中应该存在的,如果不再存在的话,它会默认无用,就这么放着 config中有多少有用的key 呢? { 'DEBUG': False, # 是否开启Debug模式 'TESTING': False, # 是否开启测试模式 'PROPAGATE_EXCEPTIONS': None, # 异常传播(是否在控制台打印LOG) 当Debug或者testing开启后,自动为True 'PRESERVE_CONTEXT_ON_EXCEPTION': None, # 一两句话说不清楚,一般不用它 'SECRET_KEY'

Spring bean的生命流程

给你一囗甜甜゛ 提交于 2020-03-26 20:26:58
Spring 是一个轻量级的 J2EE 开源框架,其目标是降低企业级应用开发难度,提高企业级应用开发效率。在日程开发中,我们会经常使用 Spring 框架去构建应用。所以作为一个经常使用的框架,了解其原理还是很有必要的。接下来我们就从宏观层面上,来看看 Spring 中的 bean 由实例化到销毁的过程。在详细讨论 bean 生命周期前,先上一张图,后面也会围绕这张图展开讨论。 图1 bean实例化过程 接下来对照上图,一步一步对 singleton 类型 bean 的生命周期进行解析: 实例化 bean 对象,类似于 new XXObject() 将配置文件中配置的属性填充到刚刚创建的 bean 对象中。 检查 bean 对象是否实现了 Aware 一类的接口,如果实现了则把相应的依赖设置到 bean 对象中。比如如果 bean 实现了 BeanFactoryAware 接口,Spring 容器在实例化bean的过程中,会将 BeanFactory 容器注入到 bean 中。 调用 BeanPostProcessor 前置处理方法,即 postProcessBeforeInitialization(Object bean, String beanName)。 检查 bean 对象是否实现了 InitializingBean 接口,如果实现,则调用

Spring IOC 启动过程?

只愿长相守 提交于 2020-03-25 21:01:50
这是一道经典的Spring回答的深入程度可以看出面试者对Spring框架的理解。 https://www.jianshu.com/p/8c24e0c804cc 首先看图理解过程 Spring的模型是一切皆Bean,从上图可以看出,分为以下几步: 第一步读取bean配置信息 第二步根据bean注册表实例化Bean 第三步将Bean实例放到容器中 第四步使用Bean 然后看一下Spring类的继承图 然后结合代码看过程 上面的回答是个简单版本,不够详细,大部分面试官是不满意的,下面结合代码。 我们学习并练习Spring框架时,一般开始都是这样一句代码: 意思是加载xml文件创建一个ApplicationContext 的Spring 容器。 那么就从new ClassPathXmlApplicationContext这个构造方法开始看吧。进入源码: 其实可以看到他是来到这里了: 上面这个构造方法呢,其实就是new ClassPathXmlApplicationContext("classpath:application.xml") 真正开始的地方。开始之前大家先看看上面第二、第三张图“ApplicationContext 的继承图”和“BeanFactory的继承图”,ClassPathXmlApplicationContext 经过好几次继承才到 ApplicationContext

委托小结及Func用法

白昼怎懂夜的黑 提交于 2020-03-23 05:32:50
首先,委托是一种类型,由关键字delegate声明。确切的说,委托是一种可用于封装命名或者匿名方法的引用类型。 它 类似于 C++ 中的函数指针,而且是类型安全和可靠的。 委托类型的声明与方法签名相似, 有一个返回值和任意数目任意类型的参数。 必须使用具有兼容返回类型和输入参数的方法或 lambda 表达式实例化委托。下面给出了委托声明及实例化的示例代码: 1 // 委托声明 -- 定义一个签名: 2 delegate double MathAction(double num); 3 4 class DelegateTest 5 { 6 // 符合委托声明的常规方法 7 static double Double(double input) 8 { 9 return input * 2; 10 } 11 12 static void Main() 13 { 14 // 使用一个命名方法实例化委托类型 15 MathAction ma = Double; 16 17 // 调用委托实例 18 double multByTwo = ma(4.5); 19 Console.WriteLine(multByTwo); 20 21 // 再用匿名方法来实例化委托类型 22 MathAction ma2 = delegate(double input) 23 { 24 return input

RocketMQ之Producer

我的未来我决定 提交于 2020-03-21 15:57:21
一、Producer 发送消息的步骤 1) 设置 Producer 的 GroupName(Producer Group是一类 Producer 的集合); 2) 设置 InstanceName,当一个 JVM 需要启动多个 Producer 时,需要指定不同的 InstanceName 来区分,不显式设置时使用默认名称 "DEFAULT"; 3) 设置发送失败重试次数,默认值是2次,可能会出现重复消息,因此需要消费端进行控制; 4) 设置 NameServer 地址; 5) 组装数据并发送 二、不同类型的生产者 生产者向消息队列中写入消息,根据不同的业务场景需要采用不同的写入策略,如同步发送、异步发送、延迟发送和发送事务消息等。 2.1 同步发送 public class Producer { public static void main(String[] args) throws MQClientException, RemotingException, InterruptedException, MQBrokerException { // 创建生产者对象 DefaultMQProducer producer = new DefaultMQProducer("producerGroupName"); // 设置实例化名称 producer.setInstanceName(

Python学习之==>面向对象编程(一)

时间秒杀一切 提交于 2020-03-21 01:44:46
一、面向对象与面向过程   面向对象与面向过程是两种不同的编程范式,范式指的是按照什么方式去编程、去实现一个功能。不同的编程范式本质上代表对各种不同类型的任务采取不同的解决问题的思路。 1、面向过程编程   角色是执行者,把一个项目按照一定的顺序,从头到尾一步步执行下去。这种思想好理解,但只要前面一个步骤变了,后面的步骤也要跟着变,维护起来比较麻烦。 2、面向对象编程   角色是指挥者,把一个项目分成一个个小的部分,每个部分负责一方面的功能,整个项目由这些部分组合而成一个整体。类似一个机关,分为各个职能部门,只要符合一定的前提就行。面向对象的思想适合多人分工合作。   面向对象是包含面向过程思路的,比如定义类中的方法,每个小方法、小功能还是面向过程的的思想。   面向对象与面向过程的主要区别就是:面向对象可以使程序更加容易更改和扩展。 二、面向对象的特性 1、类   Class,相当于一个种类、一个模型。一个类就是对一类拥有相同属性的对象的抽象、蓝图、原形。在类中定义了这些对象都具备的属性、共同的方法。 2、对象(实例)   Object,根据模型造出来的具体的东西。一个对象就是一个类实例化后实例。一个类必须经过实例化后才能在程序中调用,一个类可以实例化多个对象,每个对象也可以有不同的属性。(对象就是实例,两者是一个意思) 3、实例化   初始化一个类,创造一个对象

工厂模式——我有不止一个对象

二次信任 提交于 2020-03-19 14:58:12
3 月,跳不动了?>>> 3年工作经验是吧? 你知道工厂模式分为几类吗?他们都有什么区别? 那你说说你们项目中是怎么使用工厂模式的? 带着问题,尤其是面试问题的学习才是最高效的。加油,奥利给! 文章收录在 GitHub JavaEgg ,N线互联网开发必备技能兵器谱 工厂模式 工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 工厂模式可以分为三类: 简单工厂模式(Simple Factory) 工厂方法模式(Factory Method) 抽象工厂模式(Abstract Factory) 简单工厂其实不是一个标准的的设计模式。GOF 23种设计模式中只有「工厂方法模式」与「抽象工厂模式」。简单工厂模式可以看为工厂方法模式的一种特例,为了统一整理学习,就都归为工厂模式。 这三种工厂模式在设计模式的分类中都属于 创建型模式 ,三种模式从上到下逐步抽象。 创建型模式 创建型模式(Creational Pattern)对类的实例化过程进行了抽象,能够将软件模块中对象的创建和对象的使用分离。为了使软件的结构更加清晰,外界对于这些对象只需要知道它们共同的接口,而不清楚其具体的实现细节