当前位置:首页 » 操作系统 » jsp连接oracle数据库jsp

jsp连接oracle数据库jsp

发布时间: 2023-03-07 02:58:08

‘壹’ 怎么使用java连接数据库

java的jsp连接Oracle8/8i/9i数据库(用thin模式) :

testoracle.jsp如下:

<%@ page contentType="text/html;charset=gb2312"%>

<%@ page import="Java.sql.*"%>

<html>

<body>

<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();

String url="jdbc:oracle:thin:@localhost:1521:orcl";

//orcl为你的数据库的SID

String user="scott";

String password="tiger";

Connection conn= DriverManager.getConnection(url,user,password);

Statement

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);

String sql="select * from test";

ResultSet rs=stmt.executeQuery(sql);

while(rs.next()) {%>

您的第一个字段内容为:<%=rs.getString(1)%>

您的第二个字段内容为:<%=rs.getString(2)%>

<%}%>

<%out.print("数据库操作成功,恭喜你");%>

<%rs.close();

stmt.close();

conn.close();

%>

</body>

</html>

(1)jsp连接oracle数据库jsp扩展阅读:

一、JSP句法:

一个JSP页面可以被分为以下几部份:

静态数据,如HTML;JSP指令,如include指令;JSP脚本元素和变量;JSP动作;用户自定义标签。

静态数据在输入文件中的内容和输出给HTTP响应的内容完全一致。此时,该JSP输入文件会是一个没有内嵌JAVA或动作的HTML页面。而且,客户端每次请求都会得到相同的响应内容。

JSP指令控制JSP编译器如何去生成servlet:<%@ include file="somefile.jsp" %>

二、根据JSTL标签所提供的功能,可以将其分为5个类别:

核心标签;格式化标签;SQL 标签;XML 标签;JSTL 函数。

‘贰’ 如何在jsp直接访问oracle数据库

<%@pagecontentType="text/html;charset=gb2312"%>
<%@pageimport="java.sql.*"%>

<HTML><BODY>

<hralign="center"width="55%"color="#991111"size="5"/>

<%
Connectionconn=null;
PreparedStatementstmt=null;
ResultSetrs=null;


request.setCharacterEncoding("GBK");

try{
Class.forName("oracle.jdbc.driver.OracleDriver");
}
catch(ClassNotFoundExceptionce){
out.println(ce.getMessage());
}
try{
Stringurl="jdbc:oracle:thin:@localhost:1521:orcl";
conn=DriverManager.getConnection(url,"scott","tiger");
stmt=conn.prepareStatement("select*fromemp");

rs=stmt.executeQuery();
out.print("<TABLEBORDER='1'width='55%'cellpadding='3'align=center>");
out.print("<TR><TD>"+"<b>Empno</b>"+"</TD>");
out.print("<TD>"+"<b>Ename</b>"+"</TD>");
out.print("<TD>"+"<b>Job</b>"+"</TD>");
out.print("<TD>"+"<b>Mgr</b>"+"</TD>");
out.print("<TD>"+"<b>hiredate</b>"+"</TD>");
out.print("<TDalign=center>"+"<b>Sal</b>"+"</TD>");
out.print("<TD>"+"<b>Comm</b>"+"</TD>");
out.print("<TD>"+"<b>Deptno</b>"+"</TD></TR>");


while(rs.next()){
out.print("<TR><TD>"+rs.getString(1)+"</TD>");
out.print("<TD>"+rs.getString(2)+"</TD>");
out.print("<TD>"+rs.getString(3)+"</TD>");
out.print("<TD>"+rs.getString(4)+"</TD>");
out.print("<TD>"+rs.getString(5)+"</TD>");
out.print("<TD>"+rs.getString(6)+"</TD>");
out.print("<TD>"+rs.getString(7)+"</TD>");
out.print("<TD>"+rs.getString(8)+"</TD></TR>");
}

out.print("</TABLE>");

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

}
catch(Exceptione){
System.out.println(e.getMessage());
}

%>

</BODY></HTML>

‘叁’ jsp怎么连接数据库oracle

JSP连接Oracle10g数据库的方法:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*" %>
<%@ page import="java.io.*" %>
<%@ page import="java.util.*" %>
<html>
<head>
<title>Oracle数据库连接测试</title>
</head>
<body>
<%
java.sql.Connection lConn = null;
java.sql.Statement lStat = null;
java.sql.ResultSet lRs = null;
try
{
DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());
String lUrl = "java:oracle:thin:@localhost:1521:orcl";
//java:oracle:thin: 表示使用的是thin驱动
//@srv:1521: 表示使用的服务器的名字和端口号
//dbname: 表示数据库的SID
lConn = DriverManager.getConnection(lUrl,"system","rg");
lStat = lConn.createStatement();
//创建表
String createTableCoffees = "CREATE TABLE COFFEES " +
"(COF_NAME VARCHAR(32), SUP_ID INTEGER, PRICE FLOAT, " +
"SALES INTEGER, TOTAL INTEGER)";
lStat.executeUpdate(createTableCoffees);
//插入数据
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian', 101, 7.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Espresso', 150, 9.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('Colombian_Decaf', 101, 8.99, 0, 0)");
lStat.executeUpdate("INSERT INTO COFFEES VALUES ('French_Roast_Decaf', 49, 9.99, 0, 0)");
//查询结果
lRs = lStat.executeQuery("select * from COFFEES");
//显示结果
out.println("<table>");

while (lRs.next()) {
out.print("<tr><td>" + lRs.getString(1));
//COF_NAME
out.print( "<td>" + lRs.getInt(2));
//SUP_ID
out.print( "<td>" + lRs.getFloat(3));
//PRICE
out.print( "<td>" + lRs.getInt(4));
//SALES
out.println( "<td>" + lRs.getInt(5));
//TOTAL
}
out.println("</table>");
lRs.close();
lStat.close();
} catch (SQLException e) {
throw new ServletException(e);
} finally {
try {
if (lConn != null)
lConn.close();
} catch (SQLException e) {
}
}
%>
</body>
</html>

‘肆’ 在JSP中访问Oracle数据库

写第一个连接Oracle的JSP程序test.jsp
1、连入SQL*Plus
以system/manager用户登录,
SQL> conn system/manager
创建新的用户:如user1/pass1,赋予connect,resource权限。
SQL> grant connect,resource to user1 identified by pass1;
SQL> conn user1/pass1
SQL> create table test(a number,b char(10));
SQL> insert into test values(1,"一");
SQL> insert into test values(2,"二");
SQL> insert into test values(3,"三");
SQL> commit;
SQL> select * from test;
A B
---------- ----------
1 一
2 二
3 三
2、配置ODBC(在服务器端设置)
开始->设置->控制面板->管理工具->数据源 (ODBC)->系统DSN->添加->
选择“Oracle ODBC Driver”->完成->
Data Source Name:test名字随便取,好记就行,如:test
Service Name:oradb Oracle数据库的实例名,本例:oradb,一般Oracle默认安装为ORCL
UserID:user1 Oracle用户名,本例:user1
按“OK”->按“确定”退出
3、在C:\JBuilder4\tomcat\webapps\test下创建test.jsp,用notebook编辑,输入以下代码
<!--首先导入一些必要的packages-->
<%@ page info="database handler"%>
<%@ page import="java.io.*"%>
<%@ page import="java.util.*"%>
<!--告诉编译器使用SQL包-->
<%@ page import="java.sql.*"%>
<%@ page import="javax.servlet.*"%>
<%@ page import="javax.servlet.http.*"%>
<%
//以try开始
try
{
Connection con;
Statement stmt;
ResultSet rs;
//加载驱动程序,下面的代码为加载JDBD-ODBC驱动程序
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//用适当的驱动程序连接到数据库,test"是系统dsn名
String url="jdbc:odbc:test";
//建立连接,类似于ASP中的创建数据库联接
con=DriverManager.getConnection(url, "user1", "pass1");
//创建一个JDBC声明
stmt = con.createStatement();
//增加新记录
stmt.executeUpdate("INSERT INTO test (a,b) VALUES (1,"2")");
//查询记录
rs = stmt.executeQuery("SELECT a,b from test");
//输出查询结果
out.println("<table border=1 width=400>");
while (rs.next())
{
String col1 = rs.getString(1);
String col2 = rs.getString(2);
//打印所显示的数据
out.println("<tr><td>"+col1+"</td><td>"+col2+"</td></tr>");
}
out.println("</table>");
}
//如果加载时出错,给出相应的错误信息
catch (Exception e) {}
%>
4、打开一个浏览器窗口,输入以下地址来查看运行结果
http://localhost:8080/test/test.jsp

‘伍’ jsp连接数据库方法(详细的)

上面的给出了jsp内嵌java的最初模式,现在一般是三层结构了即MVC结构,就这个例子我来给你解释下是怎么做的,java对连接数据库提供了统一的接口,各个数据库厂商根据提供的接口规范开发自己的连接方法顺序如下:1、用Class.forName()方法加载驱动:Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); 黑体部分为数据库厂商自己开发的驱动。2、定义好连接数据库的url地址,连接串Stringurl="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";黑体部分为固定写法不用理会。回到你最初的问题,如何创建数据库,这里你可以去下每个数据库创建的方法,一般数据库安装的时候都有默认的数据库名,和对应的系统管理员工号和密码,DatabaseName=pubs这里说明sql serv 2000中建立了一个名字叫pubs的数据库jdbc:microsoft:sqlserver://localhost:1433固定写法唯一不同的是1433端口号,可能你在安装sql serv 2000的时候改变了该端口号为1500那么这里就应该为jdbc:microsoft:sqlserver://localhost:15003、定义好DatabaseName=pubs的登录用户名和密码 String user="sa";用户名
String password="";密码4、创建Connection对象,通过调用DriverManager.getConnection方法获得。 Connection conn= DriverManager.getConnection(url,user,password);黑体部分就是你定义好的连接串,用户名,密码,不可改变顺序。到这里为止数据库就连接上了,但是连接好了数据库还要做点什么,比如打印出来,接下看。5、通过获得的Connection对象conn创建Statement 对象stmtStatement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);黑体部分是定义ResultSet的一些属性的,具体含义可以参考JDK的api。6、定义好你准备取得数据的sql语句,比如下面 select * from test说明想从test表中取得所有的数据,关于sql语句可以去查找相关数据库资料。 String sql="select * from test";定义好语句后,就用上一步创建好的Statement 对象stmt来执行这个sql语句,并返回一个ResultSet对象。
ResultSet rs=stmt.executeQuery(sql);执行完这步后rs中已经取得了test表所有的数据,那么接下来要展现在网页上。7、rs.next()对你取得的记录集做一个循环直到没有值为止,rs.getString(1)代表你test表中的第一个字段rs.getString(2)代表你test中的第二个字段,如果还有更多字段可以继续rs.getString(3)..rs.getString(N) while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>8、当所有数据展现完毕,调用close()方法将所有资源关闭。 rs.close();
stmt.close();
conn.close();回顾下大致过程:加载驱动 Class.forName();定义好相关的数据,调用DriverManager.getConnection(driver,user,password)获得一个数据库连接conn通过conn创建Statement对象stmt,conn.createStatement();通过stmt执行定义好的sql语句获得数据集ResultSet rs=stmt.executeQuery(“select * from test”);通过rs.next()方法循环遍历数据集的数据,通过rs.getString(1)获得第一条数据的第一个字段内容,这里要注意的是getString是对应数据库是字符类型,如果test表的第一个字段不是字符类型则用rs.getInt(1)获得。展现完毕后关闭所有资源conn stmt rs close方法。

热点内容
云物理服务器物理服务器 发布:2025-08-21 13:29:54 浏览:110
促销升级源码 发布:2025-08-21 13:20:39 浏览:68
各大数据库 发布:2025-08-21 13:13:53 浏览:810
设计图库加密 发布:2025-08-21 13:06:38 浏览:515
索引存储是数据的存储方式么 发布:2025-08-21 13:05:31 浏览:506
我的世界大型服务器ip大全 发布:2025-08-21 12:54:23 浏览:578
htcandroidl 发布:2025-08-21 12:50:59 浏览:963
编程拳皇 发布:2025-08-21 12:50:57 浏览:330
sqlserver2005作业 发布:2025-08-21 12:15:25 浏览:325
安卓手机怎么设置侧边任务栏 发布:2025-08-21 12:11:10 浏览:774