首页数据库java连接数据库的代码?java连接数据库(java连接数据库代码)

java连接数据库的代码?java连接数据库(java连接数据库代码)

编程之家2023-10-21115次浏览

各位老铁们,大家好,今天由我来为大家分享java连接数据库的代码,以及java连接数据库(java连接数据库代码)的相关问题知识,希望对大家有所帮助。如果可以帮助到大家,还望关注收藏下本站,您的支持是我们最大的动力,谢谢大家了哈,下面我们开始吧!

java连接数据库的代码?java连接数据库(java连接数据库代码)

java连接数据库(java连接数据库代码)

java连接数据库的代码位于MVC中的M(模型层)中,主要负责与数据库打交道。

本人把我以前写的代码加上注释给你看看希望对你有帮助。

publicclassUserInfoDAO{

//验证登陆名/密码sql语句

//private-----这个sql语句只在本类内部使用,没有必要public

//static-----sql语句仅仅一份就足够了

java连接数据库的代码?java连接数据库(java连接数据库代码)

//final-----sql语句一般在运行时不变,final修饰的变量相当于常量

//常量名所有字母大写

privatestaticfinalStringSQL_CHECK_USERINFO=

"SELECTLOGINNAME,USERNAME,PASSWORD,AGE,ADDRESSFROMUSERINFOWHERELOGINNAME=?ANDPASSWORD=?";

publicUserInfoDAO(){

}

java连接数据库的代码?java连接数据库(java连接数据库代码)

/**

*验证登陆名/密码方法

*@paramuUserInfo

*@returnboolean

*/

publicbooleancheckUser(UserInfou){

booleanb=false;//验证是否成功的标识

Connectionconn=null;//数据库连接的引用

pstmt=null;//引用

ResultSetrs=null;//结果集引用

//调用的方法,得到数据库里连接实例

conn=.();

try{

//通过Connection的()方法构建实例,参数为sql语句

pstmt=conn.(SQL_CHECK_USERINFO);

//为sql语句中的?赋值,注意序号从1开始

pstmt.setString(1,u.());

pstmt.setString(2,u.getPassword());

//执行查询得到结果集

rs=pstmt.();

//在结果集中循环,如果结果集中有记录意味着验证成功

b=rs.next();//标识置为true

while(rs.next()){

b=true;//标识置为true

}

}catch(ex){

System.out.println(ex.getMessage());

}finally{

//注意:一定在finally中释放数据库资源

cleanUP(rs,pstmt,conn);

}

returnb;

}

privatevoidcleanUP(ResultSetrs,pstmt,Connectionconn){

try{

if(rs!=null){

rs.close();

}

if(pstmt!=null){

pstmt.close();

}

if(conn!=null){

conn.close();

}

}catch(ex){

System.out.println(ex.getMessage());

}

}

}

java 怎么连接sql数据库 帮忙步骤讲解以及代码参考

首先,使用JDBC技术获取数据库连接:

public static Connection getConnection(){

try{

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection con=DriverManager.getConnection("jdbc:oracle:thin:@127.0.0.1:1521:orcl","root","root");

return con;

}catch(Exception e){

e.printStackTrace();

return null;

}

}

Class.forName(数据库驱动);

这是JVM在加载数据库驱动。

DriverManager.getConnection(url,username,password);

url是指连接数据库的地址。

像上面我写的URL是这样的:jdbc:oracle:thin:@127.0.0.1:1521:orcl

127.0.0.1是指本机,也可以用localhost代替,1521是数据库端口号(本人用的是oracle10g),orcl是指oracle_sid。username/password数据库的用户名和密码。有的数据库的url可能不是这样。当然可以去网上查一下就知道了。

这种连接方法是一次请求一次连接,是比较浪费资源的。

像tomcat,weblogic等服务器都带有连接池来避免资源的浪费,而且现在好象有规定,只要是服务器就必须带有连接池。

至于连接池的连接方法,不同的服务器有不同的获得方法。建议你用哪个就去学哪个。

有连接就有关闭数据库,获得数据库连接后一定要记得关闭资源。

public static void close(Connection con){

if(con!=null){

try{con.close();}catch(Exception e){}

}

}

为了方便,不防写成一个方法。

获取连接后,然后使用这个连接去创建相应的Statement来操作数据库。

有Statement,PerparedStatement,CallableStatement这几种statement可以用来创建。

我们先看看Statement的使用。

public static void main(String[] args){

Connection con=JDBCUtil.getConnection();

Statement stat=null;

ResultSet rs=null;

try{

String sql="select a_id,a_name,a_no from a";

stat=con.createStatement();

rs=stat.executeQuery(sql);

while(rs.next()){

System.err.println(rs.getInt(1)+"/"+rs.getString(2)+"/"+rs.getInt(3));

}

}catch(Exception e){

e.printStackTrace();

}

JDBCUtil.close(rs,stat,con);

}

注释:

stat=con.createStatement();是用连接创建Statement对象。

stat.executeQuery(sql);是执行查询语句。这个方法返回的是一个结果集。即ResultSet。可以将查询出来的结果放入结果集中。

rs.next()这个方法返回的一个boolean类型的值,即当指针能够往下走时,返回true,否则返回false。这样就可以保证能够遍历这个结果集了。

当然这里出现了Statement,ResultSet,那么close()方法也得变化了。

如下:

public static void close(ResultSet rs,Statement stat,Connection con){

if(rs!=null){

try{rs.close();}catch(Exception e){}

}

if(stat!=null){

try{stat.close();}catch(Exception e){}

}

if(con!=null){

try{con.close();}catch(Exception e){}

}

}

注意关闭顺序,一定是先ResultSet,后Statement,最后Connection.

由于PerparedStatement和CallableStatement都是Statement的实现类,根据JAVA多态的用法,close()方法就算完全写完了,不用改了。

现在来看看结果:

2/all/2

1/hello/1

===================================================================

现在我们用PerparedStatement来查询:

Connection con=JDBCUtil.getConnection();

PreparedStatement stat=null;

ResultSet rs=null;

try{

String sql="select a_id,a_name,a_no from a where a_id=?";

stat=con.prepareStatement(sql);

stat.setInt(1, 1);

rs=stat.executeQuery();

while(rs.next()){

System.err.println(rs.getInt(1)+"/"+rs.getString(2)+"/"+rs.getInt(3));

}

}catch(Exception e){

e.printStackTrace();

}

JDBCUtil.close(rs,stat,con);

这里的sql语句里有一个值是未确定的。这样就可以实现预编译,大大提高了程序的运行效率。流程如下:

stat=con.prepareStatement(sql);这个方法就将这个sql语句进行了一次编译,查看有没有什么明显的语法错误等。

如果没错,再通过stat.setInt(1, 1);将缺失的值补回去然后再执行sql查询。

PreparedStatement为批处理提供了一系统方法,让批查询、批更新等更加的效率。

让我们看看结果:

1/hello/1

==============================================================

CallableStatement是专门用于处理存储过程的。

如果想深入的学习,建议你去查看相关资料。

java怎么和数据库连接

使用java连接MySQL数据库与其他的数据库连接核心是一样的,如果说区别,那就是所需的驱动不一样。

工具/原料

MySQL、JDK

方法/步骤

1、首先需要安装好JDK(配置环境变量),如图所示:

2、其次要安装好MySQL数据库,可以使用可视化Navicar For MySQL,如图所示:

3、最后通过代码进行连接。

(1)确定连接路径URL:

String url="jdbc:mysql://localhost(可以是本机IP地址):3306(端口号)/mysqltest(数据库名称)?"+"user=用户账号&password=用户密码&useUnicode=字符编码";

(2)加载驱动:

Class.forName("com.mysql.jdbc.Driver");

(3)连接,获取Connection对象

Connection conn=DriverManager.getConnection(url)

(4)可以通过conn对象检验连接与否。

java连接数据库的代码和java连接数据库(java连接数据库代码)的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!

日本 云服务器?aws日本服务器免费吗电商平台数据库设计,关于电商网站数据库的设计有什么好的建议