当前位置: 首页 > 图文教程 > 网络编程 > JSP > Jdbc连Sybase数据库的几种方法

JSP
我认为JSP有问题(上)
我认为JSP有问题(下)
jsp“抓”网页代码的程序
关于在bean里面打印html的利弊看法
bean里面如何打印到html页面
jdbc3中的RowSet 接口规范
Apusic Application Server1.0中jsp源代码泄漏漏洞
Unify的eWave ServletExec拒绝服务漏洞
通过提交超长的GET请求导致IBM HTTP Server远程溢出
在HTTP请求中添加特殊字符导致暴露JSP源代码文件
Resin 1.2 重要源代码暴露漏洞
多中WEB服务器的通用JSp源代码暴露漏洞
Tomcat 暴露JSP文件内容
IBM WebSphere Application Server 暴露JSP文件内容
JRun 2.3.x 范例文件暴露站点安全信息
BEA WebLogic 暴露源代码漏洞
IBM WebSphere Application Server 3.0.2 存在暴露源代码漏洞
Tomcat 3.1 存在暴露网站路径问题
Sun Java Web Server 能让攻击者远程执行任意命令
Netscape 修复 JAVA 安全漏洞

JSP 中的 Jdbc连Sybase数据库的几种方法


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 99 ::
收藏到网摘: n/a

1.单用一个JSP文件测试SYBASE jconnect-5_2 JDBC数据库接口

<%@ page contentType="text/html;charset=GB2312" %><%@ page import="java.sql.*" %><HTML><HEAD><TITLE> JSP测试SYBASE jconnect-5_2 JDBC数据库接口 </TITLE><META NAME="Generator" CONTENT="EditPlus2.11"><META NAME="Author" CONTENT="naxin"></HEAD><BODY><center>JSP测试SYBASE jconnect-5_2 JDBC数据库接口</center><BR><BR><table border=3 align=center ><%Class.forName("com.sybase.jdbc2.jdbc.SybDriver");String url ="jdbc:sybase:Tds:localhost:2638"; Connection conn= DriverManager.getConnection(url, "dba","sql"); Statement stmt=conn.createStatement(); String sql="select emp_lname,dept_id,street,city,state from employee order by emp_lname"; ResultSet rs=stmt.executeQuery(sql); while(rs.next()) {out.print("<TR><TD>"+rs.getString("emp_lname")+"</TD>");out.print("<TD>"+rs.getString("dept_id")+"</TD>");out.print("<TD>"+rs.getString("street")+"</TD>");out.print("<TD>"+rs.getString("city")+"</TD>");out.print("<TD>"+rs.getString("state")+"</TD></TR>");}%> </table><BR><HR><%out.print("数据库操作成功,恭喜你");%> <%rs.close(); stmt.close(); conn.close(); %> </BODY></HTML>

2.再用JSPJava Bean的方法:
JSP Code:<%@ page contentType="text/html;charset=GB2312" %><%@ page import="java.sql.*" %><HTML><HEAD><TITLE> </TITLE><META NAME="Generator" CONTENT="EditPlus2.11"><META NAME="Author" CONTENT="naxin"></HEAD><BODY><jsp:useBean id="sybase" scope="page" class="test.sybconn" /><%ResultSet rs=sybase.Query("select * from tjck_dh"); while(rs.next()) {out.print("|"+rs.getString("name")+"|");out.print(rs.getString("card_no")+"|");out.print(rs.getString("amount")+"|");out.print(rs.getString("home_call")+"|");out.print(rs.getString("office_call")+"|<br>");}rs.close(); %><HR>Bean的代码:package test;import java.sql.*;public class sybconn {// String sDBDriver = "com.sybase.jdbc2.jdbc.SybDriver"; String sConnStr = "jdbc:sybase:Tds:localhost:2638";// String user="dba";// String passwd="sql";Connection conn = null;ResultSet rs = null;public ResultSet Query(String sql) throws SQLException,Exception {Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();conn = DriverManager.getConnection(sConnStr,"dba","sql");Statement stmt = conn.createStatement();rs = stmt.executeQuery(sql);return rs;}}

3.
利用JDBC(SYBAE jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例:
//// 一个简单的利用JDBC(SYBAE jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例// 执行的SQL语句是" select * from employee " ,可以改成自己所需的.// 运行方式为: c:\> java JDBCTest //import java.awt.*; import java.sql.*; // 在使用JDBC之前,必须引入JAVASQLclass JDBCTest extends Frame {TextArea myTextArea;public JDBCTest () {//设定程序的显示界面super("一个简单的利用JDBC(jconnect-5_2)查询Sybase ASA7.0中数据的图形化Java程序范例");setLayout(new FlowLayout());myTextArea = new TextArea(30,80);add(myTextArea);resize(500,500);show();myTextArea.appendText("数据库查询中,请等待......\n");}void displayResults(ResultSet results) throws SQLException {//首先得到查询结果的信息ResultSetMetaData resultsMetaData = results.getMetaData();int cols = resultsMetaData.getColumnCount();//将等待信息清除myTextArea.setText("");//显示结果while(results.next()) {for(int i=1;i<=cols;i++) {if(i>1)myTextArea.appendText("\t");try{myTextArea.appendText(results.getString(i));}// 捕获空值时产生的异常catch(NullPointerException e){}}myTextArea.appendText("\n");}}public boolean handleEvent(Event evt) {if (evt.id == Event.WINDOW_DESTROY) {System.exit(0);return true;}return super.handleEvent(evt);}public static void main(String argv[]) throws SQLException,Exception {//设定查询字串String queryString = "select * from employee";JDBCTest myJDBCTest = new JDBCTest();//加载驱动程序Class.forName("com.sybase.jdbc2.jdbc.SybDriver").newInstance();//建立连接,localhost为主机名,dba为用户名,sql为密码Connection myConn = DriverManager.getConnection("jdbc:sybase:Tds:localhost:2638","dba","sql");Statement myStmt = myConn.createStatement();//执行查询ResultSet myResults = myStmt.executeQuery(queryString);myJDBCTest.displayResults(myResults);//关闭所有打开的资源myResults.close();myStmt.close();myConn.close();}}