Thrift项目Server端开发流程
Thrift项目Server端开发流程
首先,先了解工程中所有包的功能(见下图)

该图为用户中心项目的目录结构,以下依次介绍。
- 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,可以快速对单表操作。
- 2. src/main/resources
config:配置文件的存放包
log:存放log4j配置文件
mybatis:这里是mybatis的配置文件
spring:spring的配置文件
system:applicationContext配置文件
thrift:thrift客户端和服务器端的配置文件
thrift-IDL:存放thrift的IDL文件,该文件在系统中并无作用,只是方便开发人员快速理解接口的定义规范。
- 3. WEB-INF
存放logs,web.xml和proxool.xml(该文件放在config下编译时无法找到,所以目前只能放在这里)。
至此,项目的目录结构介绍完毕。
开发过程分两种方式:简单的单表操作、复杂操作。
注:能使用单表操作的尽量用单表操作实现,提高开发效率。
简单的单表操作具体流程:
单表操作可以直接使用mybatis生成的单表操作类来快速实现,具体操作如下

对于单表操作的业务,只需要添加上图中两个红圈内的内容即可快速完成单表操作。
LineAskServiceImpl:该类是LineAskService接口的实现,也是主要的功能模块。

上图已经简答的描述了整个单表操作的简单过程。
复杂操作过程:
红色区域为必须的文件,请按对应方式创建,类名约定规则:服务名后加对应的包名。
具体每个文件的功能在此不做介绍,spring框架的基础,请查阅相关文档。

- dao的内容如下:

2.Mapper的内容如下:

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

4.接口实现类的编写

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

有新的接口可以按红色区域依次增加新的服务接口bean,将bean添加到thriftserverlist里。操作完以上步奏后,就可以发布服务了。
Thrift项目Server端开发流程的更多相关文章
- Vue 框架-12-Vue 项目的详细开发流程
Vue 框架-12-Vue 项目的详细开发流程 首先,如果你还不了解 Vue 脚手架怎么搭建? 默认的环境中有哪些文件? 文件大概是什么作用? 那么,您要先查看之前的文章才有助于你理解本篇文章: Vu ...
- vue项目搭建和开发流程 vue项目配置ElementUI、jQuery和Bootstrap环境
目录 一.VUE项目的搭建 1. 环境搭建 2. 项目的创建和启动 二. 开发项目 1. 配置vue项目启动功能 2. 开发vue项目 (1)项目文件的作用 (2)vue项目开发流程 (3)vue项目 ...
- 也谈基于Web的含工作流项目的一般开发流程
项目包含的通用模块代码等我有时间一并剥离贡献出来(基于WebSocket的通知引擎,工作流整合模块,自定义表单,基于RBAC权限设计),最近太忙了,Web项目有一段时间没碰,有点生疏的感觉,主要在忙G ...
- C# web server的开发流程
http://blog.csdn.net/h0322/article/details/4776819
- iOS项目的一般开发流程
- LoRaWAN协议(三)--Server端数据协议
LoRaWAN Server 端架构 LoRaWAN 的server包括 NS(Network server).AS(application server).CS(Custom server).... ...
- 移动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 ...
- 分享 koa + mysql 的开发流程,构建 node server端,一次搭建个人博客
前言 由于一直在用 vue 写业务,为了熟悉下 react 开发模式,所以选择了 react.数据库一开始用的是 mongodb,后来换成 mysql 了,一套下来感觉 mysql 也挺好上手的.re ...
- iOS项目的目录结构和开发流程
转自无网不剩的博客 网上相关的资源不多,开源的且质量还不错的iOS项目也是少之又少,最近正好跟同事合作了一个iOS项目,来说说自己的一些想法. 目录结构 AppDelegate Models Ma ...
随机推荐
- Remote小Demo
Demo基于http://www.cnblogs.com/zhili/p/NETRemoting.html RemotingObj using System; using System.Collect ...
- Hibernate 异常 集锦
异常1.Error parsing JNDI name [foo] 异常信息摘要: org.hibernate.engine.jndi.JndiException: Error parsing JND ...
- MySQL的备份和恢复
MySQL的备份和恢复 备份数据:mysqldump –uroot –p123456 dbname table [option] > dbname.sql mysqldump常用参数option ...
- C# lesson2
一.C#数据类型 1.值类型 包括数据相关(short.long.int .double.float).布尔(bool).枚举 2.引用类型 Object .对象.数组.字符串 二.存储方式 值类型 ...
- eclipse怎么连接到MySQL中的表!!!!!
简介: 用eclipse编写的好的代码,我们怎么才能连接到数据库呢?对于初学者,特别是在连接数据库这块经常会发生一些莫名的错误,一般来说,归根是我们连接数据库这一过程发生错误.那么我们如何来解决呢?那 ...
- “System.BadImageFormatException”类型的未经处理的异常在 PurchaseDevices.Access.dll 中发生 其他信息: 未能加载文件或程序集“System.Data.SQLite, Version=1.0.66.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139”或它的某一个依赖项。试图加载格式不正确
引用sqlite的程序集时,有时会报如下异常: "System.BadImageFormatException"类型的未经处理的异常在 PurchaseDevices.Acces ...
- Java jvm 原理
1.Java语言运行的过程 Java语言写的源程序通过Java编译器,编译成与平台无关的‘字节码程序’(.class文件,也就是0,1二进制程序),然后在OS之上的Java解释器中解释执行. 也相当与 ...
- 第七十一,CSS颜色与度量单位
CSS颜色与度量单位 学习要点: 1.颜色表方案 2.度量单位 本章主要探讨HTML5中CSS颜色和度量单位等问题,包括颜色的选取方式.相对长度和绝对长度等. 一.颜色表方案 1 颜色的表现形式主 ...
- git-bash下composer命令无法使用的问题
git-bash下composer命令无法使用的问题 已经安装composer,写好composer.bat,并且设置好了path,在cmd下可以正常使用,但是在git-bash里面不行,显示如下提示 ...
- HDU 1564 Play a game
Description New Year is Coming! ailyanlu is very happy today! and he is playing a chessboard game wi ...