原生Java操作mysql数据库过程解析
这篇文章主要介绍了原生Java操作mysql数据库过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
1.引入数据库驱动的jar包以通过maven引入mysqldriver为例
1.1到http://mvnrepository.com搜索mysql
1.2复制所需maven配置文件到工程的pom.xml
mysql mysql-connector-java 6.0.6
2.创建数据库连接类DBUtil.java用以连接与关闭数据库
//文件名:DBUtil.java importjava.sql.Connection; importjava.sql.DriverManager; importjava.sql.ResultSet; importjava.sql.SQLException; importjava.sql.Statement; publicclassDBUtil{ staticStringuser="root"; staticStringpassword="root"; staticStringurl="jdbc:mysql://localhost【数据库地址】:3306【端口】/【数据库名称】?serverTimezone=UTC"; static{ try{ Class.forName("com.mysql.cj.jdbc.Driver"); }catch(ClassNotFoundExceptione){ e.printStackTrace(); } } publicstaticConnectiongetConnection(){ Connectionconn=null; try{ conn=DriverManager.getConnection(url,user,password); }catch(SQLExceptione){ e.printStackTrace(); } returnconn; } publicstaticvoidcloseJDBC(ResultSetrs,Statementstmt,Connectionconn){ if(rs!=null){ try{ rs.close(); }catch(SQLExceptione){ e.printStackTrace(); } } if(stmt!=null){ try{ stmt.close(); }catch(SQLExceptione){ e.printStackTrace(); } } if(conn!=null){ try{ conn.close(); }catch(SQLExceptione){ e.printStackTrace(); } } } }
3.在java代码中对表进行操作
3.1查,删,改类似
//查找table表重的id和name Stringsql="selectid,namefromtable"; Connectionconn=DBUtil.getConnection(); PreparedStatementpstmt=null; try{ conn.setAutoCommit(false); pstmt=conn.prepareStatement(sql); ResultSetrs=pstmt.executeQuery(); json=ResultSetToJson.ResultSetToJsonArray(rs); }catch(SQLExceptione){ try{ conn.rollback(); }catch(SQLExceptione1){ e1.printStackTrace(); } }finally{ DBUtil.closeJDBC(null,pstmt,conn); } returnjson;
3.1增
intbasicinfoID=0; Stringsql="INSERTINTOtb_resume_basicinfo(" +"basicinfo_id,realname,gender,birthday,current_loc," +"resident_loc,telephone,email,job_intension,job_experience,head_shot,applicant_id)" +"VALUES(SEQ_ITOFFER_RESUMEBASICINFO.NEXTVAL,?,?,?,?,?,?,?,?,?,?,?)"; Connectionconn=DBUtil.getConnection(); PreparedStatementpstmt=null; try{ //关闭自动提交 conn.setAutoCommit(false); pstmt=conn.prepareStatement(sql); pstmt.setString(1,basicinfo.getRealName()); pstmt.setString(2,basicinfo.getGender()); pstmt.setTimestamp(3,basicinfo.getBirthday()==null?null :newTimestamp(basicinfo.getBirthday().getTime())); pstmt.setString(4,basicinfo.getCurrentLoc()); pstmt.setString(5,basicinfo.getResidentLoc()); pstmt.setString(6,basicinfo.getTelephone()); pstmt.setString(7,basicinfo.getEmail()); pstmt.setString(8,basicinfo.getJobIntension()); pstmt.setString(9,basicinfo.getJobExperience()); pstmt.setString(10,basicinfo.getHeadShot()); pstmt.setInt(11,applicantID); pstmt.executeUpdate(); }catch(SQLExceptione){ try{ //事务回滚 conn.rollback(); }catch(SQLExceptione1){ e1.printStackTrace(); } e.printStackTrace(); }finally{ DBUtil.closeJDBC(null,pstmt,conn); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。