怎么使用JAVA连接数据库?

怎么使用JAVA连接数据库?,第1张

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

testoracle.jsp如下:

<%@ page contentType="text/htmlcharset=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>

扩展资料:

一、JSP句法:

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

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

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

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

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

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

参考资料来源:百度百科—JSP (java服务器页面)

//此类为连接数据库并进行数据库的 *** 作\x0d\x0aimportjava.sql.Connection\x0d\x0aimportjava.sql.DriverManager\x0d\x0aimportjava.sql.ResultSet\x0d\x0aimportjava.sql.SQLException\x0d\x0aimportjava.sql.Statement\x0d\x0apublicclassConn{\x0d\x0aprivatestaticConnectionconn=null\x0d\x0aprivatestaticStatementst=null\x0d\x0aprivatestaticResultSetrs=null\x0d\x0a//建立数据库的连接\x0d\x0apublicConn(){\x0d\x0aStringurl="jdbc:sqlserver://localhost:1433databaseName=ZYGX"\x0d\x0aStringuser="sa"\x0d\x0aStringpassword="123"\x0d\x0atry{\x0d\x0aClass.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver")\x0d\x0aconn=DriverManager.getConnection(url,user,password)\x0d\x0ast=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY)\x0d\x0a}catch(ClassNotFoundExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}catch(SQLExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}\x0d\x0a}\x0d\x0a\x0d\x0a//通过不同的sql语句,得到相应Resultset结果集\x0d\x0apublicResultSetgetRs(Stringsql){\x0d\x0atry{\x0d\x0ars=st.executeQuery(sql)\x0d\x0a}catch(SQLExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}\x0d\x0areturnrs\x0d\x0a}\x0d\x0a//根据不同的sql语句,执行数据库的更新 *** 作\x0d\x0apublicintupdata(Stringsql){\x0d\x0aintnum=0\x0d\x0atry{\x0d\x0anum=st.executeUpdate(sql)\x0d\x0a}catch(SQLExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}\x0d\x0areturnnum\x0d\x0a}\x0d\x0a//关闭数据库连接相应的资源\x0d\x0apublicvoidclose(){\x0d\x0atry{\x0d\x0aif(rs!=null){\x0d\x0ars.close()\x0d\x0ars=null\x0d\x0a}\x0d\x0aif(st!=null){\x0d\x0ast.close()\x0d\x0ast=null\x0d\x0a}\x0d\x0aif(conn!=null){\x0d\x0aconn.close()\x0d\x0aconn=null\x0d\x0a}\x0d\x0a}catch(SQLExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}\x0d\x0a}\x0d\x0a}\x0d\x0a----------------------------------------------------------------------\x0d\x0a//可以对button里添加动作按钮:\x0d\x0afinalJButtonbutton=newJButton()\x0d\x0abutton.addActionListener(newActionListener(){\x0d\x0apublicvoidactionPerformed(finalActionEvente){\x0d\x0aConnconn=newConn()\x0d\x0aStringsql1="select*fromaawherename='"+name+"'"//按name值查找\x0d\x0aResultSetrs=conn.getRs(sql1)\x0d\x0atry{\x0d\x0awhile(rs.next()){\x0d\x0aintn=rs.getString("type")\x0d\x0a}\x0d\x0a}catch(SQLExceptione){\x0d\x0ae.printStackTrace()\x0d\x0a}\x0d\x0aStringname=textField.getText()\x0d\x0aStringsql="updateaasettittle='"+name+"'"//从aa表将title字段的值改成textField里的name值\x0d\x0aStringsql2="deletefromaawherename='"+name+"'"//从aa表将按取得name的值删除该行数据\x0d\x0aStringsql3="insertintoaa(name,uname)values('"+name+"','"')"//将name,uname值新增到aa表\x0d\x0aif(conn.update(sql)==1){\x0d\x0aSystem.out.print("修改成功")\x0d\x0a}\x0d\x0aif(conn.update(sql2)==1){\x0d\x0aSystem.out.print("删除成功")\x0d\x0a}\x0d\x0aif(conn.update(sql3)==1){\x0d\x0aSystem.out.print("新增成功")\x0d\x0a}\x0d\x0a}\x0d\x0a})

jdbc连接数据库,DriverManger等初始化连接,prepareStatement语句执行sql,ResultSet拿到执行结果,while result.hasNext循环拿到数据值等。

如果不用jdbc,可以用框架,hibernate,mybatis都是可以的。

详情可以私聊我,手机打字太累了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6646941.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存