Spring
007Lord
这个作者很懒,什么都没留下…
展开
-
(九)利用Annocation配置注入关系
为了更好的解释此类操作存在的意义,下面通过一种习惯性的开发进行问题的描述,例如,现在有一个IAdminService服务层,这个服务层要调用IAdminDAO和IRoleDAO两个数据层操作,于是现在的编写如下范例:定义数据层操作IRoleDAO.javapackage cn.zwb.dao;public interface IRoleDAO { public boolean...原创 2018-05-27 19:39:38 · 210 阅读 · 0 评论 -
(二十)变量操作
在表达式里面所有的操作都是可以变量的形式出现的,但是一般情况下只会出现在基本的操作之中.范例:观察变量的定义package cn.zwb.demo;import org.springframework.expression.EvaluationContext;import org.springframework.expression.Expression;import org...原创 2018-05-30 11:50:44 · 938 阅读 · 0 评论 -
(二十一)集合表达式
只要是开发框架的操作,永远都不可避免的要去进行集合数据的操作处理,在之前一直强调过,Spring认为数据与List集合是等价的,所以如果要想操纵List集合,利用"{内容,内容,...}"的形式就可以完成了.范例:操作List集合内容package cn.zwb.demo;import java.util.List;import org.springframework.expr...原创 2018-05-30 12:52:49 · 2521 阅读 · 0 评论 -
(二十二)实际使用:配置文件
整个Spring的核心就是一个配置文件(增加了Annotation),所以只有将表达式应用在配置文件上才会特别的有意义.范例:利用配置文件编写表达式应用<bean id="str" class="java.lang.String"> <constructor-arg value="Hello"></constructor-arg><原创 2018-05-30 13:07:25 · 153 阅读 · 0 评论 -
(二十三)AOP编程简介
Spring中两大核心组成:IOC&DI,AOP.AOP最大的用处在于事务处理上, 使用MyElipse开发项目对于所有的AOP几乎不需要做太多的处理.由开发工具帮助用户自己完成了,而在整个学习过程之中,掌握AOP的编程的核心理念要比实现更为重要. 在整个的开发之中曾经强调过,业务层在项目之中要负责以下的操作: ●调...原创 2018-05-30 16:40:35 · 176 阅读 · 0 评论 -
(二十四)AOP基本操作
AOP是面向方面的编程,在实际开发之中,AOP都会工作在业务层;因为业务层要调用数据层,而业务层也要完成所有辅助性的数据层操作.范例:定义业务层操作接口package cn.zwb.service;import cn.zwb.vo.Member;public interface IMemberService { public boolean insert(Member v...原创 2018-05-30 18:16:17 · 265 阅读 · 0 评论 -
(二十五)AOP深入操作
在之前只是进行了最为简单的AOP的拦截处理,只在操作之前与操作之后进行的拦截,但是在整个AOP处理里面有一个问题需要首先解决,那么就是参数问题package cn.zwb.aop;import org.springframework.stereotype.Component;@Componentpublic class ServiceAspect { public vo...原创 2018-05-31 08:26:44 · 248 阅读 · 0 评论 -
(二十六)利用Annotation配置AOP
之前学习的AOP操作如果在以后的开发之中基本都是固定的,但是如果是你自己写的代码,如果通过配置文件编写就太麻烦了,所以可以使用基于Annocation的配置完成,范例:打开AOP的Annotation支持<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.o...原创 2018-05-31 08:57:19 · 137 阅读 · 0 评论 -
(二十七)JDBC操作模板
Spring开发框架除了提供有整个一系列第三方开发框架的功能之外,也提供有自己的一套完整的处理架构.它可以自己处理业务层,自己处理控制层,自己处理数据层,等等等一些列的处理.JdbcTemplate的产生动机? 首先任何情况下,爱java里面只要是进行数据库的开发操作,那么永恒的都只会有一个技术---JDBC,而所有的开发框架都是针对于JDBC的包装,像Hiberna...原创 2018-05-31 09:42:03 · 184 阅读 · 0 评论 -
(二十八)JdbcTemplate连接数据库
如果要使用JDBC模板操作数据库,那么首先必须要解决的就是数据库的连接问题,如果要进行连接那么需要使用一个特定的操作类. 如果想要使用JDBC的操作处理类,那么首先需要在建立Spring项目的时候添加相应的开发包范例:创建数据库表create table news( nid int primary key auto_increment, title varchar...原创 2018-05-31 11:20:16 · 1018 阅读 · 0 评论 -
(二十九)实现JdbcTemplate的CRUD操作
取得连接固然是一节非常兴奋的事情,但是最终依然要落实在表数据的操作上,若果要想操作数据表中的数据,可以使用"org.springframework.jdbc.core.JdbcTemplate",那么在这个类中提供有如下的方法: ●构造方法:public JdbcTemplate(DataSource dataSource) ; ●构造方法:public...原创 2018-06-01 08:42:43 · 357 阅读 · 0 评论 -
(三十)在Spring配置JDBC操作
如果想要简化整个JdbcTemplate的操作流程,那么唯一可以进行的方式就是利用配置文件采用依赖注入的方式实现操作.下面也实现同样的操作,但是尽量使用一种更为合理的做法,如果真的在实际开发之中,使用了JdbcTemplate,那么也只会在数据层上使用.范例:定义INewsDAO接口package cn.zwb.dao;import cn.zwb.vo.News;publi...原创 2018-06-01 11:18:46 · 269 阅读 · 0 评论 -
(三十一)使用C3P0数据库连接池
在所有的实际工作之中,之前使用的"DriverManagerDataSource"类是不会被使用的,因为这种的数据源的处理操作使用的是传统的JDBC方式处理,也就是所它每次操作的时候都需要自己连接数据库,而后还需要关闭数据库,性能太差了,所以在实际的工作上我们都会使用数据库连接池来负责数据库连接的管理,但是在JSP的时候学习过Tomcat下配置连接池,只不过这种连接池有一个问题,它...原创 2018-06-01 12:38:13 · 260 阅读 · 0 评论 -
(三十二)JdbcDaoSupport支持类
虽然可以直接利用JDBCTemplate进行数据库的操作,但是在大部分的DAO实现子类中,很少有人这样去做,往往会让DAO实现子类既实现了DAO结构同时去继承一个JdbcDaoSupport的抽象类, 因为如果不继承,你的代码就需要编写一个这样的功能:@Autowired //自动根据匹配类型注入所需要的数据 public NewsDAOImpl(JdbcTemp...原创 2018-06-01 14:02:06 · 1947 阅读 · 0 评论 -
(三十三)利用MyEclipse整合spring与Hibernate
在整合操作之前,一定要保证如下环境的准备就绪: mysql数据环境正常; MyEclipse里面配置的Datavase可以正常使用;1.首先为项目添加spring支持.(一定要先添加spring支持); 在添加Spring支持的时候一定要选择好添加持久化开发包的支持; 在配置的orm的开发包里面包含有Hiberante整合,JDO整合...原创 2018-06-29 19:39:46 · 719 阅读 · 0 评论 -
(十九)Class类型表达式
在之前所见到的都是最基础的表达式,与其程序的结构是相同的,但是在Spring里面对于Class反射机制也有自己的表达式处理,No表达式结果计算结果1ClassExpression exp = parpser.parseExpression("T(String)");Expression exp = parpser.parseExpression("T(java.util.Date)...原创 2018-05-30 09:45:20 · 516 阅读 · 0 评论 -
(十七)自定义分隔符
任何的表达式其组成之中一定会包含有相应的边界形式,例如:在jsp中的EL里面使用"${}",其中给定的"${"作为边界的开始,而"}"作为边界结束,而在Spring里面用户有需要也可以定义边界.首先来观察解析表达式的操作类: Expression parseExpression(String expressionString, ParserContext context) ; ...原创 2018-05-29 19:20:45 · 1137 阅读 · 0 评论 -
(十六)表达式原理
要明确的是,在使用表达式的过程之中,我们除了利用字符串数据操作以外,也可以进行数学的操作,范例:进行数的操作package cn.zwb.demo;import org.springframework.expression.EvaluationContext;import org.springframework.expression.Expression;import org...原创 2018-05-29 18:59:38 · 230 阅读 · 0 评论 -
(十)spring资源访问Resource接口
如果想要进行磁盘文件的读取操作,首先想到的一定是java.io包中提供的一系列类,还可以继续深入的想到ImputStream,OutputStream,Scanner,PrintStream,BufferedReader等核心的处理操作类.但是现在有如下几个问题, 这几个类的互相操作难度太高,很多人实际上对于IO的领悟并不是很彻底, IO支持的读取有限且复杂:...原创 2018-05-27 21:12:19 · 241 阅读 · 0 评论 -
(一)Spring介绍
1.核心组件: Beans:表示的是Spring对所有Bean对象的管理,主要包含了对象间的关系配置以及一些对象实例化操作.Core:包含了最底层的开发支持,例如:依赖注入关系,资源文件的访问,数据类型的转换;Context:提供的是一个完整的容器上下文,在这个上下文可以处理对象生命周期或者是事务.表达式语言模块:利用SpEL实现表达式语言的操作,以增强String的功能,2.切面编程:AOP:是...原创 2018-05-23 09:39:12 · 275 阅读 · 0 评论 -
(十一)读取不同资源
下面首先按照传统开发实现一些 基本资源读取1.读取内存资源org.springframework.core.io.ByteArrayResource 构造方法:public ByteArrayResource(byte[] byteArray);范例:实现内存读取package cn.resource.demo;import java.io.IOException;...原创 2018-05-28 11:01:04 · 191 阅读 · 0 评论 -
(二)控制反转
控制反转IOC(Inversion of Control),是一种包装技术类型,它本身不属于新的内容,说的再简单一点,所有对象的实例化操作都不再使用关键字new了(反射机制). 那么为什么现在的代码之中需要编写控制反转的操作呢?为了更好的解释这个问题.下面编写一个实际的程序分析. 如果员工出差,那么员工所需要做的核心处理--办理核心的操作业务,出差的目的,但是发现,要想实现这个...原创 2018-05-23 15:09:53 · 231 阅读 · 0 评论 -
(三)构造方法注入
Spring中只有两大核心技术:IOC&DI(控制反转&依赖注入),AOP(面向切面编程)什么是依赖注入?利用配置文件的关系来决定类之间的引用关系以及数据的设置操作.1.构造方法注入 默认情况下如果在applicationContext.xml文件之中配置的程序都可以自动的找到Spring容器加载时进行对象的实例化操作.但是自动进行初始化的时候调用1是类中的无惨构造方...原创 2018-05-23 16:30:20 · 5008 阅读 · 0 评论 -
(四)setter注入
在正常编写简单Java类的过程一定要提供有无惨构造,甚至有许多自己定义的工具类也都会提供有无惨构造,所以使用构造方法的注入操作并不是我们喜欢1方式. 实际上任何的类都会通过setter设置属性,这一点在简单Java类上表现的特别明显,范例:定义Dept类package cn.zwb.vo;public class Dept { private Integer deptno; priv...原创 2018-05-23 19:24:17 · 896 阅读 · 0 评论 -
(五)集合注入
在任何开发中一定会存在集合的操作,在Spring里面也支持集合数据的注入:数组,list,map,properties.范例:注入数组数据package cn.zwb.vo;import java.util.Arrays;public class Company { private String msg[]; private Integer data[]; public Intege...原创 2018-05-23 20:57:11 · 168 阅读 · 0 评论 -
(六)使用p命名空间
在之前使用的依赖注入的操作模式是最为常见的操作模式,也是在实际开发之中使用最多的形式,但是从Spring 2.x版本之后开始增加了另外一种操作形式,称为p命名空间操作。<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-...原创 2018-05-24 09:33:37 · 478 阅读 · 0 评论 -
(七)自动装配
在之前使用1过程之中,对于要引用的属性都必须明确写上名称.范例:原始配置<bean id="dept" class="cn.zwb.vo.Dept"> <property name="deptno" value="10"></property> <property name="dname" v原创 2018-05-24 11:36:51 · 119 阅读 · 0 评论 -
(八)Bean的其他配置(了解)
默认情况下只要是在applicationContext.xml文件里面配置"<bean>"都会在Spring的时候自动进行构造方法初始化,但是用户也可以实现自己的配置,让其在第一次使用的时候再进行初始化,这种操作称为延迟加载.范例:延迟加载 public class Emp { private Integer empno; private String ena...原创 2018-05-24 12:08:24 · 132 阅读 · 0 评论 -
(十二)ResourceLoader接口
ResourceLoader接口的主要作用是进行org.springframework.core.io.ResourceLoader对象实例化,这个接口的定义如下: 读取指定的资源信息:public getResource Resource getResource(String location); 取得类加载器:public getClassLoader C...原创 2018-05-29 14:23:09 · 315 阅读 · 0 评论 -
(十三)注入Resource
在之前的操作之中可以发现,虽然Resource的子类可以利用了字符串格式进行了隐藏,但是此时的代码之中发现ResourceLoader跟我的开发没有任何的关系.如果真的开发只关系Resource一个接口就够了, 为了解决Resource与ResourceLoader的操作关系耦合问题,那么在Spring设计的时候考虑到数据的自动转型问题,也就是说利用注入的操作模式,就...原创 2018-05-29 17:11:38 · 632 阅读 · 0 评论 -
(十四)路径通配符
之前的操作有一个共同的问题,那么就是必须设置好完整的路径,但是很多时候无法一一设计完整路径,例如,在不同的目录下都会存在有"applicationContext-XXX.xml"命名的结构,如果想要将其完整的读取进来,那么就必须考虑到路径的通配符使用,在Spring之中继续发扬了ANT工具的特征.而在这个工具下提供有几种符号: "?":匹配任意一位字符,例如"applicat...原创 2018-05-29 17:27:06 · 3160 阅读 · 0 评论 -
(十五)表达式入门
SpEL(Spring Expression Language,Spring的表达式语言),这种语言类似于JSP中学习到的EL,但是在整个Spring之中其表达式语言要更加的复杂,而且支持度更加的广泛,它还可以进行方法调用,对象实例化,集合操作等等,但是唯一的难点就是:代码太复杂,表达式太复杂了. 在整个的讲解过程之中,一定要更加深刻的领悟--Spring中针对于字符...原创 2018-05-29 18:33:39 · 160 阅读 · 0 评论 -
(三十四)利用MyEclipse整合spring与Struts2.x
1.为项目添加Struts2.x的开发支持; 添加支持的时候一定要选择好相应的开发包,因为需要整合Spring问题。2.Spring如果要想在WEB中使用,那么必须为其添加一个监听器; 名称:org.springframework.web.context.ContextLoaderListenerMyelipse已经自动为我们添加了相应的监听器支持 ...原创 2018-06-30 15:18:11 · 381 阅读 · 0 评论