關於微信公衆平臺確實是個很是好的東西,鑑於需要完畢這樣一個做業花了2天時間來研究這個,作出了一個簡單的東西。java
咱們選擇的語言是JAVA(固然PHP開發這個更簡單。只是我沒學,考慮時間成本而繼續用本身熟悉的)。所用的server是SAE(BAE也可以),以及一個微信公衆平臺測試帳號。http://mp.weixin.qq.com/debug/cgi-bin/sandbox?mysql
t=sandbox/login,點擊此處進入,用本身的微信掃描二維碼就可以申請到一個測試號。高級接口都可以使用,只用來測試是沒有不論什麼問題的。sql
關於微信公衆號的基礎知識以及基礎框架的搭建,請你們參考柳峯老師的博客:http://blog.csdn.net/lyq8479?viewmode=contents,很全面,絕對可用。依照老師的代碼就可以作出下圖的效果:數據庫
如下我主要說一下劉峯老師所沒有的講到的數據庫鏈接的部分,我在網上查了很多資料結果越查越糊塗。折騰了很久。因此我特地把本身的悲催經歷分享出來,讓陷入此中的童鞋可以高速頓悟,以及給在學習的童鞋一個參考。不要誤入歧途。api
我本來是在BAE經過簡單的JDBC試過。但是可能某個地方失誤,微信公衆平臺最大的缺點就是調試很是困難,我花的時間很少,沒找到什麼調試的方法。悲催的沒法成功,又不會調試,百度,看到很是多經過request.get("...")或者BaeEnv.getBaeHeader(BaeEnv.BAE_ ENV_ADDR_SQL_IP)等方式獲取host,port,username, password的文章,差點兒全試過了,都不行。服務器
終於的結果倒是這樣簡單。╮(╯▽╰)╭。微信
事實上很是easy,就是和咱們尋常在本地鏈接數據庫沒有不論什麼差異,如下直接貼代碼,(SAE的):app
import java.sql.Connection; import java.sql.SQLException; import java.sql.DriverManager; public class JDBCUtil { private String dbDriver = "com.mysql.jdbc.Driver"; // 與本地設置一樣 private String dbUrl = "jdbc:mysql://w.rdc.sae.sina.com.cn:3307/數據庫名稱"; // app_yanzel爲新浪app數據庫名稱,開通mysql服務後,經過[服務管理]-〉[MySql]->[管理MySql]中,查看數據庫名稱 private String dbUser = "新浪的access key"; // 爲[應用信息]->[彙總信息]->[key]中的access key private String dbPassword = "新浪的secret"; // 爲[應用信息]->[彙總信息]->[key]中的secret public Connection createConnection() throws Exception { Connection connection = null; try { Class.forName(this.dbDriver); } catch (ClassNotFoundException e) { e.printStackTrace(); throw e; } try { connection = DriverManager.getConnection(dbUrl, dbUser, dbPassword); } catch (SQLException e) { e.printStackTrace(); throw e; } return connection; } }
BAE的數據庫鏈接代碼例如如下:微信公衆平臺
public class JDBCUtil { Connection conn = null ; private Connection getConn(){ try { /*****1. 填寫數據庫相關信息(請查找數據庫詳情頁)*****/ String databaseName = "數據庫名"; String host = "sqld.duapp.com"; String port = "4050"; String username = "用戶名";//用戶名(api key); String password = "用戶密碼";//密碼(secret key) String driverName = "com.mysql.jdbc.Driver"; String dbUrl = "jdbc:mysql://"; String serverName = host + ":" + port + "/"; String connName = dbUrl + serverName + databaseName; /******2. 接着鏈接並選擇數據庫名爲databaseName的服務器******/ try { Class.forName(driverName); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } conn = DriverManager.getConnection(connName, username, password); }catch(SQLException e){ e.printStackTrace() ; } return conn; } /** * 關閉鏈接 * @param conn * @param stmt * @param rs * @throws Exception */ private void close(Connection conn)throws Exception{ if(conn != null){ conn.close(); conn=null ; } } }
經過微信公衆平臺的開發,咱們瞭解了這樣的新型的自媒體,確實很是強大,而且也挺好玩,還有很是多功能等待咱們去探索。框架