一、jsp连接Oracle8/8i/9i数据库(用thin模式)

testOracle.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String result = ""; // 查询结果字符串

String sql = "select * from test"; // SQL 字符串

// 连接字符串,格式: "jdbc:数据库驱动名称:连接模式:@数据库服务器ip:端口号:数据库SID"
    String url = "jdbc:oracle:thin:@localhost:1521:orcl";
    String username = "scott"; // 用户名
    String password = "tiger"; //密码

// 创建oracle数据库驱动实例
    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

// 获得与数据库的连接
    Connection conn = DriverManager.getConnection(url, username, password); 
    // 创建执行语句对象
    Statement  stmt = conn.createStatement();
    // 执行sql语句,返回结果集
    ResultSet  rs   = stmt.executeQuery(sql);

while ( rs.next() ) 
    {
        result += "\n 第一个字段内容:" + rs.getString(1) + "<BR>";
    }

rs.close(); // 关闭结果集
    stmt.close(); // 关闭执行语句对象
    conn.close(); // 关闭与数据库的连接
%>

<HTML>
<BODY>
  <%=result%>
</BODY>
</HTML>

二、jsp连接Sql Server7.0/2000数据库
testSqlServer.jsp如下

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:公司名称:数据库驱动名称://数据库服务器ip:端口号;DatabaseName=数据库名称"
    String url = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
    String username = "scott";
    String password = "tiger";

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

Connection conn = DriverManager.getConnection(url, username, password); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

%>

<HTML>
<BODY>

<% 
    while ( rs.next() ) 
    {
        %>
        第一个字段内容为:<%=rs.getStrisng(1)%><BR>
        <%
    }

rs.close();
    stmt.close();
    conn.close();
%>

</BODY>
</HTML>

三、jsp连接DB2数据库
testDB2.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:数据库驱动名称://数据库服务器ip:端口号/数据库名称"
    String url = "jdbc:db2://localhost:5000/sample";
    String username = "scott";
    String password = "tiger";

Class.forName("com.ibm.db2.jdbc.app.DB2Driver").newInstance();

Connection conn = DriverManager.getConnection(url, username, password); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

rs.close();
    stmt.close();
    conn.close();
%>

四、jsp连接Informix数据库 
testInformix.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:数据库驱动名称://数据库服务器ip:端口号/数据库名称:INFORMIXSERVER=服务器名;user=用户名;password=密码"
    String url = "jdbc:informix-sqli://123.45.67.89:1533/testDB:INFORMIXSERVER=myserver;user=testuser;password=testpassword";

Class.forName("com.informix.jdbc.IfxDriver").newInstance();

Connection conn = DriverManager.getConnection(url); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

rs.close();
    stmt.close();
    conn.close();
%>

五、jsp连接Sybase数据库 
testSybase.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:公司名称:数据库驱动名称:数据库服务器ip:端口号/数据库名称"
    String url = "jdbc:sybase:Tds:localhost:5007/tsdata";

Properties prop = System.getProperties();
prop.put("user", "userid"); // 用户名
prop.put("password", "user_password"); // 密码

Class.forName("com.sybase.jdbc.SybDriver").newInstance();

Connection conn = DriverManager.getConnection(url, prop); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

rs.close();
    stmt.close();
    conn.close();
%>

六、jsp连接MySQL数据库 
testMySQL.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:数据库驱动名称://数据库服务器ip/数据库名称?user=用户名&password=密码&使用Unicode=布尔值&字符编码=编码"
    String url = "jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1";
    String username = "scott";
    String password = "tiger";

Class.forName("org.gjt.mm.mysql.Driver").newInstance();

Connection conn = DriverManager.getConnection(url, username, password); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

rs.close();
    stmt.close();
    conn.close();
%>

七、jsp连接PostgreSQL数据库
testPostgreSQL.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<%
    String sql = "select * from test";

// 连接字符串,格式: "jdbc:数据库驱动名称://数据库服务器ip/数据库名称"
    String url = "jdbc:postgresql://localhost/soft";
    String username = "scott";
    String password = "tiger";

Class.forName(""org.postgresql.Driver").newInstance();

Connection conn = DriverManager.getConnection(url, username, password); 
    Statement  stmt = conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_UPDATABLE);
    ResultSet  rs   = stmt.executeQuery(sql);

rs.close();
    stmt.close();
    conn.close();
%>

下面是简单的数据库操作Javabean的代码:

DbWrapper.java
import java.sql.*;import java.util.*;publicclass DbWrapper
{// 定义连接池对象为静态变量,将一直存在,直到工作目录关闭。privatestatic DataSource ds =null;
// 1.用连接池的方式获得连接// 如果不是做多数据库程序,推荐使用此方法// 相关内容:在tomcat管理界面配置连接池publicstatic Connection openConnection()throws Exception
{// 只需要初始化1次if( ds ==null){
Context initContext =newInitialContext();
Context envContext =(Context) initContext.lookup("java:/comp/env");
DataSource ds =(DataSource) envContext.lookup("jdbc/MyDataSource");}return ds.getConnection();}// 2.用jdbc驱动获得连接// 相关内容:JSP数据库连接大全publicstatic Connection openConnection(
String driver,
String url,
String username,
String password)throws Exception
{
Class.forName(driver).newInstance();return DriverManager.getConnection(url, username, password);}publicstaticvoidcloseConnection(Connection conn)throws Exception
{if( conn !=null){
conn.close();}}
publicstaticintexecuteUpdate(String sql)throws Exception
{int count =;
Connection conn =null;
Statement stmt =null;try{
conn =openConnection();
stmt = conn.createStatement();
count = stmt.executeUpdate(sql);}catch( Exception e ){throw e;}finally{closeConnection(conn);}return count;}publicstatic List executeQuery(String sql)throws Exception
{
List list =newArrayList();
Connection conn =null;
Statement stmt =null;
ResultSet rs =null;try{
conn =openConnection();
stmt = conn.createStatement();
rs = stmt.executeQuery(sql);
ResultSetMetaData rsmd = rs.getMetaData();while( rs.next()){
Map map =newHashMap();for(int i =; i <= rsmd.getColumnCount(); i++){
map.put(rsmd.getColumnName(i), rs.getObject(i));}
list.add(map);}
}catch( Exception e ){
e.printStackTrace();}finally{if( rs !=null) rs.close();closeConnection(conn);}return list;
}}
// 1.对于insert, update, delete语句
int count = DbWrapper.executeUpdate(sql);
// 2.对于selete语句
java.util.List list = DbWrapper.executeQuery(sql);
// 方法一:按名字取值,注意大小写是严格区分的for(int i =; i < list.size(); i++){
java.util.Map map =(java.util.Map)list.get(i);
out.println(mag.get("column_name").toString());}
// 方法二:遍历取值for(int i =; i < list.size(); i++){
java.util.Map map =(java.util.Map)list.get(i);
for(java.util.Iterator it = map.keySet().iterator(); it.hasNext();){
String column_name = it.next().toString()); // 取值时注意null判断
out.println(column_name +" = "+ map.get(column_name) ==null?"": map.get(column_name).toString());}}

jsp数据库连接大全和数据库操作封装到Javabean的更多相关文章

  1. C# .NET更智能的数据库操作封装项目

    前面两篇文章介绍了框架的思路及里面大概的实现过程,那时候忘记上传项目,就补发一下.顺便介绍下框架使用方式,并分析下框架使用的优缺点. 先发一下前两章的链接 篇一:http://www.cnblogs. ...

  2. jsp JDBC连接MySQL数据库操作标准流程参考

    1. 此案例以帐号密码后台更新维护为例子,对数据库调取数据更新流程进行演示: 代码示例: <%@page import="java.io.IOException"%> ...

  3. PHP mysqli 扩展库(面向对象/数据库操作封装/事务控制/预编译)

    1.和mysql扩展库的区别: (1   安全性.稳定性更高 (2  提供了面向对象和面向过程两种风格 2.php.ini  中的  extension=php_mysqli.dll 解除封印 3.面 ...

  4. JSP 数据库连接类 MySql数据库

    数据库连接类的主要功能是连接数据库并且获得连接对象,以及关闭数据库.通过创建该类的实例,调用其中的方法,以避免重复操作. package chapter13; import java.sql.*; p ...

  5. Spring+hibernate+JSP实现Piano的数据库操作---5.JSP页面

    1.index.jsp <%-- Created by IntelliJ IDEA. User: lenovo Date: 2020/3/25 Time: 14:09 To change thi ...

  6. Spring+hibernate+JSP实现Piano的数据库操作---4.配置文件

    1.applicationContext.xml <?xml version="1.0" encoding="UTF-8"?> <beans ...

  7. python - 接口自动化测试 - MysqlUtil - 数据库操作封装

    # -*- coding:utf-8 -*- ''' @project: ApiAutoTest @author: Jimmy @file: mysql_util.py @ide: PyCharm C ...

  8. Spring+hibernate+JSP实现Piano的数据库操作---3.Piano实体类

    package com.entity; import org.springframework.stereotype.Component; import javax.persistence.*; @Co ...

  9. Spring+hibernate+JSP实现Piano的数据库操作---2.Controller+Service+Dao

    Controller package com.controller; import com.entity.Piano; import org.dom4j.rule.Mode; import org.s ...

随机推荐

  1. 从字节码角度分析Byte类型变量b++和++b

    1. 下面是一到Java笔试题: public class Test2 { public void add(Byte b) { b = b++; } public void test() { Byte ...

  2. mysql热数据加载管理

    5.6版本之后,提供了一个新特性来快速预热buffer_pool缓冲池.在my.cnf里面加入几个参数: innodb_buffer_pool_dump_at_shutdown = 1   --在关闭 ...

  3. JOIN从句

    MySQL基础表和数据 -- 5条数据 select * from test_a; -- 8条数据 select * from test_b; 内连接 -- 内连接,join,为inner join的 ...

  4. 实现Ecshop注册页面手机号唯一的验证

    如果Ecshop实现了用手机号码来登陆,那么就需要在注册时保证会员所填写的手机号是唯一的,也就是说手机号还未被注册,那么该怎么来检测填写的手机号是否注册过了呢? 一.参考ecshop检测邮箱 因为注册 ...

  5. Hadoop整理一(初识Hadoop)

    一.要点 1.Hadoop目的是让多台计算机同时解决一个问题 2.HDFS(Hadoop Distributed File System 分布式存储系统)是一个分布式文件系统,有目录,目录下可以存储文 ...

  6. Anaconda 安装好了,却无法运行?

    使用管理员运行:conda prompt 或者 Windows PowerShell 执行命令 conda update anaconda-navigator 还是不行就试试命令: anaconda- ...

  7. 【POJ】2796:Feel Good【单调栈】

    Feel Good Time Limit: 3000MS   Memory Limit: 65536K Total Submissions: 18449   Accepted: 5125 Case T ...

  8. Express中间件

    一.编写中间件 中间件函数能够访问请求对象(req),响应对象(res),应用程序的请求/响应循环中的下一个中间件函数.下一个中间件函数通常由名为next的变量来表示. 中间件函数可以执行以下任务: ...

  9. Codeforces Round #358 (Div. 2) D. Alyona and Strings dp

    D. Alyona and Strings 题目连接: http://www.codeforces.com/contest/682/problem/D Description After return ...

  10. Codeforces Round #222 (Div. 1) D. Developing Game 扫描线

    D. Developing Game 题目连接: http://www.codeforces.com/contest/377/problem/D Description Pavel is going ...