Java连接数据库问题(附代码)

Java连接数据库问题(附代码),第1张

问题可能出在这里:

你的v2没有初始化就使用了,导致这句 v2add(hang);会出现空指针异常;

而你在后边对v2又进行了初始化:v2 = new Vector();但此时的v2是空的,里面没有数据。

解决方法:

将 v2 = new Vector(); 这句放到链接数据库前,也就是在使用前进行初始化。

本文将介绍使用java连接sqlserver数据库

工具/材料

myeclipse 、 SqlServer数据库

方法:

1、要向连接数据库,首先应该保证数据库服务打开

2、数据库服务打开之后就可以在环境中编写连接代码了。如图:

连接数据库就是这两个步骤:1)加载驱动、2)创建连接。

注意在导包是导入的javasql下的。

接下来直接运行一下就可以测试是否连接成功了

我就弄的用户登入的代码吧这个挺简单的

这是题目:

用户登陆验证:

1创建数据库Test,并新建用户表users

字段包含:username varchar(20) not null

userpwd varchar(20) not null

在JBUILDER中编写Long类,实现登陆界面,并在用户输入用户名和密码后,

完成按纽的单击事件,对用户输入的数据进行验证,

(需要严整数据是否为空,密码长度必须是15位),

并实现与数据库的连接,将用户输入的用户名密码与表中的记录比较,

若用户名正确且密码正确,d出提示框告知登陆成功,否则登陆失败。

这是代码:

//连接数据库

boolean isLogin(String name,String pwd){

boolean flag=false;

Connection conn=null;

PreparedStatement pst=null;

ResultSet rs=null;

//加载驱动

try {

ClassforName("sunjdbcodbcJdbcOdbcDriver");

} catch (ClassNotFoundException ex) {

exprintStackTrace();

}

//连接数据库

try {

conn=DriverManagergetConnection("jdbc:odbc:login");

String sql="select from [user] where username= and userpwd=";

pst=connprepareStatement(sql);

pstsetString(1,name);

pstsetString(2,pwd);

rs=pstexecuteQuery();

if(rsnext())

flag=true;

} catch (Exception ex) {

exprintStackTrace();

}finally{

try {

connclose();

} catch (Exception ex) {

exprintStackTrace();

}

}

return flag;

}

//验证方法

public void jButton1_actionPerformed(ActionEvent e) {

String name=jTextField1getText();

String pwd=jTextField2getText();

//错误处理

if(nameequals("")||pwdequals(""))

JOptionPaneshowMessageDialog(this,"请输入完整的信息");

else {

if(isLogin(name,pwd))

JOptionPaneshowMessageDialog(this,"登陆成功");

else

JOptionPaneshowMessageDialog(this,"用户名或密码错误");

}

}

}

这是在事件里写的,

1 在开发环境中加载指定数据库的驱动程序。

接下来的实验中,使用数据库MySQL,所以需要下载MySQL支持JDBC的驱动程序(mysql-connector-java-5118-binjar)。

2 开发环境是MyEclipse,将下载得到的驱动程序加载进开发环境中。

3 在Java程序中加载驱动程序。

在Java程序中,通过 “ClassforName(“指定数据库的驱动程序”)” 

方式来加载添加到开发环境中的驱动程序,例如ClassforName(“commysqljdbcDriver”)。

4 创建数据连接对象:通过DriverManager类创建数据库连接对象Connection。

DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC 

Connection 对象。代码如:Connection connection =  DriverManagergetConnection(“连接数据库的URL", "用户名", 

"密码”)。

    其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:

              Connection connectMySQL  = 

 DriverManagergeiConnection(“jdbc:mysql://localhost:3306/myuser","root" 

,"root" );

5 创建Statement对象:Statement 类的主要是用于执行静态 SQL 

语句并返回它所生成结果的对象。

通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament = 

connectioncreateStatement(); 具体示例创建Statement对象代码如下:Statement statamentMySQL =connectMySQLcreateStatement(); 

6 调用Statement对象的相关方法执行相对应的 SQL 

语句:通过execuUpdate()方法用来数据的更新,包括插入和删除等 *** 作,例如向staff表中插入一条数据的代码:

statementexcuteUpdate( "INSERT INTO 

staff(name, age, sex,address, depart, worklen,wage)" + " VALUES ('Tom1', 321, 

'M', 'china','Personnel','3','3000' ) ") ; 

7 通过调用Statement对象的executeQuery()方法进行数据的查询,而查询结果会得到 

ResulSet对象,ResulSet表示执行查询数据库后返回的数据的集合,ResulSet对象具有可以指向当前数据行的指针。通过该对象的next()方法,使得指针指向下一行,然后将数据以列号或者字段名取出。如果当next()方法返回null,则表示下一行中没有数据存在。使用示例代码如下:

ResultSet resultSel = 

statementexecuteQuery( "select  from staff" );

8 关闭数据库连接:使用完数据库或者不需要访问数据库时,通过Connection的close() 方法及时关闭数据连接。

以上就是关于Java连接数据库问题(附代码)全部的内容,包括:Java连接数据库问题(附代码)、如何用java 连接 sqlserver 数据库、求一个简单又经典的JAVA数据库连接的例子,要有源代码哦!等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/9867136.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存