package web09;
/*获取连接和释放资源的方法
*/ import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; public class jdbc_text1 {
public static Connection getconnection(){
Connection conn=null;
//賦值是爲了防止空指針
try {
Class.forName("com.mysql.jdbc.Driver");
//注册驱动
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/web08","root","root");
//获取连接
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
} public static void release(Connection conn,PreparedStatement pstmt ,ResultSet rs){
//获取连接,创建预处理对象,执行查询操作
if(rs!=null){
try {
rs.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
if(pstmt!=null){
try {
pstmt.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(conn!=null){
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
} }

package web09;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException; import org.junit.Test; /**
* 测试工具类
* @author Administrator
*
*/
public class jdbc_text2 {
@Test
public void textfinduserbyid(){
Connection conn=null;
PreparedStatement pstmt=null;
ResultSet rs=null;
try {
//1.获取链接
conn = jdbc_text1.getconnection();
//2编写sql语句
String sql ="select * from tbl_user where uid=?";
//3获取执行sql语句对象
pstmt = conn.prepareStatement(sql);
//4设置参数
pstmt.setInt(1, 2);
//setint(第一个表示第一个获取位置,第二个表示值)
//5设置查询操作
rs =pstmt.executeQuery();
while(rs.next()){
System.out.println(rs.getString(2)+"------------"+rs.getString("upassword"));
}
} catch (SQLException e) { e.printStackTrace();
}finally {
jdbc_text1.release(conn, pstmt, rs);
}
}
}

  

调用jdbc已经写成的方法----jdbc工具类抽取方式一的更多相关文章

  1. 调用jdbc已经写成的方法----jdbc工具类抽取方式三

    package jdbc_demo3; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.R ...

  2. 调用jdbc已经写成的方法----jdbc工具类抽取方式二

    先创建db.properties driver=com.mysql.jdbc.Driver url=jdbc:mysql://localhost:3306/web08?useUnicode=true& ...

  3. 为什么要用Hibernate框架? 把SessionFactory,Session,Transcational封装成包含crud的工具类并且处理了事务,那不是用不着spring了?

    既然用Hibernate框架访问管理持久层,那为何又提到用Spring来管理以及整合Hibernate呢?把SessionFactory,Session,Transcational封装成包含crud的 ...

  4. 分享两个模拟get和post方法的工具类,让应用能够与服务器进行数据交互

    很久没有码字了,今天跟大家分享一个模拟get和post方法的工具类,在安卓应用中很多都需要跟服务器进行数据交互,这需要两方面的配合,首先服务器端会给应用提供一些数据交互的接口,可是怎样在应用中去调用呢 ...

  5. Java利用JNI调用C/C++写成的DLL

    前言 由于学期作业的要求,笔者需要开发一个语音识别系统.出于对Java的热爱,笔者非常想用Java来写上层程序(前台+数据库的三层),又要用到Microsoft Speech SDK,所以在这些条件下 ...

  6. 【JDBC】学习路径5-提取JDBCUtils工具类

    回顾我们上面几节的内容,我们发现重复代码非常多,比如注册驱动.连接.关闭close()等代码,非常繁杂. 于是我们将这些重复的大段代码进行包装.提取成JDBCUtils工具类. 第一章:提取注册连接模 ...

  7. java 写一个JSON解析的工具类

    上面是一个标准的json的响应内容截图,第一个红圈”per_page”是一个json对象,我们可以根据”per_page”来找到对应值是3,而第二个红圈“data”是一个JSON数组,而不是对象,不能 ...

  8. 自己用反射写的一个request.getParameter工具类

    适用范围:当我们在jsp页面需要接收很多值的时候,如果用request.getParameter(属性名)一个一个写的话那就太麻烦了,于是我想是 否能用反射写个工具类来简化这样的代码,经过1个小时的代 ...

  9. 自己写的java excel导出工具类

    最近项目要用到excel导出功能,之前也写过类似的代码.因为这次项目中多次用到excel导出.这次长了记性整理了一下 分享给大伙 欢迎一起讨论 生成excel的主工具类: public class E ...

随机推荐

  1. ecshop适配php

    https://www.cnblogs.com/xiwang6428/p/5460155.html

  2. ubuntu登陆无限循环

    现象:在Ubuntu登陆界面输入密码之后,黑屏一闪并且出现了check battery state之类的文字之后,又跳转到登录界面. 原因:主目录下的.Xauthority文件拥有者变成了root,从 ...

  3. Socket发送文件

    .Net.cs using System; using System.Collections.Generic; using System.IO; using System.Linq; using Sy ...

  4. div模拟键盘输入

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  5. swift pop实现动感按钮动画

    // //  MyButton.swift //  PopInstall // //  Created by su on 15/12/11. //  Copyright © 2015年 tian. A ...

  6. MySQL性能调优与架构设计——第11章 常用存储引擎优化

    第11章 常用存储引擎优化 前言: MySQL 提供的非常丰富的存储引擎种类供大家选择,有多种选择固然是好事,但是需要我们理解掌握的知识也会增加很多.每一种存储引擎都有各自的特长,也都存在一定的短处. ...

  7. MFC中的一般经验之谈4

    MFC中的窗口控件,都是从CWnd类中继承的.MFC以及ResourceEditor支持的所有控件称为标准控件. 在对话框资源文件夹下,然后邮件新建添加新对话框,新建对话框后要在资源视图中的对话框文件 ...

  8. handsontable-developer guide-cell function

    renderer 展示的数据不是来自于数据源,而是先把DOM和其他信息传给renderer,然后展示. //五种展示函数 TextRenderer: default NumericRenderer A ...

  9. ERROR Function not available to this responsibility.Change responsibilities or contact your System Administrator.

    APPLIES TO: Navigation:  Help > Diagnostics > Custom Code > Personalize  or  Help > Diag ...

  10. 为Visual Studio添加一个“编码的UI测试生成器”的快捷方式

    在添加CodedUI测试用例时,经常需要查看捕获控件的属性.按照常规的方式,只有在添加一个全新的CodedUI编码测试时才能查看捕获控件的属性,这样很不方便. 下面介绍在Visual Studio工具 ...