望山居

真相本来是一体的,太大了,所以大家给他画了格子,结果把自己困了起来

导航

2018年6月13日 #

Spring Boot 的配置文件application.properties

摘要: Spring Boot 中的application.properties 是一个全局的配置文件,放在src/main/resources 目录下或者类路径的/config下。 作为全局配置文件的application.properties 的作用是对一些默认的配置进行修改。 自定义属性: appli 阅读全文

posted @ 2018-06-13 16:13 穆道 阅读(525) 评论(0) 推荐(0) 编辑

Spring Boot概要

摘要: 1、Spring Boot使用“习惯优于配置”(项目中存在大量的配置,此外还内置了一个习惯性的配置)的理念,使用户的项目实现快速运行。通过学习Spring Boot中的配置文件application.properties,学习如何开启各个功能模块的默认配置。 阅读全文

posted @ 2018-06-13 15:50 穆道 阅读(92) 评论(0) 推荐(0) 编辑

SpringBoot的启动报错

摘要: 1、 阅读全文

posted @ 2018-06-13 15:48 穆道 阅读(99) 评论(0) 推荐(0) 编辑

2018年6月12日 #

JAVA对文件的操作

摘要: 文件的类型依据用途分为: 文本 图片 音频 视频 数据 文件的操作类型分为: 创建 打开 写入 修改 保存 关闭 文件的状态分为: 有(空间) 无(空间) 是否修改(时间) 以下部分是JAVA的操作代码 一、获得控制台用户输入信息 二、复制文件 但同时,封装好的 Apache Commons IO的 阅读全文

posted @ 2018-06-12 13:13 穆道 阅读(104) 评论(0) 推荐(0) 编辑

2018年6月8日 #

Socket通信原理

摘要: 什么是Socket: Socket是在应用层和传输层之间的一个抽象层,是将TCP/IP层复杂的操作抽象为几个简单的接口。 Socket起源于UNIX Unix的思想是:一切接文件 Socket是一种“打开--读/写--关闭”模式的实现。 Socket所在位置 Socket通信过程: 对于网站,通信模 阅读全文

posted @ 2018-06-08 12:25 穆道 阅读(180) 评论(0) 推荐(0) 编辑

2018年6月6日 #

原型模式(Prototype Pattern)

摘要: 原型模式是用于创建重复的对象,同时又能保证性能。 这种类型的设计模式属于创建型模式, 它提供了一种创建对象的最佳模式。 这种模式是实现了一个原型接口,该接口用于创建当前对象的克隆。 当直接创建对象的代价比较大时,采用这种模式。 例如:一个对象需要一个高代价的数据库操作之后被操作。我们可以缓存该对象, 阅读全文

posted @ 2018-06-06 16:44 穆道 阅读(94) 评论(0) 推荐(0) 编辑

OSS基本概念介绍

摘要: 存储空间(Bucket): 存储空间是用于存储对象(Object)的容器,所有的对象都必须隶属于某个存储空间。 可以设置和修改存储空间属性用来控制地域、访问权限、生命周期等,这些属性设置直接作用于该存储空间内的所有对象,通过灵活创建不同的存储空间来完成不同的管理功能。 同一个存储空间内部是扁平的,没 阅读全文

posted @ 2018-06-06 10:30 穆道 阅读(939) 评论(0) 推荐(0) 编辑

2018年6月5日 #

建造者模式(Builder Pattern)

摘要: 建造者模式使用多个简单的对象,通过操作,构成复杂的对象。这种类型的设计属于创建型模式,提供一种创建对象的最佳方式 一个Builder类会一步一步构造最终的对象。该Builder是独立于其他对象的。 介绍: 意图:讲一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。(找到同样的构建过 阅读全文

posted @ 2018-06-05 17:43 穆道 阅读(95) 评论(0) 推荐(0) 编辑

组合模式(Composite Pattern)

摘要: 其中有神奇的组合模型类 阅读全文

posted @ 2018-06-05 16:07 穆道 阅读(106) 评论(0) 推荐(0) 编辑

2018年6月4日 #

观察者模式(Observe Pattern)

摘要: 观察者模式: 当对象存在一对多关系时,使用观察者模式(Observe Pattern)。例如:当一个对象被修改时,会通知它的依赖对象。 介绍: 1、意图:定义对象的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 2、主要解决:一个对象状态改变给其他对象通 阅读全文

posted @ 2018-06-04 12:04 穆道 阅读(170) 评论(0) 推荐(0) 编辑

ReentrantLock

摘要: ReentrantLock,是一个可重入的互斥锁,它具有与使用synchronized方法和语句锁访问的隐式监视器锁相同的一些基本行为和语义,但功能更强大。 ReentrantLock的基本用法: 利用ReenthrantLock实现的线程程序中,线程没有交替,数据都是分组打印的,说明:一个线程打印 阅读全文

posted @ 2018-06-04 11:51 穆道 阅读(126) 评论(0) 推荐(0) 编辑

2018年6月1日 #

<logger>和<root>

摘要: <logger>用来设置某一个包或者具体一个类的日志打印级别、以及制定<appender>。<logger>可以包含零个或者多个<appender-ref>元素,标识这个appender将会添加到这个logger。<logger>仅有一个name属性、一个可选的level属性和一个可选的additi 阅读全文

posted @ 2018-06-01 17:59 穆道 阅读(850) 评论(0) 推荐(1) 编辑

logback的configuration

摘要: logback的<configuration>只有三个属性: 1、scan【boolean】:当scan被设置为true时,当配置文件发生改变,将会被重新加载。默认值为true。 2、scanPeriod【int(ms)】:检测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认为毫秒,当sca 阅读全文

posted @ 2018-06-01 17:10 穆道 阅读(292) 评论(0) 推荐(0) 编辑

logback的加载过程

摘要: 使用logback-classic.jar时,启动应用后,logback按照以下顺序进行扫描: 1、在系统配置文件System Properties中寻找是否有logback.configurationFile对应的value 2、在classpath下寻找是是否有logback.groovy(即l 阅读全文

posted @ 2018-06-01 17:06 穆道 阅读(588) 评论(0) 推荐(0) 编辑

slfj4 + logback

摘要: slf4j:(Simple Logging Facade for Java,简单日志门面),它不是具体的日志解决方案,只服务于各种各样的日志系统。在使用SLF4J的时候,不需要再代码中或配置文件中指定使用的那个具体的日志系统。 logback:是由log4j创始人设计的一个开源日志组件。logbac 阅读全文

posted @ 2018-06-01 17:05 穆道 阅读(277) 评论(0) 推荐(0) 编辑

2018年5月31日 #

数据访问对象模式

摘要: 数据访问对象模式(Data Access Object Pattern)或DAO模式用于把低级的数据访问的API或操作从高级的业务服务中分离出来。以下是数据访问对象模式的参与者。 数据访问对象接口(Data Access Object Interfact)-该接口定义了在一个模型对象上要执行的标准操 阅读全文

posted @ 2018-05-31 17:52 穆道 阅读(158) 评论(0) 推荐(0) 编辑

组合实体模式

摘要: 组合实体模式(Composite Entity Patter)用在EJB持久化机制中。一个组合实体是一个EJB实体bean,代表了对象的图解。当更新了一个组合实体时,内部依赖对象beans会自动更新,因为他们是由EJB实体bean管理的。以下是组合实体bean的参与者。 组合实体(Composite 阅读全文

posted @ 2018-05-31 17:46 穆道 阅读(127) 评论(0) 推荐(0) 编辑

业务代表模式

摘要: 业务代表模式(Business Delegate Pattern)用于对表示层和业务层解耦。它基本上是用来减少通信或对表示层代码中的业务层代码的远程查询功能。在业务层中有以下实体: 客户端(Client)-表示层代码可以使JSP、servlet和UI java代码 业务代表(Business Del 阅读全文

posted @ 2018-05-31 17:33 穆道 阅读(96) 评论(0) 推荐(0) 编辑

MVC模式

摘要: MVC模式代表(Model-View-Controller,模式-视图-控制器)模式。 这种模式用于应用程序的分层开发。 Model(模型)-模型代表一个存取数据的对象或JAVA POJO。它可以带有逻辑,在数据变化时更新控制器。 View(视图)-视图代表模型包含的数据的可视化 Controlle 阅读全文

posted @ 2018-05-31 17:27 穆道 阅读(134) 评论(0) 推荐(0) 编辑

设计模式简介

摘要: 设计模式是一套被人们反复使用的、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了重用代码、让代码更容易被他人理解、保证代码可靠性。 设计模式是的代码编制真正工程化。 GOF(四人帮,Gang of Four)提出的设计模式主要基于面向对象的设计原则: 对接口编程而不是对实现编程。 阅读全文

posted @ 2018-05-31 17:08 穆道 阅读(95) 评论(0) 推荐(0) 编辑

Spring MVC的测试

摘要: 测试是保证软件质量的关键。 与 Spring MVC 相关的测试,主要涉及控制器的测试。 为了测试Web项目通常不需要启动项目,需要一些Servlet相关的一些模拟对象,比如MockMVC、MockHttpServletRequest、MockHttpServletResponse、MockHttp 阅读全文

posted @ 2018-05-31 15:20 穆道 阅读(240) 评论(0) 推荐(0) 编辑

Spring MVC的高级配置

摘要: 1、文件上传配置 文件上传是项目中常用的一个功能,Spring MVC通过配置一个MultipartResolver来上传文件。 在Spring的控制器中,通过MultipartFile file 来接受文件,通过MultipartFile[] files接收多个文件上传。 2、自定义HttpMes 阅读全文

posted @ 2018-05-31 15:14 穆道 阅读(77) 评论(0) 推荐(0) 编辑

其他配置

摘要: 1、快捷的ViewController 2、路径匹配参数配置 在Spring MVC中,路径参数如果带有“.”的话,“.”后面的值将被忽略,例如访问http://localhost.8080/highlight_springmvc4/anno/pathvar/xx.yy,此时“.”后面的yy被忽略 阅读全文

posted @ 2018-05-31 15:06 穆道 阅读(120) 评论(0) 推荐(0) 编辑

@ControllerAdvice

摘要: 通过@ControllerAdvice,可以将对于控制器的全局配置放置在同一个位置,注解了@Controller的类的方法可使用@ExceptionHandler、@InitBinder、@ModelAttribute注解到方法上,这对所有注解了@RequestMapping的控制器内的方法有效。 阅读全文

posted @ 2018-05-31 14:58 穆道 阅读(78) 评论(0) 推荐(0) 编辑

拦截器配置

摘要: 拦截器(Interceptor)实现对每一个请求处理前后进行相关的业务处理,类似于Servlet的Filter。 可让普通Bean实现HanlderInterceptor接口或者继承HandlerInterceptorAdapter类实现自定义拦截器。 通过重写WebMvcConfigurerAda 阅读全文

posted @ 2018-05-31 14:52 穆道 阅读(97) 评论(0) 推荐(0) 编辑

静态资源映射

摘要: 程序的静态文件(js、css、图片)等需要直接访问,这时可以在配置里重写addResourceHandlers方法实现 阅读全文

posted @ 2018-05-31 14:49 穆道 阅读(86) 评论(0) 推荐(0) 编辑

Spring MVC的常用注解

摘要: @Controller:注解在类上,表明这个类是Spring MVC里的Controller,将其声明为Spring的一个Bean,Dispatcher Servlet会自动扫描注解了此注解的类(这里的@Controller和用于注解作为拦截方式的原理类似),并将Web请求映射到注解了@Reques 阅读全文

posted @ 2018-05-31 12:32 穆道 阅读(90) 评论(0) 推荐(0) 编辑

SpringMVC项目的快速搭建

摘要: Spring MVC提供了一个DispatcherServlet来开发Web应用。在Servlet2.5及2以下的时候只要在web.xml下配置<servlet>元素即可。 在Servlet3.0+则无web.xml的配置方式,在Spring MVC里实现WebApplicationInitiali 阅读全文

posted @ 2018-05-31 12:16 穆道 阅读(83) 评论(0) 推荐(0) 编辑

2018年5月30日 #

Spring MVC项目快速搭建

摘要: Spring MVC提供了一个DispatcherServlet 阅读全文

posted @ 2018-05-30 20:12 穆道 阅读(72) 评论(0) 推荐(0) 编辑

SpringMVC概述

摘要: MVC:Mode+View+Controller(数据模型+视图+控制器) 三层架构:Presentation tier + Application tier + Data tier(展现层+应用层+数据访问层) 那MVC和三层架构的关系 MVC只存在于三层架构的展现层: M实际是数据模型,是包含数 阅读全文

posted @ 2018-05-30 20:10 穆道 阅读(101) 评论(0) 推荐(0) 编辑

测试

摘要: 测试时开发工作中不可缺少的部分。单元测试只针对当前开发的类和方法进行测试,可以简单通过模拟依赖来实现,对运行环境没有依赖;但是仅仅进行单元测试是不够的,它只能验证当前类或方法能否正常工作。 集成测试可以帮助coder了解系统地各个部分组合在一起是否能正常工作。 集成测试一般需要来自不同层的不同对象的 阅读全文

posted @ 2018-05-30 19:21 穆道 阅读(99) 评论(0) 推荐(0) 编辑

@Enable*注解的工作原理

摘要: @EnableAspectJAutoProxy @EnableAsync @EnableScheduling @EnableWebMv @EnableConfigurationProperties @EnableJpaRepositories @EnableTransactionManagement 阅读全文

posted @ 2018-05-30 19:12 穆道 阅读(147) 评论(0) 推荐(0) 编辑

组合注解与元注解

摘要: 从Spring2开始,为了响应JDK1.5推出的注解功能,Spring开始大量加入注解来替代xml配置。Spring的注解主要用来配置注入Bean,切面相关配置(@Transactional)。随着注解的大量使用,尤其相同的多个注解用到个各类中,会很繁琐。这就是所谓的末班代码,是Spring设计原则 阅读全文

posted @ 2018-05-30 19:08 穆道 阅读(166) 评论(0) 推荐(0) 编辑

条件注解@Conditional

摘要: 通过活动的profile,可以获得不同的Bean。Spring4提供了一个更通用的基于条件的Bean的创建,即使用@Conditonal注解 @Conditional根据满足某一个特定条件创建一个特定的Bean。 比如:当某一个jar包在一个类路径下的时候,自动配置一个或多个Bean;或者只有某个B 阅读全文

posted @ 2018-05-30 18:58 穆道 阅读(175) 评论(0) 推荐(0) 编辑

计划任务

摘要: 从Spring3.1开始,计划任务在Spring中的实现变得异常简单。 首先通过在配置类注解@EnableScheduling来开启对计划任务的支持 然后在要执行计划任务的方法上注解@Scheduled声明这是一计划任务 阅读全文

posted @ 2018-05-30 18:26 穆道 阅读(97) 评论(0) 推荐(0) 编辑

多线程

摘要: Spring通过任务执行器(TaskExecutor)来实现多线程和并发编程。使用ThreadPoolTaskExecutor可实现一个 基于线程池的TaskExecutor。而实际开发中任务一般是非阻碍的,即异步的,所以要在配置类中通过@EnableAsync开启对异步任务的支持,并通过在实际执行 阅读全文

posted @ 2018-05-30 18:24 穆道 阅读(83) 评论(0) 推荐(0) 编辑

Spring Aware

摘要: Spring的依赖注入的最大亮点就是所有的Bean对Spring容器的存在是没有意识的。即可以将容器替换成别的容器,如GoogleGuice,这时Bean之间的耦合度很低。 但是在实际项目中,不可避免地要用到Spring容器本身的功能资源,这时的Bean必须要意识到Spring容器的存在,才能调用S 阅读全文

posted @ 2018-05-30 18:19 穆道 阅读(153) 评论(0) 推荐(0) 编辑

事件(Application Event)

摘要: Spring的事件(Appllcation Event)为Bean与Bean之间的消息通信提供了支持。当一个Bean处理完一个任务后,希望另一个Bean知道并能做相应的处理,这种情况可以让另一个Bean监听当前Bean所发送的事件 Spring的事件需要遵循如下流程: 1、自定义事件,继承Appli 阅读全文

posted @ 2018-05-30 18:06 穆道 阅读(132) 评论(0) 推荐(0) 编辑

Spring 的AOP

摘要: AOP:面向切面编程,相对于OOP面向对象的编程 Spring的AOP的存在的目的是为了解耦。AOP可以让一组类共享相同的行为。在OOP中只能通过继承类和实现接口,来使代码的耦合度增强,且类继承只能为单继承,阻碍更多行为添加到一组类上,AOP弥补了OOP的不足。 Sping支持AspectJ的注解式 阅读全文

posted @ 2018-05-30 17:53 穆道 阅读(78) 评论(0) 推荐(0) 编辑

Java配置

摘要: Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置; Java配置同时也是SpringBoot的推荐配置方式 Java配置是通过@Configuration和@Bean来实现的 1、@Configuration声明当前类是一个配置类,相当于一个Spring配置的xml文件。 2、 阅读全文

posted @ 2018-05-30 17:46 穆道 阅读(98) 评论(0) 推荐(0) 编辑