自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

u010502101的博客

成长中的菜鸟程序员

  • 博客(31)
  • 资源 (4)
  • 收藏
  • 关注

原创 10.10、spring boot的web应用——定义错误页面(2)——通过实现ErrorPageRegistrar根据不同的错误类型显示网页

一、spring boot默认显示的错误下面首先演示下没有自定义显示错误信息的默认网页,在spring boot中已经定义好了。 1、首先定义controller层,用于响应请求package com.lzj.spring.boot.config;import org.springframework.web.bind.annotation.RequestMapping;import org.s

2017-12-27 22:05:34 5800

原创 10.10、spring boot的web应用——定义错误页面(1)——@ControllerAdvice注解用法

@ControllerAdvice注解标注的类,内部使用@ExceptionHandler、@InitBinder、@ModelAttribute注解的方法可以应用到所有的 @RequestMapping注解的方法上。不过看了下,大家都说只有当使用@ExceptionHandler用处最大。下面主要演示@ControllerAdvice注解标识的类中来定义错误的页面,下面介绍两种页面显示错误页面的方

2017-12-27 20:00:55 1610

原创 10.9、spring boot的web应用——拦截器的应用

拦截器会在controller层响应前端响应之前先拦截请求,对请求做处理,然后再由controller层进行响应,就是在前端和后台响应之间加了一次拦截请求。实现拦截器需要实现HandlerInterceptor接口,并且实现接口中的preHandle、postHandle和afterCompletion三个方法。当拦截器拦截到请求后, - preHandle:在controller层响应之前执行

2017-12-24 10:34:49 510

原创 10.8、spring boot的web应用——servlet、listener、filter的应用

一、servlet的应用 先用@WebServlet注解把对应的servlet类标识为某个请求响应的servlet,然后用@ServletComponentScan注解启动扫描servlet的范围。示例如下创建servlet类,响应请求package com.lzj.spring.servlet;import java.io.IOException;import javax.servlet.S

2017-12-23 18:55:50 334

原创 10.7、spring boot的web应用——访问静态资源

一、原理 之前创建web工程的时候,直接把静态资源,比如html文件、图片等放在src/main/webapp目录下,在浏览器中是直接可以访问到这些静态资源的。但是在创建spring boot工程中,默认是没有创建webapp目录的,如果要把静态资源放在webapp目录下,需要手动在src/main/目录下创建一个webapp目录,然后把静态资源放在该目录下就可以,此时从浏览器中是可以直接

2017-12-23 12:45:14 4093 3

原创 10.6、spring boot的web应用——@ModelAttribute应用

@ModelAttribute有三种用法: - 可以标注在方法上; - 可以标注在方法中的参数上; - 还可以和@RequestMapping一起标注在方法上; 三种方式各不一样,下面分别演示一、@ModelAttribute标注在方法上@ModelAttribute标注的方法会在Controller类的每个映射url的控制执行方法之前执行。 1、@ModelAttribute标注

2017-12-22 19:46:35 12068

原创 10.5、spring boot的web应用——更改服务器

spring boot中默认运行的是tomcat服务器,如果想更改成jetty服务器,可以在pom.xml文件中如下设置: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId>

2017-12-21 22:03:01 776

原创 10.4、spring boot的web应用——支持freemarker模板视图

目前,在spring boot中应用比较多的是freemarker模板,若想在spring boot的web中支持freemarker视图,需要在pom.xml中导入freemarker的依赖。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spr

2017-12-21 21:58:49 1739

原创 10.3、spring boot的web应用——支持jsp视图

一、spring boot默认是不支持响应和返回jsp视图的,若要spring boot支持jsp视图,需要设置下面两步:导入 tomcat-embed-jasper依赖需要在application.properties中配置jsp1、导入依赖 在pom.xml文件中导入jsp的依赖: <dependency> <groupId>org.apache.t

2017-12-21 21:03:37 557

原创 10.2、spring boot的web应用——@RestController的应用

通过@RestController的源码可知,@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Controller@ResponseBodypublic @interface RestController {}该注解包括了@Controller和@ResponseBody两个注解。而@Contr

2017-12-21 20:24:43 698

原创 10.1、spring boot在web中的应用——@ResponseBody的应用

Controller层为控制视图层,当网页端一个请求发送到后台时,后台的控制视图层通过@RequestMapping映射相应的视图方法,如果在视图方法上用注解@ResponseBody标识后,方法执行完后返回的内容会返回到请求页面的body上,直接显示在网页上。示例如下1、spring boot的启动类@SpringBootApplicationpublic class App { publ

2017-12-21 20:06:07 6874

原创 @Pointcut——切点表达式重用

关于切面的五种通知方法,这篇博客中已经介绍了,但是若几种切面方法用的切面表达式都是相同的情况下,此时没必要在每个切面通知方法上面标识重复的切面表达式,可以选择重用切面表达式。示例如下:LogProxy 为这篇博客中切面。下面通过重用切面表达式的方法重新定义了切面——使用 @Pointcut 来声明切入点表达式.。package lzj.com.spring.aop;import java.util

2017-12-18 23:04:54 6356

原创 切面优先级设置

前面博客中已经介绍切面的使用方法,但是都是介绍的只有一个切面类的情况,如果同时存在多个切面的话,多个切面之间的执行顺序如何设置呢?示例如下一、多个切面,无优先级设置首先建立一个目标接口ArithmeticCalculator:package lzj.com.spring.aop;public interface ArithmeticCalculator { int add(int i, in

2017-12-17 23:49:54 1875

原创 AspectJ 切面注解中五种通知注解:@Before、@After、@AfterReturning、@AfterThrowing、@Around

要在 Spring 中声明 AspectJ 切面, 只需要在 IOC 容器中将切面声明为 Bean 实例. 当在 Spring IOC 容器中初始化 AspectJ 切面之后, Spring IOC 容器就会为那些与 AspectJ 切面相匹配的 Bean 创建代理。 在切面类中需要定义切面方法用于响应响应的目标方法,切面方法即为通知方法,通知方法需要用注解标识,AspectJ 支持 5 种类型的

2017-12-16 23:52:27 157994 16

原创 AOP使用方法

一、AOP的概念1、什么是面向切面编程呢?听起来很抽象,举个例子:假设我们要执行一个核心交易,但是我想打印核心交易前和交易后的日志,最简单的办法就是在核心交易的程序的前面和后面分别加上打印日志的程序。是的,很正确,但是我如果有成千上个这样的程序都要打印日志呢?如果你在每个核心的程序里面都加上打印日志的程序,核心程序和非核心的程序相互交错,不利于程序的维护,费时费力。 So,此时我们的面向切面编程

2017-12-16 21:10:53 1872

原创 泛型依赖注入

定义父类时,使用泛型指定某种类型,并在父类中使用依赖注入,在子类继承父类后,在子类中指定具体的泛型的具体类型,并且子类会继承父类的依赖注入。如果父类依赖注入的是某个接口或父类,那么在子类继承父类的依赖注入后,会自动注入接口的实现类或父类的继承子类;如果父类依赖注入的是某个独立的类,那么子类继承父类的依赖注入后,也会注入这个独立类。下面示例演示1、创建两个父类BaseDao和BaseService,两

2017-12-16 16:54:20 914

原创 9、@SpringBootApplication用法

一、@SpringBootApplication注解一般放在项目的一个启动类上,用来把启动类注入到容器中,用来定义容器扫描的范围,用来加载classpath环境中一些bean。因为,从@SpringBootApplication的源码中可以看出,@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inh

2017-12-15 23:24:38 17495 2

原创 8、Spring boot中容器启动前后回调的方法

一、ApplicationContextInitializer接口是spring容器在执行refreshed之前的一个回调,回调ApplicationContextInitializer接口实现类中的initialize方法。容器加载时会先刷新容器,refreshed方法为容器的刷新方法,当刚加载容器的时候就会执行该方法。而在加载容器之前就会回调initialize方法。 使用步骤:写一个实现类

2017-12-15 21:35:35 8404

原创 7、监听器用法

在spring中可以创建监听器,用来监听事件。自定义的监听器要实现ApplicationListener接口,监听的事件要实现ApplicationEvent接口。主要流程包括:1、自定义事件,一般要继承ApplicationEvent2、自定义事件,一般要继承ApplicationEvent3、启动的时候要把事件监听器加入到容器中4、发布事件,要用ApplicationContext中的p

2017-12-13 21:37:57 656

转载 资源——关于Spring加载classpath与classpath*的过程剖析(五)

本篇文章是由朋友的一篇博客引出的,博客原文地址:http://jinnianshilongnian.iteye.com/blog/1416322    他这篇博客比较细的讲解了classpath与classpath*,以及通配符的使用,那些配置能成功加载到资源,那些配置加载不了资源。但是我相信仍然有很多同学不明白,为什么是这样的,知其然,不知其所以然,那么本篇文章将慢慢为你揭开神秘的面纱,

2017-12-13 20:02:53 624

转载 资源Resource通配符路径(四)

4.4.1  使用路径通配符加载Resource       前面介绍的资源路径都是非常简单的一个路径匹配一个资源,Spring还提供了一种更强大的Ant模式通配符匹配,从能一个路径匹配一批资源。        Ant路径通配符支持“?”、“*”、“**”,注意通配符匹配不包括目录分隔符“/”:          “?”:匹配一个字符,如“config?.x

2017-12-13 19:59:06 3188

转载 资源之访问Resource(三)

4.3.1  ResourceLoader接口       ResourceLoader接口用于返回Resource对象;其实现可以看作是一个生产Resource的工厂类。 java代码:查看复制到剪贴板打印public interface ResourceLoader {         Resource getResource(Str

2017-12-13 19:57:46 935

转载 资源之内置Resource实现(二)

4.2  内置Resource实现4.2.1  ByteArrayResource       ByteArrayResource代表byte[]数组资源,对于“getInputStream”操作将返回一个ByteArrayInputStream。首先让我们看下使用ByteArrayResource如何处理byte数组资源: java代码:查

2017-12-13 19:55:41 776

转载 资源之基础知识(一)

4.1.1  概述       在日常程序开发中,处理外部资源是很繁琐的事情,我们可能需要处理URL资源、File资源资源、ClassPath相关资源、服务器相关资源(JBoss AS 5.x上的VFS资源)等等很多资源。因此处理这些资源需要使用不同的接口,这就增加了我们系统的复杂性;而且处理这些资源步骤都是类似的(打开资源、读取资源、关闭资源),因此如果能抽象出一个统一的接口来对这些底层

2017-12-13 19:52:35 229

原创 6、@Import注解——导入资源

在应用中,有时没有把某个类注入到IOC容器中,但在运用的时候需要获取该类对应的bean,此时就需要用到@Import注解。示例如下: 先创建两个类,不用注解注入到IOC容器中,在应用的时候在导入到当前容器中。 1、创建Dog和Cat类 Dog类:package com.example.demo;public class Dog {}Cat类:package com.example.demo;p

2017-12-09 16:38:20 8300 2

原创 5、@Async注解配合@EnableAsync注解使用

@Async为异步注解,放到方法上,表示调用该方法的线程与此方法异步执行,需要配合@EnableAsync注解使用。下面通过示例演示一、没有@Async注解,没有异步执行时1、创建一个普通类CountNumber,并注入到IOC容器中package com.example.demo;import org.springframework.scheduling.annotation.Async;im

2017-12-09 16:08:42 19841 2

原创 4、@ConfigurationProperties和@EnableConfigurationProperties配合使用

@ConfigurationProperties注解主要用来把properties配置文件转化为bean来使用的,而@EnableConfigurationProperties注解的作用是@ConfigurationProperties注解生效。如果只配置@ConfigurationProperties注解,在IOC容器中是获取不到properties配置文件转化的bean的。使用如下:1、spri

2017-12-09 12:10:57 44760 10

原创 3、条件加载Bean——@Conditional

一、当用getBeansOfType从IOC容器中获取某种类型的bean时,若IOC容器中同时存在多于一个,则会把所有满足条件的bean都找出来。如下实例:创建一个接口EncodingConvert,创建该接口的两个实现类GBKEncodingConvert和UTF8EncodingConvert,并把两个实现类注入到IOC容器中,当从IOC容器中获取EncodingConvert类型的bean时,

2017-12-03 22:34:01 4053 4

原创 2、获取配置文件中的属性

spring boot的工程启动的时候,内部文件默认是加载classpath路径或者classpath:/config目录下的application.properties文件的。当然也可以指定加载其它的配置文件,如何获取配置文件中的属性呢?实例如下:【1】、获取默认classpath下的application.properties配置文件中的属性application.properti

2017-12-03 15:58:44 2240

原创 1、spring boot之Hello world

1、首先建一个spring工程,选择maven管理,生成pom.xml文件如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLoc

2017-12-02 15:01:32 332

原创 @Autowired 用法

在spring的配置文件中,如果 标签,则在代码应用中,可以自动装配具有 @Autowired 和 @Resource 、@Inject注解的属性。因为元素自动注册了AutowiredAnnotationBeanPostProcessor 实例,该实例可以自动装配@Autowired 和 @Resource 、@Inject注解的属性。@Autowired 和 @Resource 、@Inject实

2017-12-01 21:48:14 2826

helm-tiller.tar

由于谷歌被强,无法下载谷歌镜像,特此提供Helm的服务器端Tiller的镜像,该镜像可以在k8s中用于创建pod

2020-11-19

kubeadm-basic.images.tar.gz

安装kubeadm时,需要登录到google才能下载google镜像,由于国内不能登录google,所以上传google的镜像

2020-06-10

android入门教程

对于没了解过android开发的同学非常适合。

2015-10-04

STC的详细介绍

该文档400多页,全面细致的介绍了STC单片机,是新手学习的好资料,也是技术人员备用查阅的好资料。档

2013-10-07

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除