摘要:
IoC容器: IoC容器会以某种方式加载Configuration metadata(通常是xml格式的配置信息),然后根据这些信息绑定整个系统的对象,最后总组装成一个可用的机遇轻量级容器的应用系统。 IoC启动过程:分为两个阶段,一个是容器启动阶段,另外一个是Bean实例化阶段 容器启动阶段:加载配置 -----》 分析配置信息 -----》装备到BeanDefinition -----》其他后处理(PostProcessor) Bean实例化阶段:实例化阶段 -----》装配阶段 -----》 生命周期回调 ------》 对象其他处理 -----》 注册回调接口容器... 阅读全文
摘要:
spring IoC容器分为两种:BeanFactory和ApplicationContextBeanFactory: 基础类型的IoC容器,提供完整的IoC服务支持,如果没有特殊指定,默认采用延迟初始化策略(lazy-load)。因此容器初始化速度较快,所需要的资源有限,对于资源有限,并且功能要求不是很严格的场景, BeanFactory是比较何时的IoC容器选择ApplicationContext:在BeanFactory的基础上构建,除了拥有BeanFactory的所有支持,还提供了高级特性。如事件发布,国际化信息指挥,该类型容器启动之后,默认全部初始化并绑定完成,因此,容器初始化事.. 阅读全文
摘要:
IoC(Inversion of Control)中文翻译为控制反转,指的是在创建对象这个动作不由程序发动,而是由别的程序进行注入,在没有使用IoC之前,我们构造对象方法大概有一下几种: 1)使用new关键字进行对象构造。 2)使用J2EE的service-Location解决直接的依赖耦合关系。 spring Ioc的注入方法: 1)构造方法注入:在被注入对象可以通过在其构造方法中声明依赖对象的参数列表,让外部IoC容器知道它需要依赖哪些对象。 2) setter 方法注入: 当前对象只要为其依赖对象所对应的属性添加setter方法,就可以通... 阅读全文
摘要:
今天用redis存储,发现客户端jedis提供的存储方法中存储的类型只有String和byte数据,没有能够存储对象的,问了下老大,有两种方法解决,一种是将对象序列化,一种是将对象转化为json格式的字符串。这就开始了我第一次序列化之旅。 要序列化一个对象,首先要创建OutputStream对象,然后将其封装在一个ObjectOutputStream对象内。此时,调用writeObject()方法将对象序列化并发送给OutputStream。在反序列化时,需要将一个InputStream封在ObjectInputStream内,然后调用readObject(),得到的结果是一个Obj... 阅读全文
摘要:
今天接触了下项目,发现我以前使用maven简直就是白痴式的用法,一起觉得maven就是用来添加jar包的,具体为什么要这么添加我自己也说不清楚。今天看了看公司怎么样使用maven,真是汗。然后就重新学习了下maven了。 基本原理: maven的基本原理很简单,采用远程仓库和本地仓库以及一个pom.xml的配置文件,将在pom.xml中配置的jar包从远程仓库下载到本地仓库,同时采用现在流行的软件体系架构,只保留最小的核心,其余功能都通过插件的形式提供,在执行maven任务的时候,他会自动下载所需要的插件。 项目管理: Maven一个重要特性是定义了项目的标准模板,可以通过加载插件去创建... 阅读全文
摘要:
Iptables 的基本配置,首先我们可以先把原有的清空# iptables –F# iptables –X设定INPUT、OUTPUT的默认策略为DROP,FORWARD为ACCEPTiptables -P INPUT DROPiptables -P OUTPUT DROPiptables -P FORWARD ACCEPT打开“回环”(自己机器可以访问自己的资源)iptables -A INPUT -i lo -j ACCEPTiptables -A OUTPUT -o lo -j ACCEPT打开所有网卡上面的ping功能,便于维护和检测iptables -A INPUT -i eth0 阅读全文
摘要:
由于最近频繁使用Linux,所以仔细的学习了一下Linux防火墙的相关知识,首先我们了解一些基本的知识。 当我们的计算机接入网络之后,就有许许多多的数据包进入,离开,或者经过我们的网络,而防火墙就是用来控制这些数据包的经过的。这些数据包会经过一些相应的规则链,比如要进入你的计算机的数据包会首先进入 INPUT 链,从我们的计算机发出的数据包会经过 OUTPUT 链,如果一台计算机做一个网络的网关(处于内网和外网两个网络连接的两台计算机,这两台计算机之间相互通讯的数据包会经过这台计算机,这台计算机即相当于一个路由器),可能会有很多数据经过这台计算机,那么这些数据包必经 FORWARD链... 阅读全文
摘要:
今天过得有点郁闷,把虚拟机装了卸,卸了装还是没有解决第二次开机就卡死的问题,最后发现是由于自己下的centOs内核不对应的问题,电脑是X86的,下了个i386的,所以就这样搞了一天,还好之前有学过Linux,所以命令基本上还是没有什么问题的。 昨天了解了redis数据库的一下东西,今天就来看看号称跑jsp最快的resin服务器,Linux下安装resin服务器需要先安装JDK,安装完成后将下载好的resin-pro-4.0.28.tar.gz解压,进入文件夹后执行 ./configure 进行自动配置。然后 执行 make 或者 make install 进行编译,这样基本就行了。然后到... 阅读全文
摘要:
第三天了,今天进入正式的学习阶段操作阶段,今天的主要任务就是熟悉redis键值数据库的安装和客户端的使用,在Linux上安装redis还是比较简单的,只要解压后 执行 make 命令就行了,装好之后就能用,比较纠结的是Linux的防火墙设置问题,在iptables中已经设置好了之后还是不能远程连接上去,比较纠结,最后直接把防火墙给关掉了。然后就可以在eclipse上面使用client客户端了,这边公司使用的是jedis的客户端,暂时还没有发现什么神奇的地方,待我慢慢发掘 阅读全文
摘要:
由于公司需要用到redis这个键值数据库,今天用了好久才把他安装了上去。具体安装方法如下:首先下载reids的压缩包 reidis-2.4.15.tar.gz,然后键入:# tar xf redis-2.4.45.tar.gz然后进入目录下键入如下命令:# make然后等待他安装完成.在目录中的redis.conf是其配置文件,具体配置如下:1. Redis默认不是以守护进程的方式运行,可以通过该配置项修改,使用yes启用守护进程daemonize no2. 当Redis以守护进程方式运行时,Redis默认会把pid写入/var/run/redis.pid文件,可以通过pidfile指定pid 阅读全文