文档章节

service的集成结构(数据库、非数据库、远程)如何加载、相关代码说明.md

北京起航
 北京起航
发布于 2015/06/12 19:42
字数 451
阅读 34
收藏 0

itone.Service:service的集成结构(数据库、非数据库、远程)如何加载、相关代码说明.md

  1. 服务注册到ServiceManager 1.1. 数据库的服务,可以自动查找,符合命名规则
src\main\java\com\its\itone\mon\res\service\
src\main\java\com\its\itone\mon\res\service\pojo
src\main\java\com\its\itone\mon\res\service\impl
src\main\java\com\its\itone\mon\res\service\impl\mapper  
src\main\java\com\its\itone\mon\res\service\IResService.java
src\main\java\com\its\itone\mon\res\service\pojo\Res.java
src\main\java\com\its\itone\mon\res\service\impl\ResService.java
src\main\java\com\its\itone\mon\res\service\impl\mapper\ResMapper.java
src\main\resources\com\its\itone\mon\res\service\impl\mapper\ResMapper.xml

1.2. 非数据库服务,实现IService,需要手动注册

Services.registerService(IDataLatestService.class, new DataLatestMapdbService());
IDataLatestService  service =Services.getService(IDataLatestService.class);
  1. Services工具类
Services工具类
调用方法1:IUserService service = Services.getService(IUserService.class,db); service.deleteById("test");
调用方法2:IUserService service = Services.getService(IUserService.class); service.setDb(DB); service.deleteById("test"); 
调用方法3: GlobalRes.setDefaultDd(DB); IUserService service = Services.getService(IUserService.class); service.deleteById("test");  
配置方式如下:
【自定义配置优先 】 1.零配置方式,采用默认规则 如:符合系统标准包结构,实现类在服务接口包.impl下,并且实现类名称就是接口名称,去掉前缀"I" 如: 
此接口 com.its.itone.core.service.IUserService 
对应实现类 com.its.itone.core.service.impl.UserService  
2.自定义配置方法: META-INF/services/目录里同时创建一个以服务接口命名的文件;该文件里就是实现该服务接口的具体实现类 如:文件 META-INF/services/com.its.itone.core.service. IUserService 内容是 com.its.itone.core.service.impl.UserService 参考测试用例 com.its.itone.core.service.UserServicesTest TODO 目前不支持事务 事务在方法内部自己实现
  1. 服务手动注册
Services.registerService(IDataLatestService.class, new DataLatestMapdbService());
  1. mapper手动注册
DB.addMappers(ElementMapper.class.getPackage().getName());
DB.addMappers(TopoViewMapper.class.getPackage().getName());

© 著作权归作者所有

共有 人打赏支持
北京起航
粉丝 55
博文 52
码字总数 29304
作品 0
海淀
架构师
SQL Server 2008概述(一)

SQL Server 2008是一个重大的微软数据库产品版本,以SQL Server 2005为基础历经三年研发,推出了许多新功能并对关键功能做了改进,使得它成为至今为止的最强大和最全面的SQL Server版本。SQL...

terryli
2010/11/26
0
0
NoSQL为什么需要模式自由的ETL工具 ?

  【IT168 评论】了解一个开源工具,可以有效帮助人们解决NoSQL在数据输入、处理、输出方面困难。大数据时代,不了解NoSQL数据库的程序员大抵应该是没有的吧!   许多NoSQL数据库缺少工具...

it168网站
01/02
0
0
使用Spring的测试机制进行集成测试

Spring3.0已经在2009年12月中旬正式发布,但是目前的各种应用系统仍然基于2.5甚至更早的版本构建而来,并且从Sprin3.0的新特性(核心API迁移至java1.5及使用范型、Spring Expression Languag...

晨曦之光
2012/03/09
0
0
Java实现个人博客网站

说明:该项目是实验楼用户“LOU3165780622”发布在实验楼上的项目教程:【Java实现个人博客】,未经允许,禁止转载; 该项目利用 SSM 框架和 Mysql 以及一些简单的前端知识搭建一个自己的个人...

实验楼
2017/12/12
0
0
架构设计分享之权限系统(看图说话)

前面一篇文章《最近架构随想》,我提到架构设计的一些构想,其实也是对之前项目经验的一些归纳及总结。今天我们就以权限系统作为切入点,谈一谈怎么设计权限系统以及怎么做到系统具有以下特性...

KnightsWarrior
2014/08/31
0
0

没有更多内容

加载失败,请刷新页面

加载更多

如何在Java中生成比特币钱包地址

让我们通过学习比特币(Bitcoin)如何实施该技术的各个方面来工作,好吗?该技术包括以下几个方面: 比特币地址bitcoin address是用来发送和接收比特币的。 交易transaction是比特币从一个地...

geek12345
24分钟前
3
0
面试必备Linux基础知识

学习Linux之前,我们先来简单的认识一下操作系统。 一 从认识操作系统开始 1.1 操作系统简介 我通过以下四点介绍什么操作系统: 操作系统(Operation System,简称OS)是管理计算机硬件与软件...

小小明童鞋
24分钟前
7
0
SpringBoot基础教程3-1-3 Quartz定时任务单点持久化

1 概述 实际项目中,复杂的定时任务都会结合持久化,动态改变定时任务状态,本文将介绍基于Quartz的定时任务单点持久化方式,通过RESTful风格,演示定时任务的CRUD,最后使用Swagger测试。 ...

Mkeeper
41分钟前
14
0
Android入门—文件目录解析

AndroidManifest.xml 是每个android程序中必须的文件,它位于整个项目的根目录。我们每天都在使用这个文件,往里面配置程序运行所必要的组件,权限,以及一些相关信息。但是对于这个文件,我...

haoyuehong
44分钟前
8
0
IDEA中Maven打包时如何跳过测试

方法1:直接使用IDEA提供的方式 Maven命令栏的工具栏有下图中的图标,上面就写着 Skip Tests 按下图标后,如下图,test就不可用了 直接使用package命令即可。 方法2:自己编辑maven命令 进入...

karma123
57分钟前
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部