Spring
Thinking_in_小虫
对代码不满足,是任何真正有天才的程序员的根本特征。
展开
-
Spring简介
Spring 春天 给软件行业带来了春天 理念:使现有技术更加实用。本身是个大杂烩,整合现有的框架技术。 Spring的优点:本身是个轻量级框架IOC容器——控制反转 核心AOP——面向切面编程 核心对事务的支持对框架的支持 主要内容: Spring的核心就是IOC容器(图中第三层Core Container 核心容器)和AOPIOC:inversion of c原创 2017-08-07 15:07:28 · 302 阅读 · 0 评论 -
Spring整合mybatis (二)
Spring整合mybatis有很多种方式,博主之前文章写了一种方式,是用SqlSessionTemplate,现在介绍其他的几种方式。第二种方式,使用SqlSessionDaoSupport(这种方式比较新,需要新版的整合jar包)这种方式不需要管理SqlSessionTemplate,在Dao的实现中需要继承SqlSessionDaoSupportdao实现public class UserDa原创 2017-08-11 14:06:43 · 243 阅读 · 0 评论 -
Spring整合mybatis
1 .导入相关jar包 2 .编写配置文件 spring配置文件 ,将mybatis交给spring管理 <!--配置数据源 --> <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name="driverC原创 2017-08-11 11:38:31 · 324 阅读 · 0 评论 -
Spring AOP实现(注解)
三种方式使用spring实现AOP(实际上以后要自己单独写aop的机会也不会太多,但是也要了解Spring的aop)第三种方式——通过注解来实现 log.java@Aspectpublic class Log{ @Before("execution(* cn.sxt.service.*.*(..))") public void before(){ System.o原创 2017-08-10 15:19:39 · 460 阅读 · 0 评论 -
Spring AOP实现(自定义类)
三种方式使用spring实现AOP(实际上以后要自己单独写aop的机会也不会太多,但是也要了解Spring的aop)第二种方式——自定义类 相对第一种来说这种用的多点,文档中好多用这种方式切面不用实现任何接口public class Log{ public void before(){ System.out.println("------方法执行前--------");原创 2017-08-10 14:26:42 · 485 阅读 · 0 评论 -
Spring AOP实现(API实现)
三种方式使用Spring实现AOP(实际上以后要自己单独写aop的机会也不会太多,但是也要了解Spring的aop)第一种方式——使用Spring API实现这种方式需要导入Spring AOP api的依赖jar包,可以在老的Spring lib里面找到 aopalliance.jar aspectjweaver.jar 在beans.xml里面需要导入aop的命名空间并在XML c原创 2017-08-10 11:41:24 · 711 阅读 · 0 评论 -
Spring AOP介绍
Sping核心的两大东西就是IOC和AOP。前面详细讲了IOC,现在我们来介绍Spring 的AOP(面向切面编程)aop:aspect oriented pragmming面向切面编程 以前是oop object oriented pragmming面向对象编程文档中9. Aspect Oriented Programming with Spring是AOP的相关内容,全是英文有点吃力原创 2017-08-09 19:19:08 · 242 阅读 · 0 评论 -
动态代理
上一篇我们讲了静态代理,静态代理拥有好多好处,但是带来的确定也很烦,于是出现了动态代理。动态代理和静态代理的角色是一样的动态代理的代理类是动态生成的分为两类——类基于接口动态代理和基于类的动态代理 (1)基于接口动态代理——jdk动态代理 (2)基于类的动态代理——cglib 百度javasist发现javassist是jboss的一个子项目,其主要的优点,在于简单,而且快速。直接使用j原创 2017-08-09 13:39:23 · 349 阅读 · 0 评论 -
静态代理
通过中介找房子 一个静态代理模式 静态代理的角色分析:抽象角色——一般用接口或者抽象类实现真实角色——被代理的juese代理角色——代理真实角色 代理真实角色后一般会做一些附属操作客户角色——使用代理角色来进行一些操作 代码实现 Rent.java 抽象角色public interface Rent { public void rent();}Host.java 真实原创 2017-08-09 13:13:28 · 218 阅读 · 0 评论 -
Spring bean的自动装配
查看文档5.45 autowiring 但是spring中不推荐使用自动装配,推荐使用annotationbyName<!--autowire自动装配,简化spring配置 byName根据名称(set方法)去查找相应的bean,如果有装配上 --> <bean id="userDao" class="cn.sxt.dao.impl.Us原创 2017-08-09 11:03:17 · 247 阅读 · 0 评论 -
Spring bean的作用域(scope)
Spring起到的其实是一个桥梁的作用,用来整合框架bean的作用域可以查看文档 5.5Bean Scopessingleton 单例 整个容器只有一个对象实例(默认)prototype 原型 每次获取bean都产生一个对象request 每次请求创建一个新的对象session 在会话的范围内创建一个对象global session 只在portlet下有用,表示Ap原创 2017-08-09 10:54:25 · 244 阅读 · 0 评论 -
Spring 依赖注入
依赖注入——dependency injection 依赖:指bean对象的创建依赖于容器。Bean对象依赖资源(资源可能是类,bean中ref另外一个bean,也可能是字符串,如name的值) 注入:指Bean对象依赖的资源由容器来设值和装配Spring注入 看文档pdf 目录Part III. Core Technologies The IOC container里面有一个5原创 2017-08-08 15:44:44 · 272 阅读 · 0 评论 -
Spring 配置文件
Spring配置文件beans.xml详解设置别名<!--这里一次性只能设置一个别名 --> <alias name="user" alias="user1"/> <alias name="user" alias="user2"/>当有id的时候,name就是别名,而且可以设置多个,可以用逗号和空格或者分号分开<bean id="user" name="u2,u3 u4" fact原创 2017-08-08 14:21:27 · 240 阅读 · 0 评论 -
Spring IOC创建对象的三种方式
使用IOC来创建对象有三种方式 1 .通过无参的构造方法来创建 通过set方法注入属性 pojo类public class User { public User() { System.out.println("User的无参构造方法"); } private String name; public void setName(String原创 2017-08-08 13:00:38 · 2029 阅读 · 0 评论 -
Spring IOC(二)
IOC是一种编程思想,由主动编程变为被动接受。 IOC的实现是通过IOC容器来实现的。IOC容器——BeanFactory。 其实Bean工厂也是一种工厂设计模式,只是这个工厂是由spring提供的。<bean id="hello" class="cn.sxt.bean.Hello" scope="prototype">scope可以指定多例还是单例,默认是单例。可以用构造方法测试。查看一下原创 2017-08-08 10:35:20 · 200 阅读 · 0 评论 -
Spring IOC
Spring IOC的hello案例1 .先导入相关的jar包,除了spring下载lib里面的jar包,还必须导入commons-logging(可以在Struts2里找) 2 .写pojo类package cn.sxt.bean;public class Hello { private String name; public String getName() {原创 2017-08-07 19:12:56 · 269 阅读 · 0 评论 -
Spring声明式事务
spring中对事务的管理是spring的一大特点 主要分为声明式事务和编程式事务。一般来说声明式事务已经可以帮我们解决大多数问题。声明式事务处理需要导入aop和tx的命名空间<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi=原创 2017-08-11 13:08:29 · 247 阅读 · 0 评论