




已阅读5页,还剩4页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
天之火Qutr的专栏 君子终日乾乾,夕惕若,厉,无咎。 HomeJava连接MySql数据库,并且实现插入、删除、更新、选择操作!这是我最近写的一个连接MySql数据库的一个例子,主要实现了插入,删除,更新,选择操作,用的环境是 j2sdk1.4.2_08,Eclipse3.1。以前我的同事用Python写了同样的类,非常的好用,支持了我们公司的大部分业务,现在我们慢慢改用Java了,所以我用Java重写了一遍。一方面在今后的业务中能够用到,另一方面熟悉一下Java。下面我把在Eclipse3.1下怎样配置数据库连接信息简单说一下。1.启动Eclipse3.1。2.建立一个Java project就叫DbConnect 吧,再在该Project下建立一个新类也叫DbConnect 吧。3.右击DbConnect.java文件点import,选择Archive file然后选择你的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的网站上去下载,这个网上到处都是,我就不多说了。下面看程序,有些地方我写了详细的注释应该能看懂。这个类是非常有特色的,在每个方法的传人参数和返回值不变的情况下,希望高手能提出改进意见。多指教,谢谢!/* * 数据库连接、选择、更新、删除演示 */ /import java.sql.*; import java.sql.Connection; import java.sql.Statement; import java.sql.ResultSet; import java.sql.DriverManager; import java.util.*; public class DbConnect /数据成员 and 构造函数 private Connection dbconn; private Statement dbstate; private ResultSet dbresult; DbConnect() dbconn = null; dbstate = null; dbresult = null; /类方法 public void print(String str)/简化输出 System.out.println(str); /end print() /* * 连接MySql数据库 * param host * param port * param dbaName * param usName * param psw * return bool值,连接成功返回真,失败返回假 */ public boolean dbConnection(String host, String port, String dbaName, String usName, String psw) String driverName = com.mysql.jdbc.Driver;/org.gjt.mm.mysql.Driver两个驱动都可以用 String dbHost = host;/数据库的一些信息 String dbPort = port; String dbName = dbaName; String enCoding = ?useUnicode=true&characterEncoding=gb2312; /解决MySql中文问题,要连续写不能空格 String userName = usName; String Psw = psw; String url = jdbc:mysql:/ + dbHost + : + dbPort + / + dbName + enCoding; try Class.forName(driverName).newInstance(); dbconn = DriverManager.getConnection(url, userName, Psw); /getConnection(url, userName, Psw)从给的driver中选择合适的去连接数据库 /return a connection to the URL catch(Exception e) print(url = + url); /发生错误时,将连接数据库信息打印出来 print(userName = + userName); print(Psw + Psw); print(Exception: + e.getMessage();/得到出错信息 if (dbconn != null)/dbconn != null 表示连接数据库成功,由异常保证!? return true; else return false; / end boolean dbConnection() /* * 对数据库表进行选择操作! * param tableName 数据库表名 * param fieles 字段名 * param selCondition 选择条件 * return 一个含有map的List(列表) */ public ArrayList dbSelect(String tableName, ArrayList fields, String selCondition) ArrayList mapInList = new ArrayList(); String selFields = ; for (int i = 0; i删除操作 boolean delResult = false; String sql = delete from + tableName + + condition; try dbstate.executeUpdate(sql);/return int / int delRe = ? delResult = true; catch(Exception e) print (sql = + sql); print (Exception: + e.getMessage(); if (delResult) return true; else return false; /end dbDelete() /* * 对数据库表中记录进行更新操作 * param tabName * param reCount * return bool值,成功返回true,失败返回false */ public boolean dbUpdate(String tabName, HashMap reCount, String upCondition) boolean updateResult = false; String Values = ; Iterator keyValues = reCount.entrySet().iterator(); for(int i = 0; ireCount.size(); +i) Map.Entry entry = (Map.Entry) keyValues.next(); Object key = entry.getKey(); Object value = entry.getValue(); Values += key + = + + value + + , ; String updateValues = Values.substring(0, Values.length() 2); String sql = update + tabName + set + updateValues + + upCondition; try dbstate.executeUpdate(sql); updateResult = true; catch(Exception err) print(sql = + sql); print(Exception: + err.getMessage(); if (updateResult) return true; else return false; /end dbUpdate() /* * 对数据库表进行插入操作 * param tabName * param hm * return bool值,成功返回true,失败返回false */ public boolean dbInsert(String tabName, HashMap values) String sql = ; String insertFields = , temFields = ; String insertValues = , temValues = ; boolean insertResult = false; Iterator keyValues = values.entrySet().iterator(); for(int i = 0; i入口主函数 public static void main(String args) DbConnect dc = new DbConnect(); /连接数据库用到的一些参数. String dbHost = localhost; String dbPort = 3306; String dbName = feast; String dbuserName = root; String dbpsw = ; boolean con = dc.dbConnection(dbHost, dbPort, dbName, dbuserName, dbpsw); /连接数据库 if (con) ArrayList fields = new ArrayList(); fields.add(message_content); fields.add(message_type); Map lmap = new HashMap(); String selCondition = where message_type = 1 limit 2; ArrayList str = dc.dbSelect(feast, fields, selCondition); /选择记录 if (str.size() != 0) dc.print(select OK!); dc.print(strs size = + str.size(); for(int i = 0; i删除数据 if ( del) dc.print(delete ok); else dc.print(delete error!); HashMap m = new HashMap(); m.put(message_content, ookkk); m.put(message_number, 9); String upCondition = where message_type = 4; boolean ur = dc.dbUpdate(feast, m, upCondition); /更新数据 if ( ur) dc.print(update OK); else dc.print(update error!); HashMap mm = new HashMap(); mm.put(message_number, 6); mm.put(message_content, insertefasdfas); mm.put(message_type, 4);
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 多功能车出租合同协议书范本
- 服装零售企业品牌故事与市场推广考核试卷
- 电气设备在智能建筑安全防范系统中的应用考核试卷
- 竹浆在环保型笔记本生产的技术探究考核试卷
- 矿山无人驾驶技术考核试卷
- 淀粉产品的分子结构与物理性质分析考核试卷
- 危险化学品分类与储存要求考核试卷
- 水产品腌制过程中的腌制液对产品质量的影响考核试卷
- 销售总结大会完整的会议流程
- 新高考数学一轮复习讲练教案6.1 数列的概念及简单表示(含解析)
- 北京市通州区2023-2024学年高一下学期期中物理试卷(原卷版)
- CJ/T 123-2016 给水用钢骨架聚乙烯塑料复合管
- 《习作:漫画的启示》学习任务群教学课件-课例1
- 跟着音乐游中国智慧树知到期末考试答案章节答案2024年广州大学
- 传染病预防方案与预防措施(2篇)
- 环氧地坪漆工程全施工合同范本
- 中国法律史-第二次平时作业-国开-参考资料
- 人工智能智慧树知到期末考试答案章节答案2024年复旦大学
- 7s办公室管理培训
- 股骨粗隆间骨折08023课件
- 戊烷油加氢装置HAZOP分析报告
评论
0/150
提交评论