spring实战
文章平均质量分 66
楠瓜酥
这个作者很懒,什么都没留下…
展开
-
Bean的作用域
在默认情况下,Spring应用上下文中所有的bean都是作为以单例的形式创建的。也就是说,不管给定的一个bean被注入到其他bean多少次,每次所注入的都是同一个实例。Spring中定义了多种作用域,包括: 1、单例(Singleton):在整个应用中,只创建bean的一个实例. 2、原型(Prototype):每次注入或者通过Spring应用上下文获取的时候,都会创建一个新的bean实例原创 2017-07-30 10:23:40 · 348 阅读 · 0 评论 -
springMVC--配置数据源
需要导入的jar包: <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>6.0.6</version> </dependency> <dependency> <groupId>org.apache.原创 2017-09-24 14:33:22 · 342 阅读 · 0 评论 -
一个简单的SpringMVC实例
一、web.xml中配置context-param> param-name>contextConfigLocationparam-name> param-value> classpath:myspiter.xml param-value> context-param> listener> listener-class>org.spring原创 2017-08-30 19:41:01 · 232 阅读 · 0 评论 -
SpringMVC--数据转换、格式化和校验
Spring MVC通过反射机制对目标处理方法的签名进行分析,将请求消息绑定到处理方法的入参中。数据绑定的核心部件是DataBinder,运行机制如下: 1、SpringMVC主框架将ServletRequest对象及处理方法的入参对象实例传递给DataBinder。 2、DataBinder调用ConversionService组件进行数据类型转换、数据格式化等操作,将ServletReq原创 2017-09-09 16:03:27 · 398 阅读 · 0 评论 -
SpringMVC视图、表单
1、视图对象 不同类型的视图实现技术对应不同的View实现类,视图对象由视图解析器负责实例化,因为视图Bean是无状态的,所以不会有线程安全的问题。 2、视图解析器 视图解析器将一个逻辑视图名解析为一个具体的视图对象。 可以选择一种视图解析器或混用多种视图解析器,可以通过orderNo属性指定解析器的优先顺序,值越小优先级越高。其中ContentNegotiatingViewResolv原创 2017-09-09 16:58:31 · 228 阅读 · 0 评论 -
Springmvc--上传文件
SpringMVC为文件上传提供了直接支持,通过MultipartResolver实现。默认没有装配MultipartResolver,需要先在上下文中配置MultipartResolver。1、需要的jar包<dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId>原创 2017-09-10 11:01:01 · 212 阅读 · 0 评论 -
SpringMVC--注解驱动的控制器
使用基于注解的控制器类,在POJO类定义处标注@Controller,再通过<\context:component-scan/>扫描相应的类包,即可使POJO成为一个能处理HTTP请求的控制器。DispatcherServlet所提供的默认DefaultAnnotationHandlerMapping就可以满足需求。它将请求映射到使用@RequestMapping注解的方法。1、@RequestMa原创 2017-08-29 20:54:49 · 283 阅读 · 0 评论 -
SpringMVC信息转换---HttpMessageConverter(一)
HttpMessageConverter<\T>是Spring的一个重要接口,负责将请求信息转换为一个对象(类型是T),将对象(类型T)输出为响应信息。DispatcherServlet默认已经安装了RequestMappingHandlerAdapter作为HandlerAdapter的组件实现类:#Spring 2.5中//处理器适配器(3个)org.springframework.web.s原创 2017-09-02 16:23:40 · 1279 阅读 · 0 评论 -
SpringMVC信息转换--处理XML和JSON
SpringMVC提供了几个处理XML和JSON格式的请求/响应信息的HttpMessageConverter: 只要在Spring WEB容器中为RequestMappingHandlerAdapter装配好相应的处理XML和JSON格式的请求/响应消息的HttpMessageConverter,并在交互中通过请求的Accept指定MIME类型,SpringMVC就可以使用服务器端的处理方原创 2017-09-03 12:57:48 · 388 阅读 · 0 评论 -
SpringMVC--处理模型数据
SpringMVC提供了多种途径输出模型数据:1、ModelAndView 控制器处理方法的返回值如果是ModelAndView,则其既包含视图信息,又包含模型数据信息,SpringMVC可以使用视图对模型数据进行渲染。 @RequestMapping(method = RequestMethod.POST) public ModelAndView createUser(User user原创 2017-09-03 16:22:44 · 303 阅读 · 0 评论 -
Spring MVC---DispatcherServlet配置
spring MVC的整体架构 和大多数Web MVC框架一样,Spring MVC通过一个前端Servlet接受所有的请求,并将具体工作委托给其他组件进行处理,DispatcherServlet就是Spring MVC的前端Servlet。在整个框架中,DispatcherServlet处于核心的位置,它负责协调和组织不同的组件以完成请求处理并返回响应的工作。DispatcherServle原创 2017-08-26 15:02:55 · 1401 阅读 · 0 评论 -
在XML中配置AOP
在Spring的aop命名空间中,提供了多个元素用来在XML中声明切面: 在XML文件中配置aop命名空间:<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http原创 2017-08-12 15:19:55 · 1943 阅读 · 1 评论 -
动态注入属性值(一)
一、在javaConfig中利用Environment注入属性值 1、普通的Student类public class Student { private int age; private String name; public Student(int age,String name){ this.age=age; this.name=name;原创 2017-07-30 15:22:19 · 1279 阅读 · 0 评论 -
自动装配(XML和注解)
Spring提供四种自动装配策略(针对XML配置):1、byName :把与bean的属性具有相同名字(或者ID)的其他Bean自动装配到Bean的对应属性中。如果没有跟属性的名字相匹配的Bean,则该属性不进行装配。2、byType :把与Bean的属性具有相同类型的其他Bean自动装配到Bean对应属性中,如果没有跟属性的类型相匹配的Bean,则该属性不被装配。3、constructor :把与原创 2017-07-29 16:05:16 · 1339 阅读 · 0 评论 -
SpEL表达式
Spring表达式语言(SpEL)能够以一种强大和简洁的方式将值装配到bean属性和构造器参数中,在这个过程中所使用的表达式会在运行时计算得到。(之前的属性占位符需要在属性文件中硬编码)SpEL表达式要放到 “#{…}”中。属性占位符要放到 “${…}”中。1、字面值public class Student { //也不需要setter方法 //可以注入整形、字符型、boolean原创 2017-07-30 16:55:48 · 388 阅读 · 0 评论 -
使用注解自动化装配Bean
Spring从两个角度来实现自动化装配: 1、组件扫描(component scanning):Spring会自动发现应用上下文中所创建的bean。让Spring能够自动识别哪些类需要被配置成Bean,从而减少对<\bean>元素的使用。 2、自动装配(autowiring):Spring自动满足bean之间的依赖。1、组件扫描 组件扫描默认是不启用的,如果使用XML来启用组件扫描的话,需要在原创 2017-07-22 15:40:56 · 319 阅读 · 0 评论 -
通过XML装配bean(一)
在使用JavaConfig的时候,要创建一个带有@Configuration注解的类;而在XML配置中,意味着要创建一个XML文件,并且要以<\beans>元素为根。在这个根元素中可以声明多个<\bean>:<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"原创 2017-07-23 15:20:04 · 334 阅读 · 0 评论 -
通过Java代码装配bean
通过组件扫描和自动装配实现Spring的自动化配置是更为推荐的方式,但有时候自动化配置的方案行不通,因此需要明确配置Spring。在进行显式配置时,通过Java代码装配bean是更好的方案,因为它更强大,类型安全并且重构。JavaConfig是配置代码,意味着它不应包含任何业务逻辑,也不该侵入到业务逻辑代码中。通常将JavaConfig放到单独的包中,使它与其他的应用程序逻辑分离。一、原创 2017-07-23 09:48:20 · 751 阅读 · 0 评论 -
通过XML装配Bean(二)
Spring可以借助属性的set方法来配置属性的值,以实现setter方式的注入。在Spring中我们可以使用<\property>元素配置Bean的属性。<\property>元素为属性的Setting方法所提供的功能与<\constructor-arg>元素为构造器所提供的功能是一样的。只不过一个是通过构造参数来注入值,另一个是通过调用属性的setter方法来注入值。一、注入字面量值 首先使用原创 2017-07-29 11:16:29 · 225 阅读 · 0 评论 -
利用注解配置切面
利用注解定义切面,必要配置自动代理功能 1、在XML中配置<aop:aspectj-autoproxy/>2、如果是在JavaConfig中,配置@Configuration@EnableAspectJAutoProxy@ComponentScanpublic class ConcerConfig{}一、在POJO中定义前置和后置通知@Aspect //定义切面@Component原创 2017-08-12 16:25:52 · 811 阅读 · 0 评论 -
面向切面编程(AOP)
使用面向切面编程时,仍然在一个地方定义通用的功能,但是可以通过声明或注解的方式定义这个功能以何种方式在何处应用,而无需修改受影响的类。散布于应用中多处的功能被称为横切关注点。这些横切关注点从概念上是与应用的业务逻辑相分离的(但往往会直接嵌入到应用的业务逻辑中)。横切关注点可以被模块化为特殊的类,这个类被称为切面。依赖注入(DI)有助于应用对象之间的解耦;而AOP可以实现横切关注点与它们所影响的对象之原创 2017-08-06 16:19:45 · 261 阅读 · 0 评论 -
利用Mybatis插入数据到MySQL中
一、需要导入的jar包 <dependency> <groupId>org.springframework</groupId> <artifactId>spring-jdbc</artifactId> <version>4.3.11.RELEASE</version> </dependency>原创 2017-10-12 20:50:21 · 8232 阅读 · 0 评论