通过JAVA操作SAE上的MY SQL数据库

  最近着手微信公众平台开发,需要用到服务器,公司暂时还没自己的服务器,就只有去SAE上注册一个,新浪给用多久就用多久。今天需要用到SAE上的MY SQL数据库建立一个用户信息表,之前对服务器、MY SQL这块都没接触过,想做个功能,即使是小功能,也感觉无从下手。比如今天想创建一个用户信息表,就三个字段而已,创建一个数据库,创建一个表,循环加入数据就完事了,也就那么几个步骤,要是在android本地进行操作,就几行代码,十几分钟搞定的事。但就是由于不熟悉,搞个数据库搞了三个多小时,现在将用到的一次基本操作总结起来,方便以后使用。注:部分知识点来自网络。

  1.数据库创建与链接

    数据库的创建很简单,点击“管理MY SQL”进行数据库管理界面,输入表名、字段名称、数值大小,点击提交即可。

    数据库链接:直接上代码:

 

/**
	 * 获取Mysql数据库连接
	 * 
	 * @return Connection
	 */
	private Connection getConn() {
		Connection conn = null;
		 String dbDriver = "com.mysql.jdbc.Driver";   // 加载MySQL驱动
		 String dbUrl = "jdbc:mysql://w.rdc.sae.sina.com.cn:3307/app_tecsunweixin";   // app_tecsunweixin 为新浪app数据库名称
		 String dbUser = "n2xl2ozow5";           //应用首页中的access key
		 String dbPassword = "53whjwyzx33yw3hliw5y31jhmkzh11j054j433y2";    //应用首页中的secret key

		try {
			Class.forName(dbDriver);
			// 获取数据库连接
			conn = DriverManager.getConnection(dbUrl, dbUser, dbPassword);
		} catch (Exception e) {
			e.printStackTrace();
		}
		return conn;
	}

 

  2.添加数据:直接看代码:

 

/**
	 * 保存用户信息
	 * 
	 * @param request 请求对象
	 * @param number编号
	 * @param name 名字
	 * @param openid 加密后的名字
	 */
	public static void saveUserInfo(int number, String name, String openid) {
		String sql = "insert into user(number, name, openid) values (?, ?, ?)";
		try {
			Connection conn = new MySQLUtil().getConn();//取得连接
			PreparedStatement ps = conn.prepareStatement(sql);
			ps.setLong(1, number);
			ps.setString(2, name);
			ps.setString(3, openid);
			ps.executeUpdate();
			// 释放资源
			ps.close();
			conn.close();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

 

  3.数据库查询:直接看代码:

 

/**
	 * 根据用户名查询用户具体信息
	 * 
	 * @param name 用户名
	 * @return UserInfo
	 */
	public static UserInfo getUserInfo(String name) {
		UserInfo userInfo = null;
		String sql = "select number, name, openid from user where name=?";
		try {
			Connection conn = new MySQLUtil().getConn();
			PreparedStatement ps = conn.prepareStatement(sql);
			ps.setString(1, name);
			ResultSet rs = ps.executeQuery();
			if (rs.next()) {
				userInfo = new UserInfo();
				userInfo.setNubmer(Integer.parseInt(rs.getString("number")));
				userInfo.setName(rs.getString("name"));
				userInfo.setOpenId(rs.getString("openid"));
			}
			// 释放资源
			rs.close();
			ps.close();
			conn.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return userInfo;
	}

 

  可以在SAE上对数据库进行增删改查操作,在数据库管理界面点击“浏览”,即可看到数据库详细内容:

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。