JDBC连接数据库步骤(六个步骤)

更新时间:2023-05-29 05:47:20 阅读: 评论:0

JDBC连接数据库步骤(六个步骤)
1.注册驱动:
Class.forName("sql.jdbc.Driver");//显⽰的加载到JVM中
2.获取连接:
(1)
要连接数据库的url---- String url="jdbc:mysql://localhost:3306/test?"+"uUnicode=true&characterEncoding=UTF8";//防⽌乱码
要连接数据库的⽤户名---- String ur="xxxx";
要连接数据库的密码---- String pass="xxxx";
//DriverManager下的⽅法:getConnection(String url,String urname,String password)
Connection Connection(url,ur,pass);
(2)
立方
专科热门专业
接下来我们分析下url:
"jdbc(这是协议以jdbc开头):mysql(这是⼦协议,数据库管理系统称)://localhost(数据库来源地址):3306(⽬标端⼝)/test(要查询的表)?"
"uUnicode=true&characterEncoding=UTF8";添加这个是为了防⽌乱码,指定使⽤Unicode字符集,且使⽤UTF-8来编辑。
3.创建⼀个Statement语句对象
(主要三种⽅法):
//Connection接⼝下的⽅法:Statement createStatement()
Statement ateStatement();
股票打新PreparedStatement pstmt =PreparedStatement();
CallableStatement cstmt =  conn.prepareCall("{CALL demoSp(? , ?)}");
下⾯我们来分析下他们:
Statement与 PreparedStatement对象的区别,PreparedStatement可以动态设置查询参数
设置参数的⽅法 PreparedStatement.tXXXX(parameterIndex,value),如果数据库参数类型是varchar则⽤tString,如果参数类型是Integer 则⽤tInt    CallableStatement.tXXXX(parameterIndex,value)//按照参数的顺序设置value
CallableStatement.tXXXX(parameterName,value)//按照参数的名字来设置value,这个名字是在定义存储过程的时候的形式参数的名字档案分类的八大类
4.执⾏SQL语句:
除了查询语句是executeQuery();其他全部是
executeUpdate();
ResultSet uteQuery(Sql);
Statement接⼝下的⽅法:
boolean execute(String sql)----执⾏SQL语句,如果返回值是结果集则为true,否则为fal
ResultSet executeQuery(String sql)----执⾏SQL语句,返回值为ResultSet
int executeUpdate(String sql)----执⾏SQL语句,返回值为所影响的⾏数
5.处理结果集:
ResultSet对象的getXxxx⽅法,取决于数据库中表的字段的类型,例如:varchar2 对应⽅法是getString ,如果是 integer 对应⽅法是getInt/getLong
()){
ResultSet接⼝下常见的⽅法:
beforeFirst()----将游标移动到ResultSet中第⼀条记录(的前⾯)
afterLast()----将游标移动到ResultSet中最后⼀条记录(的后⾯)
absolute(intcolumn)----将游标移动到相对于第⼀⾏的指定⾏,负数则为相对于最后⼀条记录
previous()----将游标上移⼀⾏
next()----将游标下移⼀⾏
ResultSet.TYPE_SCROLL_SENSITIVE----结果集可以滚动
ResultSet.CONCUR_READ_ONLY ----结果集只读,不能修改
6.关闭资源:
操作完以后要关闭jdbc来释放jdbc资源。但是顺序要和你定义对象的时候相反,就像关门⼀样,从⾥⾯先关,⼀直往外关。
如下⽰例:
if(rs !=null){//1.关闭结果集
给家捎个话try{
rs.clo();
}catch(SQLException e){
e.printStackTrace();
}
}
if(stmt !=null){//2.关闭声明的对象
try{
stmt.clo();
}catch(SQLException e){
e.printStackTrace();
}
}
if(conn !=null){//3.关闭连接(记住⼀定要先关闭前⾯的1.2.然后在关闭连接)
try{
conn.clo();
}catch(Exception e){
e.printStackTrace();
}
}
⼀个简单的(详细的)查询数据的例⼦:
public class jdbcTest {
public static void main(String[] args)throws Exception {
String jdbcName="sql.jdbc.Driver";//定义驱动程序名为jdbcName内容为sql.jdbc.Driver
String dbUrName="root";//定义⽤户名,写你想要连接到的⽤户。
String dbPassword="root";//⽤户密码。
//定义url;jdbc是协议;mysql是⼦协议:表⽰数据库系统管理名称;localhost:3306是你数据库来源的地址和⽬标端⼝;test是我本⼈建的表位置所在处,你以你的为标准。
//防⽌乱码;uUnicode=true表⽰使⽤Unicode字符集;characterEncoding=UTF8表⽰使⽤UTF-8来编辑的。
String dbUrl="jdbc:mysql://localhost:3306/book?"+"uUnicode=true&characterEncoding=UTF8";
String sql="lect * from student";//定义查询语句
Class.forName(jdbcName);//注册驱动程序,⽤java.lang包下⾯的class类⾥⾯的Class.froName();⽅法此处的driver就是1⾥⾯定义的driver,也可以  Class.fo rName("sql.jdbc.Driver");
Connection Connection(dbUrl,dbUrName,dbPassword);//获取数据库连接,使⽤java.sql⾥⾯的DriverManager的getConnectin(Strin g url , String urname ,String password )来完成
//构造⼀个statement对象来执⾏sql语句:主要有Statement,PreparedStatement,CallableStatement三种实例来实现
//三种实现⽅法分别为:Statement stmt = ateStatement() ;
// PreparedStatement pstmt = conn.prepareStatement(sql) ;
//CallableStatement cstmt =  conn.prepareCall("{CALL demoSp(? , ?)}") ;
Statement ateStatement();
ResultSet uteQuery(sql);//执⾏sql并返还结束;ResultSet executeQuery(String sqlString):⽤于返还⼀个结果集(ResultSet)对象。
//遍历结果集
()){
项目实施
System.out.println("学⽣编号:"+rs.getInt("stuId")+",学⽣姓名:"+rs.getString("stuName")+",学⽣性别:"+rs.getString("stuSex")+",学⽣年龄:"+rs.getI nt("stuAge"));//使⽤getString()⽅法获取你表⾥的资料名
}
if(rs!=null){//关闭记录集
try{
rs.clo();
}catch(Exception e){
e.printStackTrace();
}
}
if(stmt!=null){//关闭说明对象
try{
stmt.clo();
}catch(SQLException e){
e.printStackTrace();
}
}
if(con!=null){//关闭连接,就像关门⼀样,先关⾥⾯的,最后关最外⾯的
try{
con.clo();
}catch(SQLException e){胸前长痘痘
e.printStackTrace();
}
}
}
}北京旅游胜地

本文发布于:2023-05-29 05:47:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/fan/82/804563.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:数据库   关闭   连接   定义   结果   参数   对象   指定
相关文章
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图