微信对企业号的定义:
企业号是微信为企业客户提供的移动应用入口。它帮助企业建立员工、上下游供应链与企业IT系统间的连接。利用企业号,企业或第三方合作伙伴可以帮助企业快速、低成本的实现高质量的移动轻应用,实现生产、管理、协作、运营的移动化。
本系列博客将全方位的讲解第三方应用介入微信平台的相关细节,有兴趣的朋友可以一起探讨。
首先来讲讲微信平台的工作模式或者实现原理:
微信: 从字面上来翻译,就是 微小的信息, 当然还有另外一层隐晦的含义: 不要过多相信。这个要归咎要中文的博大进深啦。
言归正题,微信 其实就是一段简短的信息,和微博应该是同一概念。 微信用户关注一个企业之后,可以访问授权过的应用(App),在这些应用里面用户输入一段文字,发送一张图片或者发布一段语音,视频,微信服务器接受到这个消息之后,将消息
转发给第三方云服务, 第三方云服务提供接受消息的接口,收到消息后可以对该消息进行处理,比如返回被动消息,或者主动发送消息给指定的部门或者人。微信服务器就相当于一个消息中间件,所有的第三方后台都是他的服务,他负责把用户消息和第三方
服务联系起来。
废话少说, 进入技术讲解部分。
我们使用的开发语言是JAVA,代码管理使用的是Maven, 使用的框架是Spring MVC
在网上也搜过一些MVC的实现,我总觉得那些实现和普通的servlet没什么区别,没把Spring MVC的特点体现出来。
本节主要讲解JAVA Spring MVC开发环境的搭建
新建一个Maven项目
Next
选中第一个复选框,然后点Next
Package 选中war,点击Finish
看一下创建出来的项目:
配置Maven项目
接下来我们要把项目的依赖关系加入pom.xml中, 主要依赖: Spring MVC, Jackson, Dom4j 和Commons-codec
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.boyi.wx</groupId> <artifactId>wechat</artifactId> <version>1.0.0</version> <packaging>war</packaging> <name>wechat</name> <description>wechat</description> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>3.1.0.RELEASE</spring.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-webmvc</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId> <version>1.8.8</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-mapper-asl</artifactId> <version>1.8.8</version> </dependency> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.4</version> </dependency> <dependency> <groupId>commons-codec</groupId> <artifactId>commons-codec</artifactId> <version>1.9</version> </dependency> <dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6</version> </dependency> </dependencies> <build> <finalName>wechat</finalName> </build> </project>
修改项目的JRE System Libray,把他改成1.7的jdk
添加web和Spring配置
在webapp下面创建WEB-INF文件夹,并在WEB-INF中创建web.xml 和 dispatcher-servlet.xml
配置web.xml如下:
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0"> <display-name>wechat</display-name> <filter> <filter-name>CharacterEncoding</filter-name> <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class> <init-param> <param-name>encoding</param-name> <param-value>UTF-8</param-value> </init-param> <init-param> <param-name>forceEncoding</param-name> <param-value>true</param-value> </init-param> </filter> <filter-mapping> <filter-name>CharacterEncoding</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <context-param> <param-name>contextConfigLocation</param-name> <param-value> /WEB-INF/dispatcher-servlet.xml </param-value> </context-param> <listener> <listener-class>org.springframework.web.context.request.RequestContextListener</listener-class> </listener> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> </listener> <servlet> <servlet-name>dispatcher</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>dispatcher</servlet-name> <url-pattern>/*</url-pattern> </servlet-mapping> </web-app>
配置 dispatcher-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:c="http://www.springframework.org/schema/c" xmlns:cache="http://www.springframework.org/schema/cache" xmlns:context="http://www.springframework.org/schema/context" xmlns:sec="http://www.springframework.org/schema/security" xmlns:jee="http://www.springframework.org/schema/jee" xmlns:lang="http://www.springframework.org/schema/lang" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:p="http://www.springframework.org/schema/p" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.1.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-3.1.xsd http://www.springframework.org/schema/cache http://www.springframework.org/schema/cache/spring-cache-3.1.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.1.xsd http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-3.1.xsd http://www.springframework.org/schema/lang http://www.springframework.org/schema/lang/spring-lang-3.1.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.1.xsd http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-3.1.xsd"> <mvc:annotation-driven> <mvc:message-converters> <bean class="org.springframework.http.converter.StringHttpMessageConverter"> <property name="supportedMediaTypes"> <list> <value>text/html;charset=UTF-8</value> <value>text/plain;charset=UTF-8</value> </list> </property> </bean> <bean id="jsonHttpMessageConverter" class="org.springframework.http.converter.json.MappingJacksonHttpMessageConverter" /> </mvc:message-converters> </mvc:annotation-driven> <context:component-scan base-package="com.boyi"></context:component-scan> <bean class="org.springframework.web.client.RestTemplate"></bean> </beans>
到这里的话SpringMVC的项目已经搭建好了,至于为什么要这么配置请去搜索SpringMVC的相关知识,这里不做详解。
本节到此结束,下节将讲述如何开启微信企业号回调模式。
相关推荐
### 微信小程序对APP市场扰动的博弈论分析 #### 微信小程序的概念及其影响 微信小程序是由腾讯公司推出的一款应用程序,无需下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开...
本项目聚焦于“五子棋”的Java实现,通过博弈算法来实现智能对战功能。下面将详细介绍五子棋的基本规则、Java编程语言在游戏开发中的应用以及博弈算法的相关知识。 五子棋是一种双人对弈的策略型棋类游戏,双方轮流...
> 微信小程序,可以说是近半年来开发和运营者们讨论最多的话题之一。自己也尝试入坑玩了一把,感觉还挺有意思,非常适合生活服务和阅读类项目。 对于微信小程序的一些理解 : 小程序正如其名,小/轻。 是一套独立...
基于演化博弈的水生态PPP项目第三方监管策略.pdf
微信独立成为腾讯七大事业部之一,标志着腾讯内部的一次重大结构调整,同时也预示着新一轮的利益博弈。这次变革的主要知识点包括: 1. **微信的战略升级**:微信事业部的成立,表明微信从内部孵化项目晋升为企业...
微信小程序在此背景下应运而生,它们旨在提供一种轻量化、快捷的服务方式,集成各类常用APP的主要功能,以满足用户在存量博弈时代的需求。 小程序的崛起显著提升了用户粘性。目前,上线的小程序数量已超过58万个,...
【JAVA五子棋人机博弈游戏】是一款基于JAVA编程语言实现的简单互动游戏,它集成了人工智能算法,使得用户可以与计算机进行对弈。这款五子棋游戏的开发旨在教授和展示JAVA编程语言在游戏开发领域的应用,以及如何构建...
《微信与手机QQ的内部博弈:移动互联网时代的战略转变》 在互联网发展的浪潮中,微信与手机QQ的内部博弈成为了腾讯公司内部一个重要的议题。微信的崛起,以其简洁易用的特性,迅速席卷了移动互联网市场,对原有的...
《微信与手机QQ的内部博弈:腾讯的移动互联网转型之路》 在互联网世界中,腾讯作为巨头之一,其内部产品的竞争与协作一直是业界关注的焦点。尤其在微信崛起之后,与传统的手机QQ之间的关系变得尤为微妙。这场内部...
在当前的电子商务环境下,家电零售商与第三方物流的合作日益成为行业关注的焦点。文章“电商家电零售商与第三方物流合作行为的演化博弈分析.pdf”深入探讨了双方合作行为的演化博弈,揭示了在有限理性与信息不对称的...
第三方支付是指具有信誉保障和实力的独立机构,它们与各大银行签订协议,搭建一个与银行支付结算系统接口的交易支持平台,为用户提供网络支付服务。这种模式简化了支付流程,使消费者能够在一个界面上处理多种银行卡...
【Python微信机器人程序】是一个基于Python编程语言的项目,它实现了自动化的功能,如游戏算法、办公自动化以及Excel数据处理。这个项目展示了Python在实际应用中的强大能力,尤其是在提高工作效率和自动化任务执行...
在本项目中,我们关注的是一个使用Java编程语言开发的象棋游戏,这是一项课程设计或毕业设计任务,旨在帮助学生提升其Java编程技能并理解博弈理论。该项目的核心亮点在于,它可以直接运行,无需额外的配置,这为使用...
这篇名为“电商家电零售商与第三方物流合作行为的演化博弈分析”的论文深入探讨了这一领域的重要知识点。 首先,我们要理解博弈论的基本概念。博弈论是研究决策者之间互动行为的数学理论,尤其适用于分析在竞争和...