微信机器人的设计和实现.doc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机器人 设计 实现
- 资源描述:
-
闽江学院 本科毕业论文(设计) 题 目 基于微信公众平台Web应用- 微信机器人的设计与实现 学生姓名 彭秋源 学 号 5127101361 系 别 软件学院 年 级 2012 专 业 软件工程 指导教师 肖建飞 职 称 讲师 完成日期 2014.4.25 XII 闽江学院毕业论文(设计)诚信声明书 本人郑重声明: 兹提交的毕业论文(设计)《基于微信公众平台的Web应用-微信机器人的设计与实现》,是本人在指导老师 肖建飞 的指导下独立研究、撰写的成果;论文(设计)未剽窃、抄袭他人的学术观点、思想和成果,未篡改研究数据,论文(设计)中所引用的文字、研究成果均已在论文(设计)中以明确的方式标明;在毕业论文(设计)工作过程中,本人恪守学术规范,遵守学校有关规定,依法享有和承担由此论文(设计)产生的权利和责任。 声明人(签名): 2014年 月 日 摘 要 微信智能机器人是运行于微信公众平台并基于HTML5的WEB APP(网页第三方程序), “微信公众号+APP页+社会化CRM系统+基于SpringMVC3.0 Restful”的模式开发将成为未来个人app的趋势。在此设计主要是基于SpringMVC3.0 Restful为机器人的“智能回复”以及“微餐厅”模块实现信息化处理提供方案,本文从课题背景意义、SpringMVC3.0 Restful介绍、系统需求分析、概要设计和详细设计对整个系统的开发进行了描述。本系统采用B/S结构,以SpringMVC3.0 Restful+ Hibernate +Linux服务器作为基础,使用MySQL数据库及Hibernate 、nginx负载均衡、jetty服务器等技术进行开发。应用包含“智能机器人”基本信息的回复,以及“微餐厅”的点菜,查询,更新,结账,主页,在线预订,购物车,关于餐厅,我的订单,退出等功能。系统使用方面灵活,实现了基本点餐流程中的功能。 关键词:SpringMVC3.0 Restful;Hibernate ;nginx负载均衡;jetty服务器;maven项目管理工具 I Abstract MicroMessenger intelligent robot is running on MicroMessenger public platform and HTML5-based WEB APP (web third party programs), " MicroMessenger public number + APP page + Social CRM system + SpringMVC3.0 Restful based" model development will become a personal app future trends . In this design is mainly based on SpringMVC3.0 Restful robot "smart reply" and "micro-restaurant" module provides information processing solutions, this article from the background task significance, SpringMVC3.0 Restful introduction, system requirements analysis, preliminary design and detailed on the development of the design of the system described. The system uses B / S structure to SpringMVC3.0 Restful + Hibernate + Linux server as a basis for the use of the MySQL database and Hibernate, nginx load balancing, jetty server technology development. Applications include "smart robot" restore basic information, as well as "micro-restaurant" a la carte, query, update, checkout, home, online booking, shopping cart, on the restaurant, my order, exit and other functions. The use of a flexible system to achieve the basic ordering process functions. Key words: Automatic reply; smart restaurant; SpringMVC3.0 Restful; Hibernate; nginx load balancing; jetty server; maven project management tools IV 目 录 1 绪论 1 1.1 课题背景 1 1.2 课题意义 1 1.3需求分析 1 1.3.1功能性需求分析 1 1.3.2性能需求分析 2 2 相关技术 4 2.1 平台总体设计原则 4 2.1.1 Spring框架介绍 4 2.1.2 后台设计 5 2.2开发环境的介绍 9 2.2.1部署环境 9 3项目的需求分析 12 3.1 研究的目的及内容 12 3.2 消息智能回复 14 3.3 微餐厅智能管理系统 14 4数据库设计 16 4.1数据库描述 16 4.2静态数据 16 5系统详细设计 21 5.1微信公众平台后台模块设计 21 5.1.1服务端接受客户http request请求时序图 21 5.2 客户端相关模块设计 21 5.2.1主菜单时序图 21 5.2.2用户在线预订时序图 22 5.2.3用户查询购物车 22 5.2.4获取关于餐厅信息 23 5.2.5我的订单 23 6系统运行与实现 25 6.1微信公众平台客户端 25 6.1.1 用户使用登入主页面显示 25 6.1.2主菜单 25 6.1.3 在线预订 27 6.1.4购物车部分 28 6.1.5 关于餐厅部分 28 6.1.6我的订单 29 6.2微信公众平台服务端 29 6.2.1点击微餐厅的信息管理界面 29 6.2.2 后台微餐厅分类管理 30 6.2.3后台微餐厅菜单管理 30 6.2.4后台微餐厅添加菜单管理 30 6.2.5后台微餐厅添加订单管理 31 6.2.6后台微餐厅添加订单详情 31 7总结 33 致 谢 34 参考文献 35 1 绪论 1.1 课题背景 App为主的移动互联网时代正在被崛起的微信公众平台代替,微信公众账号慢慢地挑战移动App地位。微信的海内外用户已近超过了3亿,这个数字也在不断的增加,所以它也成为移动互联网时代新的宝藏。 从2011年腾讯公司推出微信公众平台的首个版本到现在海内外用户突破3亿,两年不到的时间微信就做到了。再次同时,现在期待已久的微信公众平台也在2012年上线了,时至今日各种围绕着微信公众平台的内应用和服务发展迅速,平台的生态圈也已经具有了很大哦规模。新的社会化媒体如微信、易信、weibo给传统获取信息的方式带来颠覆性改变。随着微信公众平台的开放和商业化建设,可以看到了越来越的资源和领域之间进行着生态链的整合。对于微信公众平台来说自媒体和企业应用市场将是今后发展的一个重要方向,越来越多的创新性企业进入微信公众平台。 1.2 课题意义 基于公众平台开发的智能机器人使用开放自定义菜单功能,是用户的移动客户端和服务器之间有了更好的交互。现在看来,通过开放出来的接口和自定义菜单的功能开放,微信公众帐号已经慢慢地有了APP的雏形。随着微信公众平台的功能不断开放,评论、好友关联关系接口等等,将得到一个更加丰富和完善的微信意识形态。在管理微信公众平台的时候会体会到他的短周期、低成本和简单方便的操作,但是如果从零开始去开发一个移动APP,首先要考虑的就是移动应用需要覆盖安卓和苹果这个两个平台,开发成本就不言而喻了,加上无底洞的推广成本,微信公众平台的优势就体现的淋漓尽致了,比如简单的形态,庞大的用户基数,可以非常有效地、低成本地迅速找到目标受众。 1.3需求分析 1.3.1功能性需求分析 设计是通过软件开发和软件工程的理论和方法,并结合学习专家系统知识,去完成基于微信公众平台开发的专家系统智能机器人,此专家系统注重解决的问题是用户通过系统提示输入相关信息得到需要的结果,在这里后台在使用专家系统的设计思想的时候,着重研究了通过用户的具体操作步骤,返回更加精确的信息,提高专家系统设计软件在移动互联网时代,给用户提供的全新的体验。 1、智能回复部分 个人信息、学院信息,用户可以根据服务器返回的提示信息,进行对象的动作,获取相应的消息 2、微餐厅部分 1) 点菜,查询,更新,结账,主页,在线预订,购物车,关于餐厅,我的订单,退出 2) 用户点击微餐厅后,显示主菜单页面,用户可以查看菜单 3) 用户可以进入在线预订页面填写订单信息进行用餐的在线预订 4) 用户可以在购物车中找到刚刚在线预订的信息,并且选择支付 5) 用户可以通过点击关于餐厅,查看餐厅的基本信息 6) 用户可以通过点击客户端上的我的订单,进行查看订单的基本信息 1.3.2性能需求分析 通常条件下,大数据量将使平台性能下降,系统响应速度变慢。可以通过以下几种方式提高平台的整体性能。 (一) 动静分离与数据缓存 通常情况下网站的性能往往会影响访问数据库的性能,导致数据的加载慢用户体验大幅的下降,而用户在访问移动互联网时,超过九成的用户操作只是为了读取信息。因此在做性能优化的时候可以考虑将内容固定的页面生成静态HTML页面。当用户需要访问时,可以直接读取保存的HTML静态文件,不必要和数据库进行交互。这样,就可以大幅度提高网站的性能。网页、图片、文件等,可以去选择CDN内容分发网络的方式进行发布,从而用户提高网站访问速度。数据的修改这里使用了memcache,作为系统的缓存。 (二) 合理规划网络环境 对用网络环境的规划,通常需要根据用户量和用户的行为去进行分析,从而计算出需要的网络带宽。针对不同的用户群体,选择合理的地点。如果区域特点明显,就需要搭建镜像。 (三) 使用负载均衡 在这里次项目的部署在linux服务器上,使用了nginx作为负载均衡,从而达到服务器资源的充分使用。 (四) 数据库 通常情况下不会让前端用户的行为直接操作数据库而是在中间加上缓存cache,但是网站性能的瓶颈很大程度上就是受数据库性能的影响。 数据库分表分库:在同一张表里通常需要降低数据库的I/O的次数来提高性能;随着数据库中数据条目的不断增加,查询的效率和性能往往会低下时,横向分表策略,可以在单个表中减少数据条目的数量。 充分利用索引:建立查询索引,如图 1-1。 图 1-1 索引 (五)安全性需求 在移动互联网的时代,后台网站往往是暴露在互联网环境中的,安全问题面临这个非常大的挑战大。此系统使用了spring security 框架 以及身份验证oauth,来加强系统的服务器、数据传输、数据存储等方面的访问安全性。 36 2 相关技术 2.1 平台总体设计原则 * 代码的重用:Spring Framework最为核心的设计目标就是实现代码的复用,可以使编码成本大大降低,从而避免了重复的劳动。 * 层次划分明确:在整个框架中每一个模块的设计相互独立,降低代码之间的耦合性。部件细化,高类聚、低耦合。 * 高效、安全、延展性强 2.1.1 Spring框架介绍 Spring 是一个优秀的开源框架,致力于解决企业级别应用程序的开发复杂性而创建的框架。其层次分明的分层架构就是spring框架的主要优势之一,spring的分层架构随意使用任意一个组件,同时为 javaEE企业级应用程序的开发提供集成的框架。 Spring 框架是一个用7个定义完成的模块组成的分层架构。基本模块构建在Spring Core之上,Spring Core又定义了创建、配置和管理 bean 如图2-1所示: 图2-1 Spring系统框架 核心容器:核心容器提供 Spring 系统框架的功能都是由Spring Core提供的。BeanFactory是Spring Core的主要组件,主要由工厂模式的实现。应用程序的依赖性规范和基本配置与实际的代码程序分开,是因为BeanFactory使用了控制反转模式。 Spring 上下文:Spring 上下文是一个配置文件,主要是把上下文信息提供给 Spring 框架。这些信息包括一些服务服务,例如 Email、国际化语言、校验和调度等等。 Spring AOP:把面向方面的编程功能集成到了 Spring 框架,就是Spring AOP的主要特性,Spring AOP通过一些简单的配置去管理特性。通常可以使 Spring 框架管理的任何对象都去支持Spring AOP,而且他提供了事务管理服务在应用程序里。使用 Spring AOP,可以将事务管理集成到应用程序中,而不去依赖EJB组件。 Spring DAO:异常层次结构用来管理异常处理以及不同的数据库供应商抛出的一些错误消息,而异常层次结构是用JDBC DAO的抽象层提供的,直接简化了错误处理,极大地降低了异常代码编写的数量。 Spring ORM:iBatis 、JDO、Hibernate 他们和Spring框架一起使用,都去遵从Spring的事务管理和Dao的异常层次结构,从而提供了 ORM 的对象关系工具。 Spring Web 模块:通常应用程序上下文模块之上是建立的Web模块,主要是为了为基于 Web 的应用程序提供了必须的上下文。同时Spring Web 模块还简化将请求参数绑定到对象的工作。 Spring MVC 框架:已经融合在Spring Web Flow里面的Spring MVC属于SpringFrameWork的后续产品,而Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块。Spring MVC 分离了控制器、模型对象以及处理程序对象的角色,从而使它们更容易进行定制 2.1.2 后台设计 (1) Web Framework:MVC框架、同时使用了SpringMVC3.0 Restful的风格 Javascript Library:前段大量用jquery,在这里Framework 的出现是为了解决一个问题,关系数据库的数据与对象的mapping关系 CSS Framework :使用了Twitter Bootstrap,简便的布局能力和基本的页面美化 图 2-2 后台设计的部分展示 (2) WebService Restful Service:这里后台直接使用Spring MVC架构更简单,大量使用spring注解。 如果追求极致的性能标,直接写Servlet也可以。下例是service实现类使用spring注解 @Service("storeService") @Transactional(readOnly = true) public class StoreServiceImpl implements StoreService{ @Resource(name="storeDao") private StoreDao storeDao; @Resource(name="parlorDao") private ParlorDao parlorDao; @Resource(name="gtableDao") private GtableDao gtableDao; @Override @Transactional(readOnly = false,propagation = Propagation.REQUIRED) public boolean GtableSave(Gtable gtable) { gtable.setCrtDate(new Date()); gtable.setUpDate(new Date()); gtable.setStatus(Gtable.STATUS_VALID); gtableDao.save(gtable); return true; } } (3) DateBase 数据库设计的一般性原则: 用项目中的实体类和表做关联映射,不去建立任何的外键,是为了方便数据的操作以及维护。 为了便日后管理通常在表名前面添加前缀。如有几十个表,他们之间的联系比较紧密,就可以使用相同的前缀。表名小写。下例子为系统设计的一个实体类,用实体类来对表进行映射关联,表名设计为t_store @Entity @Table(name = "t_store") public class Store extends BaseEntry { private static final long serialVersionUID = 1L; /** * 店铺id */ @Id @GeneratedValue(strategy = GenerationType.AUTO) @Column(name = "id") private Integer shopId; /** * 租户id */ @Column(name = "uid") private String uid; /** * 店铺编号 */ @Column(name = "t_shop_number") private String shopNumber; /** * 店铺名称 */ @Column(name = "t_name") private String name; /** * 包厢 */ @OneToMany(fetch = FetchType.LAZY, targetEntity = Gtable.class, cascade = { CascadeType.PERSIST, CascadeType.REMOVE, CascadeType.MERGE }) @JoinColumns(value = { @JoinColumn(name = "t_shop_number", referencedColumnName = "t_shop_number", updatable = false) }) private List<Gtable> gtables= new ArrayList<Gtable>(); } 图 2-3 映射关联 (4)Test Unit Test: 使用JUnit作为测试框架。AssertJ 是目前最好的Assert语句库。使用JUnit用于后台的service的测试使用,使用注解@Test @ContextConfiguration(locations = {"classpath:/application.xml"}) public class CateringTest extends AbstractTransactionalJUnit4SpringContextTests{ @Resource(name = "classService") private ClassService classService; @Resource(name="ordermealService") private OrdermealService ordermealService; @Test public void test1(){ System.out.println(ordermealService.orderCount("11144111")); } public void test(){ List<Series> series = classService.findAllSeries("11111111","1"); for (int i = 0; i < series.size(); i++) { System.out.println(series.get(i).getKinds().get(0).getName()); } } } (5) Development Environment 使用jdk6,版本不是特别好 使用jetty作为web服务器,而不是tomcat ,非常好的嵌入式版本,通常在做集成测试的时候不需要部署项目直接就可以开跑。开发时直接自己在代码里启动了,省下打包拷贝War文件的时间。 使用maven作为自己的项目管理工具。 Linux cenos 作为服务器 Nginx 作为负载均衡,下面将详细介绍 Mvn clean install –Dmaven.test.skip=true Mvn clean jetty:run Mvn clean package –Dmaven.test.skip=true 2.2开发环境的介绍 2.2.1部署环境 (1) 项部署linux下,打war包。 Mvn clean install –Dmaven.test.skip=true Mvn clean jetty:run Mvn clean package –Dmaven.test.skip=true 图2-4 项目打成war包 上传项目到服务器,解压Jar –xvf saas-1.0.0.war Scp target/saas-1.0.0.war www@192.168.1.43:/home/www/wexin/webapps/root 图2-5 上传打包项目到服务器 (2) web服务器jetty在linux下的配置,配置使用8080端口,使用jetty做servlet容器。 <Call name="addConnector"> <Arg> <New class="org.mortbay.jetty.nio.SelectChannelConnector"> <Set name="port"><SystemProperty name="jetty.port" default="8080"/>Set> <Set name="maxIdleTime">30000Set> <Set name="Acceptors">2Set> <Set name="confidentialPort">8443Set> New> Arg> Call> (3) Linux服务器防火墙的管理,开放8080端口,需要切换到root权限。 Vi /etc/sysyconfig/iptables Service iptables restart -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 2121 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 1886 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 8886 -j ACCEPT -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 554 -j ACCEPT Service iptables restart 平滑重启 (4) nginx负载均衡,代理端口和反向代理,后台项目部署在服务器上使用的代理端口。 Proxy_pass http://weixin http { upstream weixin{ server 192.168.1.43:8080; } server{ listen 80; server_name ; access_log logs/asone_imac.access.log; error_log logs/asone_imac.error.log info; client_body_buffer_size 128k; proxy_connect_timeout 600; proxy_read_timeout 600; proxy_send_timeout 600; proxy_buffer_size 256k; proxy_buffers 8 256k; proxy_busy_buffers_size 512k; proxy_temp_file_write_size 512k; location / { proxy_pass http://weixin; proxy_http_version 1.1; proxy_set_header Connection ""; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_buffering on; client_max_body_size 10m; } } } (5) MySQL数据库。 MySQL是一个关系数据库管理系统,由瑞典公司公司开发,现在属于甲骨文公司。Mysql是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。 3 项目的需求分析 3.1 研究的目的及内容 设计是通过软件开发和软件工程的理论和方法,并结合学习专家系统知识,去完成基于微信公众平台开发的专家系统智能机器人,此专家系统注重解决的问题是用户通过系统提示输入相关信息得到需要的结果,在这里后台在使用专家系统的设计思想的时候,着重研究了通过用户的具体操作步骤,返回更加精确的信息,提高专家系统设计软件在移动互联网时代,给用户提供的全新的体验。 本系统设计的结构图,如图3-1所示: 指令配置 信息平台 智能回复 接口平台 回复机器人 报文处理 订餐平台 报文封装 彭秋源服务号 专家系统管理平台 微餐厅管理 信息管理 会员管理 图3-1结构图 基于微信公众平台开发的专家系统智能机器人,在此主要有以下俩个方面: 1、智能回复部分 个人信息、学院信息,用户可以根据服务器返回的提示信息,进行相应的动作,获取精确的消息。 2、微餐厅部分,这里是专家系统的后台设计与移动互联网前段设计的一个具体体现, 演示了用户通过移动设备与后台专家系统的交互,从而完成一系列的动作,获取相关的信息 (1)点菜,查询,更新,结账,主页,在线预订,购物车,关于餐厅,我的订单,退出。 (2)用户点击微餐厅后,显示主菜单页面,用户可以查看菜单。 (3)用户可以在在线预订页面填写信息进行在线预订。 (4)用户可以在购物车中查找在线预订的信息,并且选择支付。 (5)用户可以通过点击关于餐厅,查看餐厅的基本信息。 (6)用户可以通过我的订单查看,所下订单的基本信息。 3、对此系统功能分析,功能模块图如图3-2: 微信专家系统上的智能订餐模块 退出 我的订单 主页 点菜 查询 结帐 更新 关于餐厅 在线预订 购物车 分类 菜单 桌位 下单 加菜 预订餐桌 图3-2 智能订餐功能模块图 4、对此系统功能分析,智能订餐模块系统活动图。 根据系统设计作出系统活动图,当顾客通过移动设备进入彭秋源微信服务号时,点击微餐厅查看需要预订的菜系,点餐完毕后,订单交由微信机器人进行消息报文的解析,顾客预订下单完毕后至微信专家系统后台对消息进行处理,整个订餐过程结束。如图3-3所示: 微信专家系统后台 彭秋源服务号 订餐用户 提供菜单 订餐 接受订单 专家系统记录后返回 提交订单给后台 用户选择菜系 图3-3智能订餐模块系统活动图 3.2 消息智能回复 1) 用户关注或者取消关注时,微信的推送消息。 2) 用户主动发的上行的消息推送,此时,可以处理消息。比如,根据用户所发消息的关键词,触发自动回复。自定义菜单消息、个人介绍、闽院介绍等。 微信公众平台专家系统消息分发模型: 订餐平台 CMS平台 核心组件 XML报文封装 内容服务提供 指令适配转发 XML报文解析 图3-4微信公众平台专家系统消息分发模型 3.3 微餐厅智能管理系统 服务器端的微餐厅模块主要包括以下几部分:点菜,查询,更新,结账,主页,在线预订,购物车,关于餐厅,我的订单,退出,它们各自的功能如下所述: (1) 点菜:服务员开桌、点菜、下单 (2) 查询:用户可以通过主页菜单选择需要的主食、酒水 和 私房菜 (3) 主页:默认是菜单页面、显示主页、在线预订、购物车、关于餐厅、我的订单 (4) 结帐:用户在线预订后,点击下单购买 (5) 在线预订:用户自己填写基本信息,预订时间、用餐人数、手机号码、分店选择、预约座位、姓名、性别、备注说明 (6) 购物车:用户可以看见自己的已选择餐品,用户可以选择外送或者店内就餐 (7) 关于餐厅:微餐厅的基本信息,电话、地址 (8) 我的订单:现实用户的订单信息、是否有被处理、订单号、订座信息等 (9) 退出:安全退出 4 数据库设计 4.1数据库描述 本系统服务端采用MySQL数据库,客并提供了客户端数据与服务端数据的同步功能,提高了程序的运行效率。 服务端有系统用户表、商品表、分类表、菜谱表、订单表、订单明细表; 客户端有餐桌表、菜谱表,当服务端的数据改变时,需要通过更新及时将服务端的数据动态的更新到客户端以保持数据一致。 4.2静态数据 图4-1 数据类图 表4-1 用户表t_user 字段名称 Code 类型 宽度 说明 id Id bigint 11 编号(登录),主键,自加 门店Id Store_id varchar 255 使用着的id 登录名 Login_name varchar 20 Name 邮箱 email varchar 200 Email 密码 password varchar 255 登录密码 盐值 salt varchar 255 密码盐值加密 角色 roles varchar 10 Admin user 创建时间 crtDate Date 创建时间 更新时间 upDate Date 更新时间 状态 status int 1 状态 表4-2 微菜馆菜单表t_gmenu 字段名称 Code 类型 宽度 说明 id gmenuId bigint 11 编号(登录),主键,自加 分类 seriesId varchar 255 分类id 一级分类 Login_name varchar 20 大分类 二级分类 email varchar 200 小分类 租户id password varchar 255 租户的id 菜名 salt varchar 255 菜名 图片 roles varchar 10 缩略图 配料 crtDate Date 配料 价格 upDate Date 价格 积分 status int 1 积分 介绍 intr Varchar 255 介绍 份量 volume Varchar 50 份量 表4-3 微菜馆订座表t_book 字段名称 Code 类型 宽度 说明 Id bookId bigint 11 编号(登录),主键,自加 预约时间 date Date 预约时间 人数 number Int 10 人数 店铺编号 shopNumber Int 200 店铺编号 租户id password Int 100 租户的id 座位 seat varchar 50 座位 手机号 phone varchar 50 手机号 姓名 name Varchar 50 姓名 性别 sex Varchar 50 性别 定金 payment int 50 定金 备注 remark Varchar 255 备注 微信号 fromUserName Varchar 50 微信号 表4-4 微菜馆购物车 t_cater_cart 字段名称 Code 类型 宽度 说明 购物车id cartId bigint 11 编号(登录),主键,自加 菜单id gmenuId bigint展开阅读全文
咨信网温馨提示:1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。




微信机器人的设计和实现.doc



实名认证













自信AI助手
















微信客服
客服QQ
发送邮件
意见反馈



链接地址:https://www.zixin.com.cn/doc/2502202.html