﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-飞扬人生-文章分类-Sound Code</title><link>http://www.blogjava.net/Yang/category/9716.html</link><description>学者,所以修性也.视,听,言,貌,思,性之所有也.学则正,否则邪.
失败是因为放弃,不放弃就不会有失败.</description><language>zh-cn</language><lastBuildDate>Fri, 02 Mar 2007 11:49:41 GMT</lastBuildDate><pubDate>Fri, 02 Mar 2007 11:49:41 GMT</pubDate><ttl>60</ttl><item><title>Using DatabaseMetaDate and ResultSetMetaData</title><link>http://www.blogjava.net/Yang/articles/40073.html</link><dc:creator>飞扬</dc:creator><author>飞扬</author><pubDate>Sun, 09 Apr 2006 03:48:00 GMT</pubDate><guid>http://www.blogjava.net/Yang/articles/40073.html</guid><wfw:comment>http://www.blogjava.net/Yang/comments/40073.html</wfw:comment><comments>http://www.blogjava.net/Yang/articles/40073.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Yang/comments/commentRss/40073.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Yang/services/trackbacks/40073.html</trackback:ping><description><![CDATA[
		<p>
				<font color="#9acd32">example for using DatabaseMetaData and ResultSetMetaData</font>
				<br />package coreservlet;</p>
		<p>import java.io.*;<br />import java.sql.*;</p>
		<p>import javax.servlet.*;<br />import javax.servlet.http.*;</p>
		<p>/**<br /> *<br /> * @author DuYang<br /> * @version<br /> */<br />public class NorthwindServlet extends HttpServlet {<br />    <br />    /** Processes requests for both HTTP &lt;code&gt;GET&lt;/code&gt; and &lt;code&gt;POST&lt;/code&gt; methods.<br />     * @param request servlet request<br />     * @param response servlet response<br />     */<br />    <br />    /** A simple servlet that connects to a database and presents the results from the query in an<br />     *  HTML table.Ther driver,URL,username,,passwrd, and query are taken from input prarmeters.<br />     */<br />    protected void doPost(HttpServletRequest request, HttpServletResponse response)<br />    throws ServletException, IOException {<br />        response.setContentType("text/html");<br />        PrintWriter out=response.getWriter();<br />        String docType=<br />                "&lt;!DOCTYPE HTML PUBLIC \"-//W3C//DTD HTML 4.0 "+<br />                "Transitional//EN\"\n";<br />        String title="Northwind Results";<br />        out.println(docType+<br />                "&lt;HTML&gt;\n"+<br />                "&lt;HEAD&gt;&lt;TITLE&gt;"+title+"&lt;/TITLE&gt;&lt;/HEAD&gt;\n"+<br />                "&lt;BODY BGCOLOR=\"#FDF5E6\"&gt;&lt;CENTER&gt;\n"+<br />                "&lt;H1&gt;Database Results&lt;/H1&gt;\n");<br />        <font color="#0000ff">String driver=request.getParameter("driver");<br />        String url=request.getParameter("url");<br />        String username=request.getParameter("username");<br />        String password=request.getParameter("password");<br />        String query=request.getParameter("query");<br />        showTable(driver,url,username,password,query,out);<br /></font>        out.println("&lt;/CENTER&gt;&lt;/BODY&gt;&lt;/HTML&gt;");<br />    }<br />        public void showTable(String driver,String url,<br />                                 String username,String password,<br />                                 String query,PrintWriter out)<br />        {<br />           try<br />            {<br />                //load database driver if it's not already loaded.<br />               <font color="#0000ff"> Class.forName(driver);</font><br />                //Establish netword connection to database.<br />               <font color="#0000ff"> Connection connection=<br />                        DriverManager.getConnection(url,username,password);<br /></font>                //Look up info about the database as a whole.<br />                <font color="#008000">DatabaseMetaData dbMetaData=connection.getMetaData();</font><br />                out.println("&lt;UL&gt;");<br />               <font color="#008000"> String productName=<br />                        dbMetaData.getDatabaseProductName();<br />                String productVersion=<br />                        dbMetaData.getDatabaseProductVersion();</font><br />                out.println("&lt;LI&gt;&lt;B&gt;Database:&lt;/B&gt;"+productName+<br />                              "&lt;LI&gt;&lt;B&gt;Version:&lt;/B&gt;"+productVersion+"&lt;/UL&gt;");<br />                <font color="#0000ff">Statement statement=connection.createStatement();</font><br />                //Send query to database and store queries.<br />                <font color="#0000ff">ResultSet resultSet=statement.executeQuery(query);</font><br />                //Print result.<br />               <font color="#008000"> ResutlSetMetaData resultSetMetaData=<br />                        resultSet.getMetaData();<br /></font>                <font color="#008000">int columCount=resultSetMetaData.getColumnCount();</font><br />                out.println("&lt;TR&gt;");<br />                //Column index statrs at 1(a la SQL), not 0(a la Java).<br />                for(int i=1;i&lt;columnCount;i++)<br />                {<br />                    out.println("&lt;TH&gt;"+<font color="#008000">resultSetMetaDate.getColumnName(i));</font><br />                }<br />                out.println();<br />                //Step through each row, retrieving the data in each<br />                // column cell as String.<br />                for(int i=1;i&lt;columnCount;i++)<br />                {<br />                    out.println("&lt;TD&gt;"+<font color="#0000ff">resultSet.getString(i));<br /></font>                }<br />             out.println();<br />            }<br />             out.println("&lt;/TABLE&gt;");<br />          <font color="#0000ff">   connection.close();</font><br />        }<br />        catch(ClassNotFoundException e)<br />        {<br />            System.err.println("Error loading driver:"+e);<br />        }<br />        catch(SQLException e1)<br />        {<br />            System.err.println("Error connecting:"+e1);<br />        }<br />        catch(Exception ee)<br />        {<br />            System.err.println("Error with input:"+ee);<br />        }<br />    }<br />    private static void showResults(ResultSet results)throws SQLException<br />    {<br />        while(results.next())<br />        {<br />            System.out.println(results.getString(1)+"");<br />        }<br />        System.out.println("");<br />    }<br />    public static void printUsage()<br />    {<br />        System.out.println("Usage:PreparedStatements host"+"dbName username password"+<br />                "vendow [print].");<br />    }<br /> }</p>
		<p>
				<font color="#0000ff">NorthwindForm.htm</font>
				<br />
		</p>
		<h2>Query Input:</h2>
		<p>
		</p>
		<form action="/your servlet absolute root/coreservlet.NorthwindServlet">
				<table>
						<tbody>
								<tr>
										<td>Driver: 
</td>
										<td>
												<input size="25" value="sun.jdbc.odbc.JdbcOdbcDriver" name="driver" />
										</td>
								</tr>
								<tr>
										<td>URL: 
</td>
										<td>
												<input size="25" value="jdbc:odbc:Northwind" name="url" />
										</td>
								</tr>
								<tr>
										<td>Username: 
</td>
										<td>
												<input size="25" name="username" />
										</td>
								</tr>
								<tr>
										<td>Password: 
</td>
										<td>
												<input size="25" name="password" />
										</td>
								</tr>
								<tr>
										<td valign="top">Query: 
</td>
										<td>
												<textarea name="query" rows="5" cols="35">
												</textarea>
										</td>
								</tr>
								<tr>
										<td align="middle" cols="2">
												<input type="submit" value="Sending For Qeury" />
										</td>
								</tr>
						</tbody>
				</table>
		</form>
<img src ="http://www.blogjava.net/Yang/aggbug/40073.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Yang/" target="_blank">飞扬</a> 2006-04-09 11:48 <a href="http://www.blogjava.net/Yang/articles/40073.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Basic JDBC Example</title><link>http://www.blogjava.net/Yang/articles/40063.html</link><dc:creator>飞扬</dc:creator><author>飞扬</author><pubDate>Sun, 09 Apr 2006 02:42:00 GMT</pubDate><guid>http://www.blogjava.net/Yang/articles/40063.html</guid><wfw:comment>http://www.blogjava.net/Yang/comments/40063.html</wfw:comment><comments>http://www.blogjava.net/Yang/articles/40063.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/Yang/comments/commentRss/40063.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/Yang/services/trackbacks/40063.html</trackback:ping><description><![CDATA[
		<font color="#000000">
				<font style="BACKGROUND-COLOR: #ffffff">T</font>
				<font style="BACKGROUND-COLOR: #ffffff">his exaple using JDBC-ODBC bridge drive program.Using table NorthwindTest.<br />NorthwindTest.java<br /><br />package skyey.snow;<br />import java.sql.*:<br /><br />/** A JDBC example that connects to the Microsoft Acess sample Northwind database,issues a simple SQL query to the<br />  *  employee table, and prints the results.<br />*/<br /><br /></font>
		</font>public class NorthwindTest {<br />    public static void main(String[] args)<br />    {<br />        String driver="sun.jdbc.odbc.JdbcOdbcDriver";<br />        String url="jdbc:odbc:Northwind";<br />        String username=""; //No username/password required<br />        String password=""; //for desktop access to MS Access.<br />        showEmployeeTable(driver,url,username,passwrd);<br />        <br />        /** Query the employee table and print the first and <br />         *  last names.<br />         */<br /><br />        public static void showEmployeeTable(String driver,String url,String username,String password)<br />        {<br />            try<br />            {<br />                //load database driver if it's not already loaded.<br />                Class.forName(driver);<br />                //Establish network connection to database.<br />                Connection connection=<br />                        DriverManager.getConnection(url,username,password);<br />                System.out.println("Employees\n"+"=============================");<br />                //Create a Statement for executing queries.<br />                Statement statement=connection.clearWarnings();<br />                String query=<br />                        "select firstName,lastName form employee";<br />                //send query to database and store results.<br />                ResultSet resultSet=statement.executeQuery(query);<br />                //print results.<br />                while(resultSet.next())<br />                {<br />                    System.out.println(resultSet.getString("firstName")+"");<br />                    System.out.println(resultSet.getString("lastName")+"");<br />                }<br />                connection.close();<br />            }<br />            catch(ClassNotFoundException e)<br />            {<br />                System.err.println("Error loading driver:"+e);<br />            }<br />            catch(SQLException e1)<br />            {<br />                System.err.println("Error with connection:"+e1);<br />            }<br />        }<br />    }<br />}<br /><br />from example we should konw how to write a simpleness class for Database connection,and in this example i find a very good method we should study that is we should connection two or much more class using :<br />public class NorthwindTest {<br />    public static void main(String[] args)<br />    {<br />        String driver="sun.jdbc.odbc.JdbcOdbcDriver";<br />        String url="jdbc:odbc:Northwind";<br />        String username=""; //No username/password required<br />        String password=""; //for desktop access to MS Access.<br />   <font color="#0000ff">     showEmployeeTable(driver,url,username,passwrd);</font><br />        <br />        /** Query the employee table and print the first and <br />         *  last names.<br />         */<br /><br />      <font color="#0000ff">  public static void showEmployeeTable(String driver,String url,String username,String password)</font><br />        {}<br />if we do like this our codes will became short,simpleness and beautiful.<img src ="http://www.blogjava.net/Yang/aggbug/40063.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/Yang/" target="_blank">飞扬</a> 2006-04-09 10:42 <a href="http://www.blogjava.net/Yang/articles/40063.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>