Spring-SpringMVC
梦里梦见醒不来丶
未来可期
展开
-
Spring IOC与AOP详解
前言 搜狐畅游笔试题中有一道问答题涉及到回答谈谈对spring IOC与AOP的理解。特将相关内容进行整理。 IOC和AOP是Spring中的两个核心的概念,下面谈谈对这两个概念的理解。 1. IOC(Inverse of Control):控制反转,也可以称为依赖倒置。 所谓依赖,从程序的角度看,就是比如A要调用B的方法,那么A就依赖于B,反正A要用到B,则A依赖于B。所谓倒置,你必须转载 2017-06-05 10:55:42 · 658 阅读 · 0 评论 -
Spring配置文件加载外部配置文件
有时,应用程序可能需要从不同的位置(例如:文件系统、classpath或者URL)读取外部资源(例如:文本文件、xml文件、属性文件或或者图像文件)。通常,为了从不同位置加载资源,需要和不同的API打交道。Spring的资源加载器提供了一个统一的getResource()方法,使用这个方法可以通过资源路径获取外部资源。可以给路径指定不同的前缀以从不同位置加载资源。要从文件系统加载资源,可以使用fil原创 2017-06-22 18:06:46 · 2385 阅读 · 0 评论 -
Spring:源码解读IOC原理
Spring IOC设计原理解析:本文乃学习整理参考而来一、 什么是Ioc/DI? 二、 Spring IOC体系结构 (1) BeanFactory (2) BeanDefinition 三、 IoC容器的初始化 1、 XmlBeanFactory(屌丝IOC)的整个流程 2、 FileSystemXmlApplicationContext 的IOC容器流程 1、高富帅IOC解剖转载 2017-07-16 14:31:08 · 756 阅读 · 0 评论 -
Spring AOP 实现原理
什么是AOPAOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-Oriented Programing,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合。当我们需要为分散的对象引入公共行为的时候,OOP则显得无能为力。也就是说,OOP允许你定义从上到下的关系,但并不适合定义从左到转载 2017-07-16 14:32:41 · 261 阅读 · 0 评论 -
Spring实现AOP的4种方式
Spring实现AOP的4种方式 先了解AOP的相关术语:1.通知(Advice):通知定义了切面是什么以及何时使用。描述了切面要完成的工作和何时需要执行这个工作。2.连接点(Joinpoint):程序能够应用通知的一个“时机”,这些“时机”就是连接点,例如方法被调用时、异常被抛出时等等。3.切入点(Pointcut)通知定义了切面要发生的“故事”和时间,那么切入点就定义了“故事”发生的地点,转载 2017-07-16 15:28:46 · 271 阅读 · 0 评论 -
SpringMVC 的 Controller 返回各种视图的处理方式
SpringMVC 的 Controller 可以返回各种各样的视图。比如 JSP, JSON, Velocity, FreeMarker, XML, PDF, Excel, 还有Html字符流 等等。那它们该如何的进行处理的呢?这里就涉及到 各种视图(View)对应的各种视图解析器(ViewResolver). 基本上上面说的每一种视图就对应用一种视图解析器来处理。基本上各种视图解析器大致上可以分转载 2017-08-04 14:38:41 · 599 阅读 · 0 评论 -
Struts2常用标签
Struts2常用标签总结 一 介绍 1.Struts2的作用 Struts2标签库提供了主题、模板支持,极大地简化了视图页面的编写,而且,struts2的主题、模板都提供了很好的扩展性。实现了更好的代码复用。Struts2允许在页面中使用自定义组件,这完全能满足项目中页面显示复杂,多变的需求。 Struts2的标签库有一个巨大的改进之处,struts2标签库的标签不依赖于任何表现层转载 2017-07-29 11:30:29 · 426 阅读 · 0 评论 -
SpringMVC返回值类型
spring mvc 支持如下的返回方式:ModelAndView, Model, ModelMap, Map,View, String, void。 ModelAndView@RequestMapping("/hello") public ModelAndView helloWorld() { String message = "Hello World, Spring原创 2017-08-30 15:41:39 · 247 阅读 · 0 评论 -
spring事物配置,声明式事务管理和基于@Transactional注解的使用
事物管理对于企业应用来说是至关重要的,好使出现异常情况,它也可以保证数据的一致性。spring支持编程式事务管理和声明式事务管理两种方式。 编程式事务管理使用TransactionTemplate或者直接使用底层的PlatformTransactionManager。对于编程式事务管理,spring推荐使用TransactionTemplate。 声明式事务管理建立在AOP之上的。其本质转载 2017-11-16 16:58:52 · 244 阅读 · 1 评论 -
Spring事务管理
Spring是SSH中的管理员,负责管理其它框架,协调各个部分的工作。今天一起学习一下Spring的事务管理。Spring的事务管理分为声明式跟编程式。声明式就是在Spring的配置文件中进行相关配置;编程式就是用注解的方式写到代码里。下面先说声明式:Spring配置文件中关于事务配置总是由三个组成部分,分别是DataSource、TransactionManager和代理机制这三部分,无论哪种配转载 2017-06-01 15:34:28 · 235 阅读 · 0 评论 -
Struts2 遍历和判断标签:<s:iterator>、<s:if>、<s:elseif>和<s:else>
:js中使用 function setData(option) { <s:iterator value="page.objectLists" var="obj" status="status"> var myChart = echarts.init(document.getElementById('div_'+<s:property value="#status.count"原创 2018-01-03 09:03:19 · 1019 阅读 · 0 评论 -
Spring 基于注解方式进行事务管理
使用步骤:步骤一、在spring配置文件中引入<tx:>命名空间<beans xmlns=”http://www.springframework.org/schema/beans” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns:tx=”http://www.springf...原创 2018-02-25 09:47:44 · 317 阅读 · 0 评论 -
@ControllerAdvice + @ExceptionHandler 全局异常处理
1、 定义异常类//这里只传一个参 可以自己扩展public class BusinessException extends RuntimeException { private static final long serialVersionUID = 3416547891266313424L; private String message; public ...原创 2018-04-18 16:28:31 · 418 阅读 · 0 评论 -
SpringMVC快速入门、深入分析
资源下载:Spring_MVC_教程_快速入门_深入分析V1.1.pdfSpringMVC核心配置文件示例.rar 目录 一、前言二、spring mvc 核心类与接口三、spring mvc 核心流程图四、spring mvc DispatcherServlet说明五、spring mvc 父子上下文的说明六、springMVC-mvc.xml 配置文件片段讲解 七、spring mv转载 2017-06-19 15:56:16 · 600 阅读 · 0 评论 -
对Spring非侵入式的理解
假设大家都想要把用户代码塞到一个框架里。侵入式的做法就是要求用户代码“知道”框架的代码,表现为用户代码需要继承框架提供的类。非侵入式则不需要用户代码引入框架代码的信息,从类的编写者角度来看,察觉不到框架的存在。 例如: 1)使用struts的时候,我需要继承一些struts的类,这时struts侵入到了我的代码里。 2)使用spring,编写一些业务类的时候不需要继承spring特定的类,通过原创 2017-06-19 15:22:02 · 6010 阅读 · 4 评论 -
spring是如何控制事务的?
Spring 的事务,可以说是 Spring AOP 的一种实现。AOP面向切面编程,即在不修改源代码的情况下,对原有功能进行扩展,通过代理类来对具体类进行操作。 spring是一个容器,通过spring这个容器来对对象进行管理,根据配置文件来实现spring对对象的管理。spring的事务声明有两种方式,编程式和声明式。spring主要是通过“声明式事务”的方式对事务进行管理,即在配置文件中进行声原创 2017-06-01 15:05:43 · 3211 阅读 · 0 评论 -
SpringMVC与Struts2区别与比较总结
1、Struts2是类级别的拦截, 一个类对应一个request上下文,SpringMVC是方法级别的拦截,一个方法对应一个request上下文,而方法同时又跟一个url对应,所以说从架构本身上SpringMVC就容易实现restful url,而struts2的架构实现起来要费劲,因为Struts2中Action的一个方法可以对应一个url,而其类属性却被所有方法共享,这也就无法用注解或其他方式标转载 2017-06-01 14:36:24 · 342 阅读 · 0 评论 -
Spring MVC之@RequestMapping 详解
引言:前段时间项目中用到了REST风格来开发程序,但是当用POST、PUT模式提交数据时,发现服务器端接受不到提交的数据(服务器端参数绑定没有加任何注解),查看了提交方式为application/json, 而且服务器端通过request.getReader() 打出的数据里确实存在浏览器提交的数据。为了找出原因,便对参数绑定(@RequestParam、 @RequestBody、 @Reque转载 2017-05-22 16:23:43 · 365 阅读 · 0 评论 -
@Resource和@Autowired的作用和区别
这两个注解都是用来装配Bean的,下面就略微的讲一讲这两者@Resource的装配顺序1、@Resource后面没有任何内容,默认通过name属性去匹配bean,找不到再按type去匹配2、指定了name或者type则根据指定的类型去匹配bean3、指定了name和type则根据指定的name和type去匹配bean,任何一个不匹配都将报错区分一下@Autowired和@Resource两个注解的区原创 2017-05-19 09:45:09 · 901 阅读 · 0 评论 -
@Autowired与@Resource的区别
1、@Autowired与@Resource都可以用来装配bean. 都可以写在字段上,或写在setter方法上。 2、@Autowired默认按类型装配(这个注解是属业spring的),默认情况下必须要求依赖对象必须存在,如果要允许null 值,可以设置它的required属性为false,如:@Autowired(required=false) ,如果我们想使用名称装配可以结合@Qualif原创 2017-05-17 20:56:17 · 213 阅读 · 0 评论 -
Java过滤器与SpringMVC拦截器之间的关系与区别
今天学习和认识了一下,过滤器和SpringMVC的拦截器的区别,学到了不少的东西,以前一直以为拦截器就是过滤器实现的,现在想想还真是一种错误啊,而且看的比较粗浅,没有一个全局而又细致的认识,由于已至深夜,时间原因,我就把一些网友的观点重点摘录下来,大家仔细看后也一定会有一个比较新的认识(在此非常感谢那些大牛们的无私奉献,分享他们的经验与心得,才能让像我这样的小白有机会站一下你们这些巨人的肩膀,才能少转载 2017-05-17 20:54:50 · 191 阅读 · 0 评论 -
SpringMVC 常用的注解详解
1、@Controller在SpringMVC 中,控制器Controller 负责处理由DispatcherServlet 分发的请求,它把用户请求的数据经过业务处理层处理之后封装成一个Model ,然后再把该Model 返回给对应的View 进行展示。在SpringMVC 中提供了一个非常简便的定义Controller 的方法,你无需继承特定的类或实现特定的接口,只需使用@Controller转载 2017-05-17 15:44:45 · 588 阅读 · 0 评论 -
Spring注解@Component、@Repository、@Service、@Controller区别
很长时间没做web项目都把以前学的那点框架知识忘光了,今天把以前做的一个项目翻出来看一下发现用·@Component标记一个组件,而网上有的用@Service标记组件,我晕就查了一下资料:spring 2.5 中除了提供 @Component 注释外,还定义了几个拥有特殊语义的注释,它们分别是:@Repository、@Service 和 @Controller。在目前的 Spring 版本中,转载 2017-04-25 19:57:29 · 503 阅读 · 0 评论 -
Spring、SpringMVC、MyBatis、freeMaker框架下之Excel文件导入
相比Excel导出,导入略为麻烦点,没关系,认真看代码就好1.页面:<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html原创 2017-04-01 18:17:20 · 965 阅读 · 0 评论 -
Spring、SpringMVC、MyBatis、freeMaker框架下之Excel文件导出
1.页面 <div class="black3"> <div class="black3_lef"> <form> <button class="but01" onclick="exp();" type="button">EXCEL导出</button> </form> </di原创 2017-04-01 18:05:15 · 1028 阅读 · 0 评论 -
Spring+SpringMVC+MyBatis环境下前端找不到请求url
今天博主突然遇到这个问题,仔细从页面到controller层看了一遍,发居然是servlet里面ben的id冲突了,在项目里面这个映射id是唯一的原创 2017-03-29 13:13:49 · 1165 阅读 · 0 评论 -
Spring和SpringMVC的区别和比较
spring 是一个开源框架,是为了解决企业应用程序开发,功能如下◆目的:解决企业应用开发的复杂性◆功能:使用基本的JavaBean代替EJB,并提供了更多的企业应用功能◆范围:任何Java应用简单来说,Spring是一个轻量级的控制反转(IoC)和面向切面(AOP)的容器框架。◆轻量——从大小与开销两方面而言Spring都是轻量的。完整的Spring框架可以在一个大小只有1MB多的JAR文件里发布原创 2017-03-22 14:48:14 · 1685 阅读 · 0 评论 -
SpringMVC的拦截器(Interceptor)和过滤器(Filter)详解
一 简介(1)过滤器:依赖于servlet容器。在实现上基于函数回调,可以对几乎所有请求进行过滤,但是缺点是一个过滤器实例只能在容器初始化时调用一次。使用过滤器的目的是用来做一些过滤操作,获取我们想要获取的数据,比如:在过滤器中修改字符编码;在过滤器中修改HttpServletRequest的一些参数,包括:过滤低俗文字、危险字符等关于过滤器的一些用法可以参考我写过的这些文章:继承HttpServl转载 2017-06-01 11:54:48 · 4346 阅读 · 0 评论 -
Spring五个事务隔离级别和七个事务传播行为
来源:https://yq.aliyun.com/articles/48893 Spring五个事务隔离级别和七个事务传播行为1. 脏读 :脏读就是指当一个事务正在访问数据,并且对数据进行了修改,而这种修改还没有提交到数据库中,这时,另外一个事务也访问这个数据,然后使用了这个数据。2. 不可重复读 :是指在一个事务内,多次读同一数据。在这个...转载 2018-10-26 10:47:20 · 165 阅读 · 0 评论