mysql数据库的连接以及增删改查Java代码实现(PreparedStatement版)
来源:互联网 发布:禅道linux安装包 编辑:程序博客网 时间:2024/05/17 05:00
数据库:
create table t1(id int primary key not null auto_increment,name varchar(32),password varchar(32));insert into t1(name,password) values('admin','123');insert into t1(name,password) values('zhangsan','123');insert into t1(name,password) values('lisi','123');
Java代码:
mySqlConnection.java代码:
package com.dbdao.mysql;import java.sql.Connection;import java.sql.DriverManager;import java.sql.PreparedStatement;import java.sql.ResultSet;import java.sql.SQLException;import org.junit.Test;public class mySqlConnection {//创建数据库驱动名称private static String Driver_class="com.mysql.jdbc.Driver";//数据库链接地址private String url="jdbc:mysql://localhost:3306/test";//数据库用户名private String user="root";//数据库密码private String password="11";//数据库链接private Connection con=null;//准备声明sql语句private PreparedStatement pstmt=null;//结果集private ResultSet rs=null;//影响行数private int i;/* * 创建驱动 * */static{try {Class.forName(Driver_class);} catch (ClassNotFoundException e) {// TODO Auto-generated catch blocke.printStackTrace();}}/* * 加载驱动 * */@Testpublic void getConnect() {// TODO Auto-generated method stubtry {con=DriverManager.getConnection(url, user, password);} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}//判断数据库是否加载成功if(con!=null){System.out.println("数据库加载成功!");}else{System.out.println("数据库加载失败!");}}/* * 执行sql语句 * */public void doSql(String sql,Object[] object) {// TODO Auto-generated method stub//判断sql语句是否存在if(sql!=null){//加载驱动getConnect();//判断object数组是否存在if(object==null){//如果不存在,创建一个,防止出现空指针异常object=new Object[0];}try {//声明一条准备的sql语句pstmt=con.prepareStatement(sql);//为Object对象一一赋值for(int i=0;i<object.length;i++){pstmt.setObject(i+1, object[i]);}//执行声明的sql语句pstmt.execute();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}else{System.out.println("sql语句并不存在!");}}/* * 获取结果集 * */public ResultSet getRS(){try {//获取结果集方法rs=pstmt.getResultSet();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}//返回结果集return rs;}/* * 获取影响行数 * */public int getUpdateCount() {// TODO Auto-generated method stubtry {//获取影响行数方法i=pstmt.getUpdateCount();} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}//返回影响行数return i;} /* * 关闭方法 * */ public void getClose() { // TODO Auto-generated method stub //关闭结果集 try { //结果集关闭方法 if(rs!=null){ rs.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ //关闭声明的sql语句 try { //关闭声明的sql语句方法 if(pstmt!=null){ pstmt.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); }finally{ //卸载驱动 try { //驱动卸载方法 if(con!=null){ con.close(); } } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } }
loginService.java代码:
package com.service;import java.sql.ResultSet;import java.sql.SQLException;import org.junit.Test;import com.dbdao.mysql.mySqlConnection;public class loginService {//导入mySqlConnection类mySqlConnection mysqlCon=new mySqlConnection();//准备sql语句private String sql;//影响行数(数据变更后,影响行数都是大于0,等于0时没变更,所以说如果变更失败,那么影响行数必定为负)private int i=-1;//结果集private ResultSet rs;/* * 插入数据 * */@Testpublic void insert() {// TODO Auto-generated method stub//创建sql语句sql="insert into t1(name,password) values(?,?)";//创建object数组Object[] object=new Object[]{"admin","123456"};//执行sql语句mysqlCon.doSql(sql, object);//获取影响行数i=mysqlCon.getUpdateCount();//判断是否插入成功if(i!=-1){System.out.println("数据插入成功!");}else{System.out.println("数据插入失败!");}//关闭链接mysqlCon.getClose();}/* * 删除数据 * */@Testpublic void delete() {// TODO Auto-generated method stub//创建sql语句sql="delete from t1 where id=?";//创建object数组Object[] object=new Object[]{3};//执行sql语句mysqlCon.doSql(sql, object);//获取影响行数i=mysqlCon.getUpdateCount();//判断是否删除成功if(i!=-1){System.out.println("数据删除成功!");}else{System.out.println("数据删除失败!");}//关闭链接mysqlCon.getClose();}/* * 更新数据 * */@Testpublic void update() {// TODO Auto-generated method stub//创建sql语句sql="update t1 set password=? where name=?";//创建Object数组Object[] object=new Object[]{"11","admin"};//执行sql语句mysqlCon.doSql(sql, object);//获取影响行数i=mysqlCon.getUpdateCount();//判断数据是否更新成功if(i!=-1){System.out.println("数据更新成功!");}else{System.out.println("数据更新失败!");}//关闭链接mysqlCon.getClose();}/* * 遍历数据 * */@Testpublic void select() {// TODO Auto-generated method stub//创建sql语句sql="select * from t1";//执行sql语句mysqlCon.doSql(sql, null);//获取结果集rs=mysqlCon.getRS();//判断结果集是否为空if(rs!=null){try {//将光标移动到结果集末端,注意此处不能使用rs.afterLast();否则为空值。rs.last();//获取结果集行数i=rs.getRow();//判断结果集是否存在if(i>0){//将光标移动到结果集前端rs.beforeFirst();//循环遍历所有行数while(rs.next()){//遍历每行元素的内容String name=rs.getString("name");String password=rs.getString("password");//在控制台打印出结果System.out.println("name:"+name+" password:"+password);}}else{System.out.println("结果集为空!");}} catch (SQLException e) {// TODO Auto-generated catch blocke.printStackTrace();}}else{System.out.println("结果集不存在!");}//关闭链接mysqlCon.getClose();}}
0 0
- mysql数据库的连接以及增删改查Java代码实现(PreparedStatement版)
- mysql数据库的连接以及增删改查Java代码实现(Statement版)
- [Mysql数据库] mysql数据库的连接以及增删改查Java代码实现
- JAVA 利用JDBC连接MYSQL数据库以及增删改查的实现【学习笔记】
- java连接MySql数据库和增删改查代码
- java连接mysql实现增删改查代码
- Java使用JDBC连接MySQL数据库,实现增删改查
- java jdbc连接mysql数据库实现增删改查操作
- java连接mysql数据库实现增删查改
- Java使用jdbc连接MySql数据库,实现增删改查
- Java连接MySQL实现增删改查
- java连接my sql数据库以及增删改查方法的实现
- java连接数据库的增删改查
- Java实现对mysql数据库的增删查改
- MySql c# 连接 mysql 以及实现简易增删改查
- jdbc实现简单的增删查改(preparedstatement)
- Java语句轻松实现与数据库MYSQL【本地数据库】的连接,和对数据库的增删改查操作
- c# 连接 mysql 以及实现简易增删改查
- C++作业
- ACM-16进制的简单运算
- VS2010更换智能提示工具(visual assist)
- 杀死当前Excel进程
- 第十二周上机项目3日期时间类
- mysql数据库的连接以及增删改查Java代码实现(PreparedStatement版)
- (转)hadoop上运行c++程序步骤
- 2015年第十二周项目二:摩托车继承自行车和机动车
- A. DOM高级 02 表格鼠标经过高亮
- Mplayer 移植
- 前端开发面试题
- Android的ImageView介绍-android学习之旅(二十二)
- flag ?4 : 5语法
- ACM-C小加 之 随机数