Java连接MySql数据库并且实现增删改查功能精.docx

上传人:b****5 文档编号:7186711 上传时间:2023-01-21 格式:DOCX 页数:10 大小:17.66KB
下载 相关 举报
Java连接MySql数据库并且实现增删改查功能精.docx_第1页
第1页 / 共10页
Java连接MySql数据库并且实现增删改查功能精.docx_第2页
第2页 / 共10页
Java连接MySql数据库并且实现增删改查功能精.docx_第3页
第3页 / 共10页
Java连接MySql数据库并且实现增删改查功能精.docx_第4页
第4页 / 共10页
Java连接MySql数据库并且实现增删改查功能精.docx_第5页
第5页 / 共10页
点击查看更多>>
下载资源
资源描述

Java连接MySql数据库并且实现增删改查功能精.docx

《Java连接MySql数据库并且实现增删改查功能精.docx》由会员分享,可在线阅读,更多相关《Java连接MySql数据库并且实现增删改查功能精.docx(10页珍藏版)》请在冰豆网上搜索。

Java连接MySql数据库并且实现增删改查功能精.docx

Java连接MySql数据库并且实现增删改查功能精

Java连接MySql数据库,并且实现增删改查功能!

这是我最近写的一个连接MySql数据库的一个例子,主要实现了插入,删除,更新,选择操作,用的环境是j2sdk1.4.2_08,Eclipse3.1。

下面我把在Eclipse3.1下怎样配置数据库连接信息简单说一下。

1.启动Eclipse3.1。

2.建立一个Javaproject就叫DbConnect吧,再在该Project下建立一个新类也叫DbConnect吧。

3.右击DbConnect.java文件点import,选择Archivefile然后选择你的

mysql-connector-java-3.1.8-bin.jar文件,点Finish。

你会看到有好些文件被加载进来,OK这就是连接MySql所需的驱动信息。

如果到了这里你都成功的话那么恭喜你,你已经成功一半了!

4.接下来把我下面的代码copy到你的Java文件中,修改相关的数据库连接信息运行一下。

OK?

我说一下那个mysql-connector-java-3.1.8-bin.jar文件,其实这就是一个MySql的驱动,各数据库厂商提供了不同的适用于JDBC的驱动使得在Java中连接数据库非常简单。

这里我就不多说了,以后我会写篇专门介绍数据库驱动的文章。

关于MySql的驱动还有更新版本的,你需要到MySql的网站上去下载,这个网上到处都是,我就不多说了。

下面看程序,有些地方我写了详细的注释应该能看懂。

这个类是非常有特色的,在每个方法的传人参数和返回值不变的情况下,希望高手能提出改进意见。

多指教,谢谢!

/**

*数据库连接、选择、更新、删除演示

*/

//importjava.sql.*;

importjava.sql.Connection;

importjava.sql.Statement;

importjava.sql.ResultSet;

importjava.sql.DriverManager;

importjava.util.*; 

publicclassDbConnect

{

/////////////////////////////////////////———–>>>数据成员and构造函数

privateConnectiondbconn;

privateStatementdbstate;

privateResultSetdbresult;

DbConnect(

{

dbconn=null;

dbstate=null;

dbresult=null;

}

/////////////////////////////////////////———–>>>类方法

publicvoidprint(Stringstr//简化输出

{

System.out.println(str;

}//endprint(…

/**

*连接MySql数据库

*@paramhost

*@paramport

*@paramdbaName

*@paramusName

*@parampsw

*@returnbool值,连接成功返回真,失败返回假

*/

publicbooleandbConnection(Stringhost,Stringport,StringdbaName,StringusName,Stringpsw

{

StringdriverName="com.mysql.jdbc.Driver";//"org.gjt.mm.mysql.Driver"两个驱动都可以用

StringdbHost=host;//数据库的一些信息

StringdbPort=port;

StringdbName=dbaName;

StringenCoding="?

useUnicode=true&characterEncoding=gb2312";//解决MySql中文问题,要连续写不能空格

StringuserName=usName;

StringPsw=psw;

Stringurl="jdbc:

mysql:

//"+dbHost+":

"+dbPort+"/"+dbName+enCoding;

try

{

Class.forName(driverName.newInstance(;

dbconn=DriverManager.getConnection(url,userName,Psw;

//getConnection(url,userName,Psw从给的driver中选择合适的去连接数据库

//returnaconnectiontotheURL

}catch(Exceptione{

print("url="+url;//发生错误时,将连接数据库信息打印出来

print("userName="+userName;

print("Psw"+Psw;

print("Exception:

"+e.getMessage(;//得到出错信息

}

if(dbconn!

=null//dbconn!

=null表示连接数据库成功,由异常保证!

returntrue;

else

returnfalse;

}//endbooleandbConnection(… 

/**

*对数据库表进行选择操作!

*@paramtableName数据库表名

*@paramfieles字段名

*@paramselCondition选择条件

*@return一个含有map的List(列表)

*/

publicArrayListdbSelect(StringtableName,ArrayListfields,StringselCondition

{

ArrayListmapInList=newArrayList(;

StringselFields="";

for(inti=0;i

selFields+=fields.get(i+",";

StringselFieldsTem=selFields.substring(0,selFields.length(–2;//根据String的索引提取子串

try{

dbstate=dbconn.createStatement(;

Stringsql="select"+selFieldsTem+"from"+tableName+selCondition;

print("sql="+sql;

try{

dbresult=dbstate.executeQuery(sql;

}catch(Exceptionerr{

print("Sql="+sql;

print("Exception:

"+err.getMessage(;

}

pspanwhile(dbresult.next({pspanMapselResult=newHashMap(;

selResult.put("message_type",dbresult.getString("message_type";

selResult.put("message_content",dbresult.getString("message_content";

mapInList.add(selResult;

}

}catch(Exceptione{

print("Exception:

"+e.getMessage(;

}

returnmapInList;

}//endStringdbSelect(…

/**

*对数据库表中的记录进行删除操作

*@paramtableName

*@paramcondition

*@returnbool值,表示删除成功或者失败。

*/

publicbooleandbDelete(StringtableName,Stringcondition

{//——–>>>删除操作

booleandelResult=false;

Stringsql="deletefrom"+tableName+""+condition;

try{

dbstate.executeUpdate(sql;//returnint//intdelRe=?

?

delResult=true;

}catch(Exceptione{

print("sql="+sql;

print("Exception:

"+e.getMessage(;

}

if(delResult

returntrue;

else

returnfalse;

}//enddbDelete(… 

/**

*对数据库表中记录进行更新操作

*@paramtabName

*@paramreCount

*@returnbool值,成功返回true,失败返回false

*/

publicbooleandbUpdate(StringtabName,HashMapreCount,StringupCondition

{

booleanupdateResult=false;

StringValues="";

IteratorkeyValues=reCount.entrySet(.iterator(;

for(inti=0;i

{

Map.Entryentry=(Map.EntrykeyValues.next(;

Objectkey=entry.getKey(;

Objectvalue=entry.getValue(;

Values+=key+"="+"’"+value+"’"+",";

}

StringupdateValues=Values.substring(0,Values.length(–2;

Stringsql="update"+tabName+"set"+updateValues+""+upCondition;

try

{

dbstate.executeUpdate(sql;

updateResult=true;

}catch(Exceptionerr{

print("sql="+sql;

print("Exception:

"+err.getMessage(;

}

if(updateResult

returntrue;

else

returnfalse;

}//enddbUpdate(…

/**

*对数据库表进行插入操作

*@paramtabName

*@paramhm

*@returnbool值,成功返回true,失败返回false

*/

publicbooleandbInsert(StringtabName,HashMapvalues

{

Stringsql="";

StringinsertFields="",temFields="";

StringinsertValues="",temValues="";

booleaninsertResult=false;

IteratorkeyValues=values.entrySet(.iterator(;

for(inti=0;i

{

Map.Entryentry=(Map.EntrykeyValues.next(;

Objectkey=entry.getKey(;

Objectvalue=entry.getValue(;

temFields+=key+",";

temValues+="’"+value+"’"+",";

}

insertFields=temFields.substring(0,temFields.length(–2;

insertValues=temValues.substring(0,temValues.length(–2;

sql+="insertinto"+tabName+"("+insertFields+"values"+"("+insertValues+"";

try

{

dbstate.executeUpdate(sql;

insertResult=true;

}catch(Exceptione{

print("Sql="+sql;

print("Exception:

"+e.getMessage(;

}

if(insertResult

returntrue;

else

returnfalse;

}//enddbInsert(…

/**

*断开数据库

*@returnbool值,成功返回true,失败返回false

*/

publicbooleandbClose(

{

booleancloseResult=false;

try

{

dbconn.close(;

closeResult=true;

}catch(Exceptione{

print("Exception:

"+e.getMessage(;

}

if(closeResult

returntrue;

else

returnfalse;

}//enddbClose(

/*/////////////////////////////////////////———–>>>入口主函数*/

publicstaticvoidmain(String[]args

{

DbConnectdc=newDbConnect(;

//连接数据库用到的一些参数.

StringdbHost="localhost";

StringdbPort="3306";

StringdbName="feast";

StringdbuserName="root";

Stringdbpsw="";

booleancon=dc.dbConnection(dbHost,dbPort,dbName,dbuserName,dbpsw;//连接数据库

if(con

{

ArrayListfields=newArrayList(;

fields.add("message_content";

fields.add("message_type";

Maplmap=newHashMap(;

StringselCondition="wheremessage_type=1limit2";

ArrayListstr=dc.dbSelect("feast",fields,selCondition;//—>>>选择记录

if(str.size(!

=0{

dc.print("selectOK!

";

dc.print("str’ssize="+str.size(;

for(inti=0;i

lmap=(HashMapstr.get(i;

dc.print("lmap="+lmap;

}

}

}

else

dc.print("fail";

StringtableName="feast";

Stringcondition="wheremessage_type=5";

booleandel=dc.dbDelete(tableName,condition;//—>>>删除数据

if(del

dc.print("deleteok";

else

dc.print("deleteerror!

"; 

HashMapm=newHashMap(;

m.put("message_content","ookkk";

m.put("message_number","9";

StringupCondition="wheremessage_type=4";

booleanur=dc.dbUpdate("feast",m,upCondition;//—>>>更新数据

if(ur

dc.print("updateOK";

else

dc.print("updateerror!

";

HashMapmm=newHashMap(;

mm.put("message_number","6";

mm.put("message_content","insertefasdfas";

mm.put("message_type","4";

booleanin=dc.dbInsert("feast",mm;//—>>>插入

if(in

dc.print("insertOK";

else

dc.print("inserterror!

";

booleanclose=dc.dbClose(;//—–>断开数据库

if(close

dc.print("closeOK";

else

dc.print("closefail";

}//endmain(

}//endclassDbConnect

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 工程科技 > 材料科学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1