因为是静态方法,也那么用啊。
凡是用static声明过的都直接用。
DatabasereleaseConnection(con);
参数就是你的连接对象,不是调用过DatabasegetConnection()了吗,把调用这个的对象放到里面就行了。
Connection con = DatabasegetConnection();
…… //数据库 *** 作
DatabasereleaseConnection(con);//关闭连接
首先你的机器上得装有一款数据库,通常是Oracle,Ms sql,MySQL等,不考虑框架等,jsp中主要是利用jdbc进行连接数据库
1,打开数据库服务(你已经设计好了数据库)
2,在class-path中添加相应数据库的连接jar包,
3利用jdbc进行 *** 作
例如:
JDBC - 环境设置:
请确认您已完成以下设置:
核心JAVA安装
SQL 或 MySQL数据库安装
除上述者外,需要建立一个数据库,为本程测试项目使用。假设这是EMP,在同一个数据库上创建表Employees。
创建JDBC应用程序:
参与建立一个JDBC应用程序,本教程中按六个步骤进行:
导入包:
这需要你有软件包包含了数据库编程所需的JDBC类。大多数情况下,使用import javasql 就足够了,如下所示:
//STEP 1 Import required packages
import javasql;
注册JDBC驱动程序:
这需要初始化驱动程序,这样就可以打开与数据库的通信信道。以下是代码片段实现这一目标:
//STEP 2: Register JDBC driver
ClassforName("commysqljdbcDriver");
打开一个连接:
这需要使用DriverManagergetConnection()方法来创建一个Connection对象,它代表一个物理连接的数据库,如下所示:
//STEP 3: Open a connection
// Database credentials
static final String USER = "username";
static final String PASS = "password";
Systemoutprintln("Connecting to database");
conn = DriverManagergetConnection(DB_URL,USER,PASS);
执行一个查询:
这需要使用一个对象类型Statement或PreparedStatement构建,并提交一个SQL语句到数据库。如下:
//STEP 4: Execute a query
Systemoutprintln("Creating statement");
stmt = conncreateStatement();
String sql;
sql = "SELECT id, first, last, age FROM Employees";
ResultSet rs = stmtexecuteQuery(sql);
如果有一个SQL UPDATE,INSERT或DELETE语句,那么需要下面的代码片段:
//STEP 4: Execute a query
Systemoutprintln("Creating statement");
stmt = conncreateStatement();
String sql;
sql = "DELETE FROM Employees";
ResultSet rs = stmtexecuteUpdate(sql);
从结果集中提取数据:
这一步是必需的情况下,从数据库中获取数据。可以使用适当的ResultSetgetXXX()方法来检索的数据结果如下:
//STEP 5: Extract data from result set
while(rsnext()){
//Retrieve by column name
int id = rsgetInt("id");
int age = rsgetInt("age");
String first = rsgetString("first");
String last = rsgetString("last");
//Display values
Systemoutprint("ID: " + id);
Systemoutprint(", Age: " + age);
Systemoutprint(", First: " + first);
Systemoutprintln(", Last: " + last);
}
清理环境:
应该明确地关闭所有的数据库资源,对依赖于JVM的垃圾收集如下:
//STEP 6: Clean-up environment
rsclose();
stmtclose();
connclose();
查询什么数据库?
testsqlserverjsp如下
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="javasql"%>
<html>
<body>
<%ClassforName("commicrosoftjdbcsqlserverSQLServerDriver")newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
//pubs为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManagergetConnection(url,user,password);
Statement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);
String sql="select from test";
ResultSet rs=stmtexecuteQuery(sql);
while(rsnext()) {%>
您的第一个字段内容为:<%=rsgetString(1)%>
您的第二个字段内容为:<%=rsgetString(2)%>
<%}%>
<%outprint("数据库 *** 作成功,恭喜你");%>
<%rsclose();
stmtclose();
connclose();
%>
</body>
</html>
testoraclejsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="javasql"%>
<html>
<body>
<%ClassforName("oraclejdbcdriverOracleDriver")newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl为你的数据库的SID
String user="scott";
String password="tiger";
Connection conn= DriverManagergetConnection(url,user,password);
Statement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);
String sql="select from test";
ResultSet rs=stmtexecuteQuery(sql);
while(rsnext()) {%>
您的第一个字段内容为:<%=rsgetString(1)%>
您的第二个字段内容为:<%=rsgetString(2)%>
<%}%>
<%outprint("数据库 *** 作成功,恭喜你");%>
<%rsclose();
stmtclose();
connclose();
%>
</body>
</html>
testdb2jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="javasql"%>
<html>
<body>
<%ClassforName("comibmdb2jdbcappDB2Driver ")newInstance();
String url="jdbc:db2://localhost:5000/sample";
//sample为你的数据库名
String user="admin";
String password="";
Connection conn= DriverManagergetConnection(url,user,password);
Statement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);
String sql="select from test";
ResultSet rs=stmtexecuteQuery(sql);
while(rsnext()) {%>
您的第一个字段内容为:<%=rsgetString(1)%>
您的第二个字段内容为:<%=rsgetString(2)%>
<%}%>
<%outprint("数据库 *** 作成功,恭喜你");%>
<%rsclose();
stmtclose();
connclose();
%>
</body>
</html>
testmysqljsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="javasql"%>
<html>
<body>
<%ClassforName("orggjtmmmysqlDriver")newInstance();
String url="jdbc:mysql://localhost/softforumuser=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//testDB为你的数据库名
Connection conn= DriverManagergetConnection(url);
Statement stmt=conncreateStatement(ResultSetTYPE_SCROLL_SENSITIVE,ResultSetCONCUR_UPDATABLE);
String sql="select from test";
ResultSet rs=stmtexecuteQuery(sql);
while(rsnext()) {%>
您的第一个字段内容为:<%=rsgetString(1)%>
您的第二个字段内容为:<%=rsgetString(2)%>
<%}%>
<%outprint("数据库 *** 作成功,恭喜你");%>
<%rsclose();
stmtclose();
connclose();
%>
</body>
</html>
有了 这些代码,不代表你就能连接数据库了,你还得有相应java连接各个数据库的jar包加入到你的工程当中!
问题太抽象,/
To change this template, choose Tools | Templates
and open the template in the editor
/package ;
import javaioPrintWriter;
import javasql;/
@author wfg
/
public class DB_Conn {
private String driverName = "commysqljdbcDriver"; //JDBC驱动
private String userName = "root"; //数据库用户名
private String userPwd = ""; //数据库用户密码
private String dbName = ""; //数据库名
private String url = "jdbc:mysql://localhost:3306/"+dbName+"user="+userName+
"&password="+userPwd; //数据库连接字符串
private Connection conn = null; //数据库连接对象
public Statement sm = null; //数据库语句对象
private PrintWriter out = null; //建立数据库连接函数
public void ConnectDB(){
try{
ClassforName(driverName)newInstance();
conn = DriverManagergetConnection(url);
sm = conncreateStatement();
}
catch(Exception e){
eprintStackTrace();
outprint("数据库连接失败!");
}
} //释放数据库连接函数
public void CloseDB(){
try{
if(sm != null){
smclose();
}
connclose();
}
catch(SQLException SqlE){
SqlEprintStackTrace();
outprint("数据库关闭失败!");
}
}
}
这是先建立连接
(1)把mysql的驱动放到tomcat的lib中
(2)建一个很简单的表person就两个字段username和password,数据库名和数据库密码换成你的就是了
create database ibatis;--创建数据库
use ibatis;--使用数据库,以下表在该数据库中
create table person(username varchar(20),password varchar(20));--创建person表
(3)创建indexjsp和registjsp
1:
indexjsp 提交表单页面
<%@ page pageEncoding="GBK"%>
<html>
<head>
</head>
<body>
<form action="registjsp" method="post">
username :<input type = "text" name="name"/>
password :<input type = "password" name="password"/>
<input type = "submit" value="提交"/>
</form>
</body>
</html>
2:registjsp //用户注册同时显示所有用户
<%@ page contentType="text/html; charset=GBK" %>
<%@ page import="javasql"%>
<body>
<center>
<%
requestsetCharacterEncoding("GBK");
String uname=requestgetParameter("name"); //从表单获得
String pwd=requestgetParameter("password"); //从表单获得
String driver="commysqljdbcDriver"; //我用的是mysql官方驱动你自己换一下就是了 在这里有
String url="jdbc:mysql://localhost:3306/ibatisuser=root&password=yanghao"; //这是数据库连接地址Ibatis是数据库名称,user是用户password就是你的用户名,根据实际情况你修改
String sql="INSERT INTO person (username,password) VALUES('"+uname+"','"+pwd+"')"; //把indexjsp提交的两个数据插进数据库的数据库语句
Connection conn=null; //数据库连接
Statement stmt=null;
ResultSet rs = null; //查询结果
%>
<%
ClassforName(driver); //加载驱动
conn=DriverManagergetConnection(url); //获得连接
stmt=conncreateStatement();
stmtexecute(sql);//存入数据库
rs=stmtexecuteQuery("select from person"); //查询所有person语句
%>
<%
if(rs!=null){ //判断以下
while(rsnext()){
String username=rsgetString(1);
String password=rsgetString(2);
%>
<table>
<tr>
<td><%=username %></td>
<td><%=password %></td>
</tr>
</table>
<%
//关闭数据库连接,和开始的顺序是反的
rsclose();//关闭结果集
stmtclose();//关闭Statement
connclose();//关闭数据库连接
//ok完成了插入和查询 *** 作
}
}
%>
</center>
</body>
这也是我从网上找了一个例子,大概流程就是这样,慢慢来。
以上就是关于JSP 数据库 *** 作全部的内容,包括:JSP 数据库 *** 作、在jsp编程中如何连接数据库、怎样用JSP语言查询数据库中的数据,并可以修改等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)