- .NET——关于EF与延迟加载(LazyLoad)
程序员王大可
前一段独立负责了一个web项目,由于自己一个人开发,技术选型也更加自由一些,因为项目相对没那么复杂,抛弃了公司一直沿用的IBatis.Net,用了微软自己的ORM框架——EF(EntityFramework),在使用的过程中遇到了些许问题,发现了EF的延迟加载特性,在使用的过程中,深入研究了一下,正好结合一些基础知识,做了些深入的学习。关键字:虚方法多态基本操作由于项目使用的EF的CodeFirs
- vb.net生成exe之后,在其bin\Release目录下的exe点击无反应的解决办法(亲身实践)
bigheadsheep
ibatis.net
环境:vb.net2008+iBatis.net选择项目,点击"生成"之后,在项目所在目录的bin\Release目录下生成了exe以及dll文件,但是点击exe文件后,没有反应,也没有报错而在bin\Debug下面的exe却可以正常执行.调查之后发现,是由于在配置iBatis.net环境的时候,需要在\bin\Debug目录下手动添加2个文件providers.config,SqlMap.con
- ibatis.net 按实体insert数据,批量insert,同时解决ON DUPLICATE KEY
hddd2009
技术
一、insert单条model(entity)动态xml如下:insertintocartype(CarTypeId,CarTypeName,parking_id,Status,Update_time,State,SynID)values(#CarTypeId#,#CarTypeName#,#parking_id#,#Status#,#Update_time#,#State#,#SynID#);需
- .NET_iBatis.NET挖坑_使用$和#替换可空字段变量
QD阿朱
后端开发net.netibatisdatabseorm
背景ibatis.net版本:1.6.2.0问题描述如果有个表Test,有个字段A(类型为int,可为空,默认为0),插入数据有两种写法:INSERTINTOTest(A)VALUES(#A#);INSERTINTOTest(A)VALUES($A$);这两者在编译后的SQL语句是不一样的。对于$A$这种写法,如果A是null,编译后会将$A$直接删除,结果是INSERTINTOTest(A)VA
- IBatis.Net项目数据库SqlServer迁移至Oracle经验
道无名
技术杂谈
最近完成了一个(IBatis.Net+MVC)项目的数据库+代码迁移工作,可把我折腾得~~~IBatis.Net是一个ORM框架,具体介绍可以问度娘。我之前没用ORM框架使用经验,所以这一路我不是走来的,而是爬出一个坑又掉入另外一个坑~~~项目原来用的是Sqlserver2008,现在要转到Oracle,所以我先完成数据迁移,然后是代码迁移。数据库迁移1、数据库安装与配置略过。2、表结构迁移1)用
- 一个类GraphQL的ORM数据访问框架发布
Popeye
ormgraphqlentityframeworkado.netibatis
Zongsoft.Data发布公告很高兴我们的ORM数据访问框架(Zongsoft.Data)在历经两个SaaS产品的应用之后,今天正式宣布对外推广!这是一个类GraphQL风格的ORM(Object/RelationalMapping)数据访问框架。又一个轮子?在很长时间里,.NET阵营似乎一直缺乏一个被普遍使用的ORM数据访问框架,从最早的原生ADO.NET到舶来品iBatis.NET和Hib
- ibatis.net中的事务处理
weixin_33812433
2019独角兽企业重金招聘Python工程师标准>>>try{//开始事务SqlMap.BeginTransaction();//数据库操作CountryID=(int)SqlMap.Insert("AddCountry",hash);AirportID=(int)SqlMap.Insert("AddAirport",hash);//提交事务SqlMap.CommitTransaction();}
- IBatis.Net学习笔记系列文章
aspgreener
ASP.NETdao数据库框架工具存储
IBatis.Net是一个比较易用的ORM框架,使用起来较为方便、灵活。在此记录我学习的过程,作为自己的一个总结。(本系列会不断更新)1、IBatis.Net学习笔记一:开篇2、IBatis.Net学习笔记二:下载、编译、运行NPetShop3、IBatis.Net学习笔记三:两种常用的DAO4、IBatis.Net学习笔记四:数据库的缓存模式5、IBatis.Net学习笔记五:常用的查询方式6、
- C#:使用MVC和Mybatis(IBatis.Net)搭建项目(二)
苦不苦
第一步:config文件配置完成之后就该创建数据库了,不然没法进行了。下边是数据库代码:createdatabaseBlogDemouseBlogDemoCREATETABLE[dbo].[DemoUser]([UserId][int]IDENTITY(1,1)NOTNULL,[UserName][varchar](50)NULL,[PassWord][varchar](50)NULL)inser
- C#:使用MVC和Mybatis(IBatis.Net)搭建项目(一)
苦不苦
iBatis.Net是移植自java的一个持久性框架,在开发中简单易用,且可以灵活修改Sql。此文只演示如何创建项目以及如何使用Ibatis.Net,并没有理论分析和讲解。第一步、创建一个基本的MVC项目:第二步、新建类库Batis用于存放与Ibatis.Net相关文件然后下载引用文件,在Batis添加Ibatis.Net引用,并在blogmybatis中添加Batis的引用:后边我会提供代码下载
- iBatis.net入门指南
weixin_30945319
iBatis.net入门指南iBatis.net入门指南-1-什么是iBatis.net?-3-iBatis.net的原理-3-新人指路-3-iBatis.net的优缺点-4-SQLMapping金典案例-5-情景一基本标签(insert,update,select)及属性(parameterClass,resultClass)-5-情景二子标签()及转义处理-7-情景三高阶标签()及属性(res
- iBATIS.NET 持久性框架,有时间完善它
王银龙
iBATIS.NET持久性框架有时间完善它providers.config配置如下Ibatis与log4net一起配置Web.config-->-->-->-->节点就是了,注意后面的ref是在config中配置的appendername-->-->-->-->-->-->标记上设置以下特性。-->-->log4net.config子节点代表一种记录日志的方式-->节点就是了,注意后面的ref是在
- ibatis.net 入门demo 实现基本增删改查
yesterday┼
1、项目架构体系DAO(数据访问层)Domain(实体层)Text(表示层)2、比较重要的是需要添加两个dll的引用,以及两个配置文件和一个XML文件两个IbatisNet.Common.dll、IbatisNet.DataMapper.dll添加在DAO层里(版本1.0.0.0)两个配置文件Provider.config、SqlMap.config以及Student.xml要放到启动项的bin/
- 最通用的ibatis.Net使用sql server存储过程返回分页数据的详细例子
_ali
ibatis.Net是一个比较简单和灵活的ORM框架,今天我分享一个我的项目中使用sqlserver通用存储过程来分页的一个例子,用ibatis.Net框架统一返回分页数据为IList类型。下面是具体的代码步骤,你可以拿来直接用。1、ibatis.Net配置文件Common.xml[dbo].[ProcGetPageData]2、通用分页存储过程ProcGetPageDataCREATEPROCE
- iBatis.net入门指南
左正
iBatis.net入门指南 -1-什么是iBatis.net? -3-iBatis.net的原理 -3-新人指路 -3-iBatis.net的优缺点 -4-SQLMapping金典案例 -5-情景一 基本标签(insert,update,select)及属性(parameterClass,resultClass) -5-情景二 子标签()及转义处理
- iBatis.Net(C#)数据库查询
左正
引用请注明http://www.cnblogs.com/13590/archive/2013/03/14/2958735.html 摘要:查询是数据库SQL语言的核心,本文介绍了通过iBatis.Net对数据库的简单查询、条件查询、动态查询和多表查询。关键词:iBatis.Net;动态查询;多表查询;数据映射查询是数据库SQL语言的核心,SQL语言只提供唯一一个用于数据库查询的语句,即SELECT
- iBatis.Net(C#)SQL数据映射
左正
转载请注明 http://www.cnblogs.com/13590/archive/2013/03/01/2938126.html摘要:本文探讨了iBatis.Net框架的XML数据映射文件各配置节点的含义,并通过CRUD四种对数据库的操作讲解了如何配置数据映射文件和调用方法。关键词:iBatis.Net;XML;SQLMaps;数据映射 上一节介绍了iBatis.Net的基本情况和运行原理,运
- IBatis.net动态SQL语句
左正
在学习动态SQL语句之前,首先必须对条件查询有一定了解,先来学习如何向IBatis.Net的映射文件里传入参数。一、条件查询1、传递单个参数如根据Id查询:
SELECT*FROMPersonWHEREId=#Id#--这样传入一个参数
调用的方法是:PersonModelp=mapper.QueryForObject("SelectPersonById",3);//3就是传到SQL语句中的参
- IBatis.Net学习笔记十三:在IBatis.Net中调用存储过程
左正
其实调用方式比较简单,主要也就是两种类型的存储过程:1、更新类型的存储过程2、查询类型的存储过程下面就来看看具体的调用方式:1、更新类型的存储过程sp_InsertAccount:CREATE PROCEDURE [dbo].[sp_InsertAccount] -- Add the parameters for the stored procedure here @Account_ID
- IBatis.Net学习笔记七--日志处理
左正
IBatis.Net中提供了方便的日志处理,可以输出sql语句等调试信息。常用的有两种:1、输出到控制台: 2、利用log4net输出到文件:
- IBatis.Net学习笔记六--再谈查询
左正
在IBatis.Net学习笔记五--常用的查询方式 中我提到了一些IBatis.Net中的查询,特别是配置文件的写法。后来通过大家的讨论,特别是AndersCui 的提醒,又发现了其他的多表查询的方式。在上一篇文章中我提到了三种方式,都是各有利弊:第一种方式当数据关联很多的情况下,实体类会很复杂;第二种方式比较灵活,但是不太符合OO的思想(不过,可以适当使用);第三种方式最主要的问题就是性能不太理
- IBatis.Net学习笔记五--常用的查询方式
左正
在项目开发过程中,查询占了很大的一个比重,一个框架的好坏也很多程度上取决于查询的灵活性和效率。在IBatis.Net中提供了方便的数据库查询方式。在Dao代码部分主要有两种方式:1、查询结果为一个对象: ISqlMapper sqlMap = sqlMapDaoSession.SqlMap; return (Account) sqlMap
- iBatis.Net实现返回DataTable和DataSet对象
左正
如题。要返回一个ADO.NET对象好像没有使用ORM的必要,而且从编程的角度看这样的实现一点也不OO,但是实际的开发场景中还是会碰到这种需求的。下面我就借鉴前人的经验,结合实际的示例,再总结一下。如果您认真看完,应该可以体会得到我的一些尝试,而不是人云亦云的照搬代码。 1、获得DbCommand对象对于SQL语句,方法如下:///
///SQL语?句?,?获?取?DbCommand
///
- iBATIS.net获取运行时sql语句
左正
【本文原创,第一次离首页如此之近。发在候选区攒攒rp,管理员看着不合适可以撤下。】虽然只在iBatis的世界里小打小闹匆匆数月,却历经数次与领导和同事激辩,再通过不懈努力学习和开发积累,楼猪终于被它小巧而不失强大,稳定而不失灵活所折服。作为80后顽固、偏执和nc一族,楼猪一向保守认为自己是美貌与智慧并存的。仗着天资聪慧,在之前的“iBatis.net直接执行sql语句”里曾经公然抱怨iBATIS对
- [原]iBatis.Net(C#)系列一:简介及运行环境
左正
转载请注明http://www.cnblogs.com/13590/archive/2013/02/27/2934580.html摘要:介绍iBatis.Net的基本情况和运行原理,运行环境中各参数的配置情况,并通过一个实例项目,详细讲解通过VS2012建立的C#项目中如何使用iBatis.Net。关键词:iBatis.Net;C#语言;运行环境;实例1iBatis.Net简介iBatis一词来源
- IBatis.net介绍
左正
IBatis.net介绍IBatis.net是2001年发起的开源项目,它是一个轻量级的ORM框架,现在IBatisNET已经是属于Apache下的一个子项目了,最新版本是1.6.2.官方网站:http://www.mybatis.org/.net项目下载地址:http://code.google.com/p/mybatisnet/DataMapper:通过配置映射关系的xml业务对象与SQL语句
- SpringBird Erp系统快速开发平台
spring
SpringBird Erp系统快速开发平台基于通用的三层架构,数据访问层采用了无Sql注入风险的IBatis.net,表现层采用了微软最新的Asp.net mvc3 Razor模板解析引擎和轻量级的Jquery easyui,服务层采用了接口编程,整体使用成熟可靠的Ioc、Aop框架Spring.net进行服务层、数据访问层和表现层之间的整合。讨论qq:2262366309
工欲善
- iBatis.Net实现返回DataTable和DataSet对象
Datatable
如题。要返回一个ADO.NET对象好像没有使用ORM的必要,而且从编程的角度看这样的实现一点也不OO,但是实际的开发场景中还是会碰到这种需求的。下面我就借鉴前人的经验,结合实际的示例,再总结一下。如果您认真看完,应该可以体会得到我的一些尝试,而不是人云亦云的照搬代码。
1、获得DbCommand对象
对于SQL语句,方法如下:
GetDbCommand //
- iBATIS.net:批量数据插入?
ibatis
前言:本文标题有一个问号,带个问号的原因就是到本文写成为止“批量数据插入”依然是没有解决并困扰着楼猪的一个疑难问题。期待有研究iBatis透彻的高人看完本文后不吝赐教,绝非单单出于礼貌,真诚地谢谢了先。一、问题来源 在楼猪做过的大大小小项目中,用iBatis.net实现的传统CRUD操作里,只能实现一条记录的插入操作,大多数情况下,这个也满足了项目需要,但是在大数据量的批量数据导入的情况下就
- iBATIS.net的OR映射篇
ibatis
相对于Nhibernate复杂的配置文件实现来说,IBatisnet的映射配置更为简单直接,下面我们就
之前的例子分析一下一个典型的配置文件(Person.xml):
Code
<?xml version="1.0" encoding="utf-8" ?>
<sqlMap names
- Enum 枚举
120153216
enum枚举
原文地址:http://www.cnblogs.com/Kavlez/p/4268601.html Enumeration
于Java 1.5增加的enum type...enum type是由一组固定的常量组成的类型,比如四个季节、扑克花色。在出现enum type之前,通常用一组int常量表示枚举类型。比如这样:
public static final int APPLE_FUJI = 0
- Java8简明教程
bijian1013
javajdk1.8
Java 8已于2014年3月18日正式发布了,新版本带来了诸多改进,包括Lambda表达式、Streams、日期时间API等等。本文就带你领略Java 8的全新特性。
一.允许在接口中有默认方法实现
Java 8 允许我们使用default关键字,为接口声明添
- Oracle表维护 快速备份删除数据
cuisuqiang
oracle索引快速备份删除
我知道oracle表分区,不过那是数据库设计阶段的事情,目前是远水解不了近渴。
当前的数据库表,要求保留一个月数据,且表存在大量录入更新,不存在程序删除。
为了解决频繁查询和更新的瓶颈,我在oracle内根据需要创建了索引。但是随着数据量的增加,一个半月数据就要超千万,此时就算有索引,对高并发的查询和更新来说,让然有所拖累。
为了解决这个问题,我一般一个月会进行一次数据库维护,主要工作就是备
- java多态内存分析
麦田的设计者
java内存分析多态原理接口和抽象类
“ 时针如果可以回头,熟悉那张脸,重温嬉戏这乐园,墙壁的松脱涂鸦已经褪色才明白存在的价值归于记忆。街角小店尚存在吗?这大时代会不会牵挂,过去现在花开怎么会等待。
但有种意外不管痛不痛都有伤害,光阴远远离开,那笑声徘徊与脑海。但这一秒可笑不再可爱,当天心
- Xshell实现Windows上传文件到Linux主机
被触发
windows
经常有这样的需求,我们在Windows下载的软件包,如何上传到远程Linux主机上?还有如何从Linux主机下载软件包到Windows下;之前我的做法现在看来好笨好繁琐,不过也达到了目的,笨人有本方法嘛;
我是怎么操作的:
1、打开一台本地Linux虚拟机,使用mount 挂载Windows的共享文件夹到Linux上,然后拷贝数据到Linux虚拟机里面;(经常第一步都不顺利,无法挂载Windo
- 类的加载ClassLoader
肆无忌惮_
ClassLoader
类加载器ClassLoader是用来将java的类加载到虚拟机中,类加载器负责读取class字节文件到内存中,并将它转为Class的对象(类对象),通过此实例的 newInstance()方法就可以创建出该类的一个对象。
其中重要的方法为findClass(String name)。
如何写一个自己的类加载器呢?
首先写一个便于测试的类Student
- html5写的玫瑰花
知了ing
html5
<html>
<head>
<title>I Love You!</title>
<meta charset="utf-8" />
</head>
<body>
<canvas id="c"></canvas>
- google的ConcurrentLinkedHashmap源代码解析
矮蛋蛋
LRU
原文地址:
http://janeky.iteye.com/blog/1534352
简述
ConcurrentLinkedHashMap 是google团队提供的一个容器。它有什么用呢?其实它本身是对
ConcurrentHashMap的封装,可以用来实现一个基于LRU策略的缓存。详细介绍可以参见
http://code.google.com/p/concurrentlinke
- webservice获取访问服务的ip地址
alleni123
webservice
1. 首先注入javax.xml.ws.WebServiceContext,
@Resource
private WebServiceContext context;
2. 在方法中获取交换请求的对象。
javax.xml.ws.handler.MessageContext mc=context.getMessageContext();
com.sun.net.http
- 菜鸟的java基础提升之道——————>是否值得拥有
百合不是茶
1,c++,java是面向对象编程的语言,将万事万物都看成是对象;java做一件事情关注的是人物,java是c++继承过来的,java没有直接更改地址的权限但是可以通过引用来传值操作地址,java也没有c++中繁琐的操作,java以其优越的可移植型,平台的安全型,高效性赢得了广泛的认同,全世界越来越多的人去学习java,我也是其中的一员
java组成:
- 通过修改Linux服务自动启动指定应用程序
bijian1013
linux
Linux中修改系统服务的命令是chkconfig (check config),命令的详细解释如下: chkconfig
功能说明:检查,设置系统的各种服务。
语 法:chkconfig [ -- add][ -- del][ -- list][系统服务] 或 chkconfig [ -- level <</SPAN>
- spring拦截器的一个简单实例
bijian1013
javaspring拦截器Interceptor
Purview接口
package aop;
public interface Purview {
void checkLogin();
}
Purview接口的实现类PurviesImpl.java
package aop;
public class PurviewImpl implements Purview {
public void check
- [Velocity二]自定义Velocity指令
bit1129
velocity
什么是Velocity指令
在Velocity中,#set,#if, #foreach, #elseif, #parse等,以#开头的称之为指令,Velocity内置的这些指令可以用来做赋值,条件判断,循环控制等脚本语言必备的逻辑控制等语句,Velocity的指令是可扩展的,即用户可以根据实际的需要自定义Velocity指令
自定义指令(Directive)的一般步骤
&nbs
- 【Hive十】Programming Hive学习笔记
bit1129
programming
第二章 Getting Started
1.Hive最大的局限性是什么?一是不支持行级别的增删改(insert, delete, update)二是查询性能非常差(基于Hadoop MapReduce),不适合延迟小的交互式任务三是不支持事务2. Hive MetaStore是干什么的?Hive persists table schemas and other system metadata.
- nginx有选择性进行限制
ronin47
nginx 动静 限制
http {
limit_conn_zone $binary_remote_addr zone=addr:10m;
limit_req_zone $binary_remote_addr zone=one:10m rate=5r/s;...
server {...
location ~.*\.(gif|png|css|js|icon)$ {
- java-4.-在二元树中找出和为某一值的所有路径 .
bylijinnan
java
/*
* 0.use a TwoWayLinkedList to store the path.when the node can't be path,you should/can delete it.
* 1.curSum==exceptedSum:if the lastNode is TreeNode,printPath();delete the node otherwise
- Netty学习笔记
bylijinnan
javanetty
本文是阅读以下两篇文章时:
http://seeallhearall.blogspot.com/2012/05/netty-tutorial-part-1-introduction-to.html
http://seeallhearall.blogspot.com/2012/06/netty-tutorial-part-15-on-channel.html
我的一些笔记
===
- js获取项目路径
cngolon
js
//js获取项目根路径,如: http://localhost:8083/uimcardprj
function getRootPath(){
//获取当前网址,如: http://localhost:8083/uimcardprj/share/meun.jsp
var curWwwPath=window.document.locati
- oracle 的性能优化
cuishikuan
oracleSQL Server
在网上搜索了一些Oracle性能优化的文章,为了更加深层次的巩固[边写边记],也为了可以随时查看,所以发表这篇文章。
1.ORACLE采用自下而上的顺序解析WHERE子句,根据这个原理,表之间的连接必须写在其他WHERE条件之前,那些可以过滤掉最大数量记录的条件必须写在WHERE子句的末尾。(这点本人曾经做过实例验证过,的确如此哦!
- Shell变量和数组使用详解
daizj
linuxshell变量数组
Shell 变量
定义变量时,变量名不加美元符号($,PHP语言中变量需要),如:
your_name="w3cschool.cc"
注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言都不一样。同时,变量名的命名须遵循如下规则:
首个字符必须为字母(a-z,A-Z)。
中间不能有空格,可以使用下划线(_)。
不能使用标点符号。
不能使用ba
- 编程中的一些概念,KISS、DRY、MVC、OOP、REST
dcj3sjt126com
REST
KISS、DRY、MVC、OOP、REST (1)KISS是指Keep It Simple,Stupid(摘自wikipedia),指设计时要坚持简约原则,避免不必要的复杂化。 (2)DRY是指Don't Repeat Yourself(摘自wikipedia),特指在程序设计以及计算中避免重复代码,因为这样会降低灵活性、简洁性,并且可能导致代码之间的矛盾。 (3)OOP 即Object-Orie
- [Android]设置Activity为全屏显示的两种方法
dcj3sjt126com
Activity
1. 方法1:AndroidManifest.xml 里,Activity的 android:theme 指定为" @android:style/Theme.NoTitleBar.Fullscreen" 示例: <application
- solrcloud 部署方式比较
eksliang
solrCloud
solrcloud 的部署其实有两种方式可选,那么我们在实践开发中应该怎样选择呢? 第一种:当启动solr服务器时,内嵌的启动一个Zookeeper服务器,然后将这些内嵌的Zookeeper服务器组成一个集群。 第二种:将Zookeeper服务器独立的配置一个集群,然后将solr交给Zookeeper进行管理
谈谈第一种:每启动一个solr服务器就内嵌的启动一个Zoo
- Java synchronized关键字详解
gqdy365
synchronized
转载自:http://www.cnblogs.com/mengdd/archive/2013/02/16/2913806.html
多线程的同步机制对资源进行加锁,使得在同一个时间,只有一个线程可以进行操作,同步用以解决多个线程同时访问时可能出现的问题。
同步机制可以使用synchronized关键字实现。
当synchronized关键字修饰一个方法的时候,该方法叫做同步方法。
当s
- js实现登录时记住用户名
hw1287789687
记住我记住密码cookie记住用户名记住账号
在页面中如何获取cookie值呢?
如果是JSP的话,可以通过servlet的对象request 获取cookie,可以
参考:http://hw1287789687.iteye.com/blog/2050040
如果要求登录页面是html呢?html页面中如何获取cookie呢?
直接上代码了
页面:loginInput.html
代码:
<!DOCTYPE html PUB
- 开发者必备的 Chrome 扩展
justjavac
chrome
Firebug:不用多介绍了吧https://chrome.google.com/webstore/detail/bmagokdooijbeehmkpknfglimnifench
ChromeSnifferPlus:Chrome 探测器,可以探测正在使用的开源软件或者 js 类库https://chrome.google.com/webstore/detail/chrome-sniffer-pl
- 算法机试题
李亚飞
java算法机试题
在面试机试时,遇到一个算法题,当时没能写出来,最后是同学帮忙解决的。
这道题大致意思是:输入一个数,比如4,。这时会输出:
&n
- 正确配置Linux系统ulimit值
字符串
ulimit
在Linux下面部 署应用的时候,有时候会遇上Socket/File: Can’t open so many files的问题;这个值也会影响服务器的最大并发数,其实Linux是有文件句柄限制的,而且Linux默认不是很高,一般都是1024,生产服务器用 其实很容易就达到这个数量。下面说的是,如何通过正解配置来改正这个系统默认值。因为这个问题是我配置Nginx+php5时遇到了,所以我将这篇归纳进
- hibernate调用返回游标的存储过程
Supanccy2013
javaDAOoracleHibernatejdbc
注:原创作品,转载请注明出处。
上篇博文介绍的是hibernate调用返回单值的存储过程,本片博文说的是hibernate调用返回游标的存储过程。
此此扁博文的存储过程的功能相当于是jdbc调用select 的作用。
1,创建oracle中的包,并在该包中创建的游标类型。
---创建oracle的程
- Spring 4.2新特性-更简单的Application Event
wiselyman
application
1.1 Application Event
Spring 4.1的写法请参考10点睛Spring4.1-Application Event
请对比10点睛Spring4.1-Application Event
使用一个@EventListener取代了实现ApplicationListener接口,使耦合度降低;
1.2 示例
包依赖
<p