随笔分类 -  Spring

摘要:在生产环境下,日志是最好的问题调试和跟踪方法,因此日志的地位是十分重要的。我们平时经常使用的log4j,slf4j,logback等等,他们的配置上大同小异。这里就结合Spring Boot配置一下Logback的日志。 默认最简单的配置 默认情况下,如果对日志没有特殊处理,可以直接基于applic 阅读全文
posted @ 2017-08-30 16:46 xingoo 阅读(9245) 评论(0) 推荐(1) 编辑
摘要:先想一下,正常我们想要创建一个web服务,首先需要下载tomcat,创建web工程,配置各种web.xml,引入spring的配置,各种配置文件一顿倒腾.....下载有了spring boot,你创建一个web工程只需要一个java类,甚至都不需要下载tomcat,直接右键执行就能启动一个web服务 阅读全文
posted @ 2017-07-22 00:02 xingoo 阅读(9408) 评论(1) 推荐(3) 编辑
摘要:在Spring MVC中,常见的应用场景就是给请求的Url绑定参数。本篇就介绍两种最最基本的绑定参数的方式: 基于 这种方法一般用于在URL后使用 添加参数,比如: 如果这个参数可以省略: 还可以为参数配置默认值: 基于 这种方式则是把参数放在url请求路径中,根据特定的位置会绑定到参数上: 其他参 阅读全文
posted @ 2016-03-14 21:55 xingoo 阅读(1904) 评论(0) 推荐(0) 编辑
摘要:在Restful风格的web开发中,根据不同的请求方法使用相应的控制器处理逻辑成为核心需求,下面就看看如何在Spring MVC中识别不同的请求方法。 请求方法 在Http中,请求的方法有很多种,最常见的就是GET、POST,他们的差异就不过多赘述了。由于Restful概念的兴起,即使用Url的不同 阅读全文
posted @ 2016-03-13 17:54 xingoo 阅读(13957) 评论(0) 推荐(1) 编辑
摘要:好几天没有跟进Spring MVC的学习了,之前看了点源码都忘的差不多了。这次就跟着之前的问题,继续总结下Spring MVC中的小知识。 关于SpringMVC的小demo可以 "参考这里" ! url pattern 如果看过前一篇入门的帖子,应该了解到spring mvc在启动前必须要在web 阅读全文
posted @ 2016-03-10 22:08 xingoo 阅读(31995) 评论(0) 推荐(0) 编辑
摘要:为什么需要Spring MVC 最开始接触网页的时候,是纯的html/css页面,那个时候还是用Dreamweaver来绘制页面。 随着网站开发的深入,开始学习servlet开发,记得最痛苦的就是servlet返回网页的内容是字符串拼接的html页面,整不好就无法显示.... 再到后来开学学习SSH 阅读全文
posted @ 2016-03-03 20:55 xingoo 阅读(49809) 评论(11) 推荐(7) 编辑
摘要:前面讲解了基于JDBC驱动的Spring的持久化管理,本篇开始则着重介绍下与事务相关的操作。 通过本文你可以了解到: 1 Spring 事务管理的机制 2 基于JDBC持久化的事务管理 Spring的事务管理的机制 Spring本身并不提供事务管理,它只是把事务管理提交给事务管理器,而事务管理器则有 阅读全文
posted @ 2015-02-04 15:11 xingoo 阅读(2152) 评论(4) 推荐(0) 编辑
摘要:前一篇通过对传统的JDBC的使用操作,可以体会到使用的繁琐与复杂,套句话说,是用了20%作了真正的工作,80%作了重复的工作。那么通过本篇,可以了解如下的内容:1 如何配置数据源2 如何在spring中使用模板3 如何建立数据源的统一的基类 首先看一下如何配置数据源 我们可以使用3种方式配置... 阅读全文
posted @ 2015-02-03 14:00 xingoo 阅读(3676) 评论(1) 推荐(1) 编辑
摘要:从这篇开始学习Spring的JDBC,为了了解Spring对于JDBC的作用,先通过JDBC传统的流程,实现一个数据库的插入和读取。 从这篇你可以了解到: 1 传统的JDBC插入和读取的过程。 2 如何通过JDBC连接Mysql 如何通过JDBC连接mysql 首先看一下下面这张图: 应... 阅读全文
posted @ 2015-02-03 12:26 xingoo 阅读(3108) 评论(0) 推荐(0) 编辑
摘要:前面了解了典型的AOP基于配置的使用方法,下面介绍下如何依赖于注解来实现AOP。基于注解降低了配置文件的复杂程度,但是引入了程序间的耦合,其中的优劣待用户自己判断了。需要注意的是,确定AspectJ与JDK之间的版本,否则会报错,详情请见。 首先看一下基于注解的切面类,这时的切面不仅仅是一个POJ... 阅读全文
posted @ 2015-02-02 13:46 xingoo 阅读(5856) 评论(1) 推荐(4) 编辑
摘要:今天在使用AspectJ进行注解切面时,遇到了一个错误。切点表达式就是无法识别——详细报错信息如下:Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating b... 阅读全文
posted @ 2015-02-02 13:30 xingoo 阅读(19138) 评论(6) 推荐(3) 编辑
摘要:如果有这样一个需求,为一个已知的API添加一个新的功能。由于是已知的API,我们不能修改其类,只能通过外部包装。但是如果通过之前的AOP前置或后置通知,又不太合理,最简单的办法就是实现某个我们自定义的接口,这个接口包含了想要添加的方法。但是JAVA不是一门动态的语言,无法再编译后动态添加新的功能,这... 阅读全文
posted @ 2015-02-01 16:55 xingoo 阅读(3690) 评论(0) 推荐(1) 编辑
摘要:通过前面的学习,可以了解到 Spring的AOP可以很方便的监控到方法级别的执行 ,针对于某个方法实现通知响应。 那么对于方法的参数如何呢? 比如我们有一个方法,每次传入了一个字符串,我想要知道每次传入的这个字符串是神马?这又如何办到呢! 举个Action上面的例子,一个思考者(thinker),每 阅读全文
posted @ 2015-02-01 15:52 xingoo 阅读(5029) 评论(1) 推荐(0) 编辑
摘要:假如有这么一个场景,需要统计某个方法执行的时间,如何做呢? 典型的会想到在方法执行前记录时间,方法执行后再次记录,得出运行的时间。如果采用Spring的AOP,仅仅使用前置和后置方法是无法做到的,因为他们无法共享变量。这样通过环绕通知,就可以快捷的实现。 首先在切面通知类中声明环绕通知类: ... 阅读全文
posted @ 2015-02-01 14:49 xingoo 阅读(8021) 评论(5) 推荐(0) 编辑
摘要:前面几篇学习了Spring的依赖注入,这篇开始学习另一个核心功能——面向切面编程AOP。 通过本文,你可以了解到: 1 Spring xml规范 2 通过配置文件实现面向切面编程 3 对比与传统AOP编程 Spring的xml文件 Spring的xml一般起名叫做bean.xml或者xxxappli 阅读全文
posted @ 2015-01-31 17:03 xingoo 阅读(32992) 评论(2) 推荐(6) 编辑
摘要:在使用Spring AOP时,遇到如下的错误:Exception in thread "main" java.lang.ClassCastException: com.sun.proxy.$Proxy0 cannot be cast to com.spring.test.setter.Instrum... 阅读全文
posted @ 2015-01-31 15:23 xingoo 阅读(31037) 评论(4) 推荐(4) 编辑
摘要:本篇介绍一下自动装配的知识,Spring为了简化配置文件的编写。采用自动装配方式,自动的装载需要的bean。 自动装配有以下几种方式: 1 byName 通过id的名字与属性的名字进行判断,要保证Bean实例中属性名字与该装配的id名字相同。 2 byType 通过类型确定装配的bean,但是... 阅读全文
posted @ 2015-01-26 15:42 xingoo 阅读(2063) 评论(1) 推荐(1) 编辑
摘要:之前讲解了Spring的基本类型和bean引用的注入,接下来学习一下复杂集合类型的注入,例如:List、Set、Map等。 对于程序员来说,掌握多种语言是基本的技能。 我们这里做了一个小例子,程序员们是一个Bean实例,而掌握的编程语言则是放入一个集合类型中进行注入。 简单的来说: List... 阅读全文
posted @ 2015-01-25 21:50 xingoo 阅读(4593) 评论(1) 推荐(0) 编辑
摘要:本篇文章讲解了Spring的通过内部Bean设置Bean的属性。 类似内部类,内部Bean与普通的Bean关联不同的是: 1 普通的Bean,在其他的Bean实例引用时,都引用同一个实例。 2 内部Bean,每次引用时都是新创建的实例。 鉴于上述的场景,内部Bean是一个很常用的编程模式。 ... 阅读全文
posted @ 2015-01-25 19:15 xingoo 阅读(2299) 评论(0) 推荐(1) 编辑
摘要:本篇主要讲解了Spring的最常用的功能——依赖注入。注入的方式,是使用Getter Setter注入,平时大多的编程也都是使用这种方法。 举个简单的例子,还是表演者。 表演者有自己的属性,年龄或者表演的歌曲等等。还需要一些复杂的属性,比如乐器,每一种乐器会发出不同的声音。 下面看一下表演者P... 阅读全文
posted @ 2015-01-25 16:42 xingoo 阅读(4745) 评论(6) 推荐(2) 编辑