Thrift项目Server端开发流程

首先,先了解工程中所有包的功能(见下图)

该图为用户中心项目的目录结构,以下依次介绍。

  1. 1.     src/main/java

com.framework:该目录存放着所有系统所需要的共同的一些类。

com.user:这个包下面放着本小组的功能代码。

dao:该层主要存放着调用数据库层的方法

entity:业务实体bean

mapper:业务sql

service:thrift接口的实现类

thrift:thrift的IDL生成的java文件

com.utoken.table:这里存放mybatis对单表操作所需要的mapper及dao,可以快速对单表操作。

  1. 2.     src/main/resources

config:配置文件的存放包

log:存放log4j配置文件

mybatis:这里是mybatis的配置文件

spring:spring的配置文件

system:applicationContext配置文件

thrift:thrift客户端和服务器端的配置文件

thrift-IDL:存放thrift的IDL文件,该文件在系统中并无作用,只是方便开发人员快速理解接口的定义规范。

  1. 3.     WEB-INF

存放logs,web.xml和proxool.xml(该文件放在config下编译时无法找到,所以目前只能放在这里)。

至此,项目的目录结构介绍完毕。

开发过程分两种方式:简单的单表操作、复杂操作。

注:能使用单表操作的尽量用单表操作实现,提高开发效率。

简单的单表操作具体流程:

单表操作可以直接使用mybatis生成的单表操作类来快速实现,具体操作如下

对于单表操作的业务,只需要添加上图中两个红圈内的内容即可快速完成单表操作。

LineAskServiceImpl:该类是LineAskService接口的实现,也是主要的功能模块。

上图已经简答的描述了整个单表操作的简单过程。

复杂操作过程:

红色区域为必须的文件,请按对应方式创建,类名约定规则:服务名后加对应的包名。

具体每个文件的功能在此不做介绍,spring框架的基础,请查阅相关文档。

  1. dao的内容如下:

2.Mapper的内容如下:

3.Entity的内容不再详细介绍,见下图

4.接口实现类的编写

操作完以上步奏,就可以进行service配置工作。

配置thrift-service.xml

有新的接口可以按红色区域依次增加新的服务接口bean,将bean添加到thriftserverlist里。操作完以上步奏后,就可以发布服务了。

Thrift项目Server端开发流程的更多相关文章

  1. Vue 框架-12-Vue 项目的详细开发流程

    Vue 框架-12-Vue 项目的详细开发流程 首先,如果你还不了解 Vue 脚手架怎么搭建? 默认的环境中有哪些文件? 文件大概是什么作用? 那么,您要先查看之前的文章才有助于你理解本篇文章: Vu ...

  2. vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境

    目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...

  3. 也谈基于Web的含工作流项目的一般开发流程

    项目包含的通用模块代码等我有时间一并剥离贡献出来(基于WebSocket的通知引擎,工作流整合模块,自定义表单,基于RBAC权限设计),最近太忙了,Web项目有一段时间没碰,有点生疏的感觉,主要在忙G ...

  4. C# web server的开发流程

    http://blog.csdn.net/h0322/article/details/4776819

  5. iOS项目的一般开发流程

  6. LoRaWAN协议(三)--Server端数据协议

    LoRaWAN Server 端架构 LoRaWAN 的server包括 NS(Network server).AS(application server).CS(Custom server).... ...

  7. 移动APP 支付宝快捷支付开发流程

    [代码] [Java]代码 ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 ...

  8. 分享 koa + mysql 的开发流程,构建 node server端,一次搭建个人博客

    前言 由于一直在用 vue 写业务,为了熟悉下 react 开发模式,所以选择了 react.数据库一开始用的是 mongodb,后来换成 mysql 了,一套下来感觉 mysql 也挺好上手的.re ...

  9. iOS项目的目录结构和开发流程

    转自无网不剩的博客 网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法.   目录结构 AppDelegate Models Ma ...

随机推荐

  1. Saltstack 常用的模块及API

    Saltstack提供了非常丰富的功能模块,设计操作系统的基础功能,常用工具支持等, 官网模块介绍 http://docs.saltstack.com/ref/modules/all/index.ht ...

  2. innodb更改行格式,系统盘占用急剧升高

    #大表引擎修改后,数据量较myisam引擎表大很多,对存储的行格式修改后,数据量减小. #备库修改时,由于服务器时间较早,系统盘20G,突然收到/磁盘空间占比89%的报警,立即将修改中断,恢复正常 # ...

  3. Sql Server尝试读取或写入受保护的内存。这通常指示其他内存已损坏

    今日遇到这样一个问题,用vs2010调试C#代码时,只要代码一运行到跟数据库关联的地方时,编译器就报错误,给的提示如:调试器已附加,要继续需要分离什么的,咋一看还以为是vs中调试器设置的问题,可后来仔 ...

  4. swift UILabel加载html源码

    @IBOutlet weak var content: UILabel! func setup(content:String){ self.content.preferredMaxLayoutWidt ...

  5. 共享AFHTTPSessionManager 单例好处浅析

      很多时候,AFNetworking都是目前iOS开发者网络库中的不二选择.Github上2W+的star数足见其流行程度.而从iOS7.0开始,苹果推出了新的网络库继承者NSURLSession后 ...

  6. sf中schedule设定

    博客园龄有两年多了,看了一下我发的文章数和最后发布的日期,不禁的心头一怔,已经有一年都没有写更新博客了.突然想起一个句子好像说的是我:间歇性踌躇满志,持续性懒惰等死.最近也看到一位好朋友的qq个性签名 ...

  7. 通过mvn archetype:generate创建Maven项目模板慢的问题

    通过mvn archetype:generate这种交互方式来创建Maven项目模板的时候,经常会长时间卡在Generating project in Interactive mode这一行提示(图1 ...

  8. Valid Number--LeetCode

    class Solution { public: bool isNumber(string s) { if(s == " ") return false; ; ; while(s[ ...

  9. 关于安装第三方模块和PILLOW

    看廖雪峰老师这一节的教程卡在这里挺久了 在谷歌上了搜了很久,最后根据这个教程上解决了这个问题 http://www.yihaomen.com/article/python/566.htm 觉得自己好蠢 ...

  10. scp免密码传送文件

    一.单向 ssh-keygen -t rsa 单向无密码访问远程服务器操作比较简单,比如服务器A需要无密码访问服务器B(A–>B),那么只需要在服务器A生成密钥对,将生成的公钥上传到服务器B的相 ...