11 2017 档案

摘要:最近看到一段代码, 里面用到了lambda表达式。刚开始学习java语法的时候对于这些东西只是草草看了一下,以后也没再用,到现在都忘干净了。突然感觉自己的基础很薄弱呀,,,所以重新学了一下,特此记录。 一、什么是Lambda表达式? Lambda表达式是一个匿名函数,所谓的匿名函数,就是没有名字的函 阅读全文
posted @ 2017-11-30 23:22 十禾。 阅读(192) 评论(0) 推荐(0)
摘要:一、什么是AOP? AOP含义是面向切面编程,它通过类似于横切的技术,剖解开封装对象的内部,并将那些影响了多个类的公共行为封装到一个可重用模块中,把这些模块动态放入对象内部。以此来降低耦合度,AOP涉及很多名词,所以在阅读这部分源码的时候,最好还是先将AOP的原理搞清楚。推荐这位博主的文章:Spri 阅读全文
posted @ 2017-11-28 11:52 十禾。 阅读(298) 评论(0) 推荐(0)
摘要:Tiny-Spring作为spring一个简化版本,既包含了springIOC 与SpringAOP的主要部分,而且去除了其他不必要的成分,对于Spring的认识更加清晰,如果看Spring所有源码头大的话,可以看它。下面是我这几天对于TinySpring源码阅读的理解。特此记录。 一、什么是IOC 阅读全文
posted @ 2017-11-27 23:39 十禾。 阅读(283) 评论(0) 推荐(0)
摘要:最近在阅读Spring源码,对于Spring AOP动态代理的两种实现方式--JDK动态代理以及Cglib动态代理的实现又重新回顾了一下。特此记录。 一、JDK动态代理 这是通过java反射机制来实现的,它所对应的类必须有接口。 Jdk动态代理主要有两个重要的地方: InvocationHandle 阅读全文
posted @ 2017-11-27 17:35 十禾。 阅读(365) 评论(0) 推荐(0)
摘要:一、前期准备:配置数据源 我使用的是druid,当然也可以使用其他的。使用方式都类似。 首先,引入需要的jar包。 然后,在application.properties进行配置: 这样就可以完成dataSource的自动引入。 二、使用mybatis-spring-boot-starter进行整合 阅读全文
posted @ 2017-11-23 22:32 十禾。 阅读(149) 评论(0) 推荐(0)
摘要:nginx常被用于负载均衡,可能认为在使用它之后就可以提高访问网站的访问速度。因为有两台服务器,可以减轻服务器访问的压力。那么看一个测验。 在两台服务器的情况下使用负载均衡访问单纯的jsp页面。 在10s内进行10000次访问 一台服务器情况下,10s进行10000次访问 可以发现,一台服务器的效率 阅读全文
posted @ 2017-11-23 21:28 十禾。 阅读(324) 评论(0) 推荐(0)
摘要:一、基本pom依赖 二、写一个helloworld 首先,先看一下spring-boot的项目结构 Boottest3Application:作为主类,可以扫描它当前包以及子包中的注解。 @SpringBootApplication:组合注解,配置它相当于配置了@Configuration ,@En 阅读全文
posted @ 2017-11-22 09:38 十禾。 阅读(141) 评论(0) 推荐(0)
摘要:写这类文章是用来记录自己学习springboot的过程,然后总结出来,如有不对还请指出。 首先呢,学习一个东西,得知道它是什么,干什么用的,有啥长处与短处,这些明白了,学起来也就轻松多了~~ 一、什么是SpringBoot? 当你觉得搭建一个web还要写一大堆配置文件时候,当你感觉spring框架有 阅读全文
posted @ 2017-11-20 10:58 十禾。 阅读(167) 评论(0) 推荐(0)
摘要:一、问题引出 日志对于一个成熟的项目来说是比不课少的。当项目运行上线,运行出错的时候,可以通过日志记录。然后开发人员通过日志反馈的信息找到错误的根源,进而修改之。 二、Java项目中日志的记录 Log4J的使用 java项目中,使用最广泛的应该就是Log4j了吧。Log4j是apache下的开源项目 阅读全文
posted @ 2017-11-16 15:46 十禾。 阅读(220) 评论(0) 推荐(0)
摘要:一、什么是Memcached? Memcached是danga.com开发的分布式内存对象缓存系统,所谓分布式,意味着它不是本地的,而是基于网络连接完成服务。Memcached把一些数据通过key=value数据存储到内存中,这样访问更加方便快捷。但是随之而来的问题是如果Memcached关闭或者M 阅读全文
posted @ 2017-11-15 19:55 十禾。 阅读(5591) 评论(0) 推荐(0)
摘要:一、问题背景 这两天做东西的时候发现一个问题,在SpringMVC中使用@Value的时候,无法获取@Value对应的值。在网上查阅了各种资料之后,总结一下。 二、@Value注解的作用。 为了减小耦合度,通常,将一些固定的常量放在配置文件***.properties中。 properties内容定 阅读全文
posted @ 2017-11-14 19:19 十禾。 阅读(11294) 评论(0) 推荐(0)
摘要:今天做东西的时候出现一个问题。 假如:一个用户进行登录验证,验证身份通过后,将生成的Token写入到Cookite当中。 用户进行登录验证的url: localhost/user/login 然后,有一个页面 localhost/index,它在未经过身份验证的时候,是无法访问的。 我用一个拦截器拦 阅读全文
posted @ 2017-11-10 11:01 十禾。 阅读(309) 评论(0) 推荐(0)
摘要:最近在做东西,要求使用Tiles框架。就简单总结了一下。 一、什么是Tiles框架? Tiles 是一种JSP布局框架,主要目的是为了将复杂的jsp页面作为一个的页面的部分机能,然后用来组合成一个最终表示用页面用的,这样的话,便于对页面的各个机能的变更及维护。 二、为什么使用Tiles框架 你可能觉 阅读全文
posted @ 2017-11-07 20:12 十禾。 阅读(360) 评论(0) 推荐(0)
摘要:一、什么是代理模式? 为另一个对象提供一个替身或一个占位符以控制对这个对象的访问。 二、 代理模式各种变体。 远程代理:使得客户端可以访问在远程主机的角色(两个程序不在同一个jvm虚拟机)。 虚拟代理:当创建开销大的对象的时候,真正需要这个对象才创建它,当对象在创建前与创建中时候,由虚拟代理扮演对象 阅读全文
posted @ 2017-11-06 14:46 十禾。 阅读(145) 评论(0) 推荐(0)
摘要:一、什么是状态模式 定义:允许对象在内部状态改变时改变它的行为,对象看起来好像改变了它的类 二、什么时候用状态模式? 当控制一个对象状态转换的条件表达式过于复杂时,使用状态模式。把状态的判断逻辑转移到表示不同的一系列类当中,可以把复杂的逻辑判断简单化。(避免了写很多的if。。。。else) 三、状态 阅读全文
posted @ 2017-11-04 19:12 十禾。 阅读(267) 评论(0) 推荐(0)
摘要:一、什么是迭代器模式 提供一种方法顺序访问一个聚合对象中的各个元素,而又不暴露其内部的表示 二、使用场景 通用的方法遍历集合元素 三、模式构成 迭代器角色:定义遍历元素所需要的方法 具体迭代器角色:实现迭代器接口的方法 聚集类:Aggregate(抽象类)和ConcreteAggregate(具体聚 阅读全文
posted @ 2017-11-03 11:59 十禾。 阅读(124) 评论(0) 推荐(0)
摘要:一、什么是模板方法模式 模板设计方式:在一个方法中定义一个算法骨架,而将一些方法的实现放到子类中,这样使在不改变算法结构的情况下,重新定义算法中的一些步骤 ps:什么是模板,简单点说就是一个方法,这个方法定义了一组算法步骤。任何步骤都可以是抽象的,这些抽象的方法由子类来实现。 二、使用场景 多个类有 阅读全文
posted @ 2017-11-01 11:29 十禾。 阅读(125) 评论(0) 推荐(0)