微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Access SQL Azure with JDBC/Hibernate

前篇文章介绍了如何将Tomcat及Web应用程序部署到Windows Azure,凡事只要起了头,接下来的工作就相对简单许多,本篇文章接续前篇,介绍如何透过JDBC来存取sql Azure。


Access sql Azure with JDBC/Hibernate

/黄忠成

Using JDBC with sql Azure

  前篇文章介绍了如何将Tomcat及Web应用程序部署到Windows Azure,凡事只要起了头,接下来的工作就相对简单许多,本篇文章接续前篇,介绍如何透过JDBC来存取sql Azure。

  开始之前,请透过Windows Azure的管理网站建立sql Azure数据库

图1

于其中建立PersonData数据库,接着建立PERSONS数据表,其结构如下图。

图2

接下来只要透过sql Azure的JDBC Driver便可连结到sql Azure了,而安装Windows Azure SDK Plug-In for Eclipse时,附带安装了MS sql Server 的JDBC Driver,

这个Driver也支持sql Azure,所以读者们不需额外下载,只需将其加入Web Project的Library即可。

图3

图4

另外,别忘记当封装WAR时,除了项目本体外,其余引用的Library是不会一并封入的,所以必须额外设定。

图5

图6

图7

完成后修改index.jsp来连结至sql Azure并列出数据库中的数据。


<%@ page language="java" contentType="text/html; charset=BIG5"
    pageEncoding="BIG5"%>
<%@ page import="java.util.*" %>
<%@ page import="java.sql.*" %>





Insert title here

<body>
<%
try{ 
	Class.forName("com.microsoft.sqlserver.jdbc.sqlServerDriver");
    Connection con = DriverManager.getConnection("jdbc:sqlserver://c95ouvaxn9.database.windows.net;DatabaseName=PersonData;"+
                                                 user=code6421@c95ouvaxn9;password=...;

    // Create and execute an sql statement that returns some data.
    String sql = "SELECT * FROM dbo.PERSONS";
    Statement stmt = con.createStatement();
    ResultSet rs = stmt.executeQuery(sql);

    // Iterate through the data in the result set and display it.
    while (rs.next()) {
       out.print(rs.getString(1) + " " + rs.getString(2)+"
"); } }catch(Exception e){ out.print("Error message: "+ e.getMessage()); } %> Hello Azure

执行后便可看到结果,为了测试,我事先在PERSONS数据表中添加了一笔数据。

图8

当然,在Windows Azure模拟器上执行的结果也一样。

图9

Access sql Azure with Hibernate

   能透过JDBC连结sql Azure的话,有名的OR Mapping Framework:Hibernate自然也可以使用啰,但过程有些小细节需要注意一下。

  先将Hibernate所需要的Library加入。

图10

别忘记,Deployment Assembly也要一并处理。

图11

接着加入Hibernate Configuration文件

图12

图13

图14

这里要注意一下,Hibernate Plug-In(需额外安装)产生的组态档对于sql Server的JDBC Driver描述有误,需修改如下。


<?xmlversion="1.0"encoding="UTF-8"?>






 

  com.microsoft.sqlserver.jdbc.sqlServerDriver

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐