java操作数据库的类——SqlHelper(简易版)

来源:互联网 发布:传奇霸业轮回数据库 编辑:程序博客网 时间:2024/06/05 10:30

一个java操作数据库的类SqlHelper,本例用的是mysql数据库,其实都一样,用别的数据库时候就换一个jar包,import不同的包就行了。

SqlHelper代码:

/** * 对数据库操作的类 */import java.sql.DriverManager;import java.sql.ResultSet;import com.mysql.jdbc.Connection;import com.mysql.jdbc.PreparedStatement;public class SqlHelper {//定义需要的对象Connection ct = null;PreparedStatement ps = null;ResultSet rs = null;String driverName = "com.mysql.jdbc.Driver";String url = "jdbc:mysql://localhost:3306/test";String user = "root";String passwd = "root";//构造函数:初始化ctpublic SqlHelper(){try{//1.加载驱动Class.forName(driverName);//2.得到连接ct = (Connection) DriverManager.getConnection(url, user, passwd);System.out.println("**********数据库连接成功!!**********");}catch (Exception e) {System.out.println("**********数据库连接失败!!**********");e.printStackTrace();}}//增、删、改public boolean exeUpdate(String sql,String paras[]){boolean b=true;try{//3.创建psps=(PreparedStatement) ct.prepareStatement(sql);//4.给?赋值for(int i=0;i<paras.length;i++){ps.setString(i+1, paras[i]);}//5.执行ps.executeUpdate();}catch(Exception e){b=false;e.printStackTrace();}return b;}//查询public ResultSet query(String sql,String paras[]){try {//3.创建ps(加上2个参数:ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY//是为了可以使用ResultSet.last()、ResultSet.beforeFirst()等方法)ps=(PreparedStatement) ct.prepareStatement(sql,ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);//4.给?赋值for(int i=0;i<paras.length;i++){ps.setString(i+1, paras[i]);}//5.执行rs=ps.executeQuery();} catch (Exception e) {e.printStackTrace();}return rs;}//关闭资源方法public void close(){try{if(rs!=null){rs.close();}if(ps!=null){ps.close();}if(ct!=null){ct.close();}}catch(Exception e){e.printStackTrace();}}}

示例:验证登录信息

验证登录信息用户表数据模型

/** * 用户表数据模型:用于完成对用户表的各种操作,主要编写项目需要的业务操作 */public class UserModel {/** * 验证登录用户 * @param username 用户名 * @param password 密码 * @return 返回true或者false */public boolean userCheck(String username,String password){boolean res = true;//用于判断是否有查询结果SqlHelper sh = null;try{//编写Sql语句并设置paras参数String sql="select Username from User where Username=? and Password=?";String[] paras={username,password};sh=new SqlHelper();ResultSet rs=sh.query(sql, paras);if(!rs.next()){res=false;}}catch(Exception e){res=false;e.printStackTrace();}finally{//关闭资源sh.close();}return res;}}

验证登录信息测试代码:(Android版)

if(new UserModel().userCheck(username, password)){//验证登录信息Toast.makeText(LoginActivity.this, "登录成功!", Toast.LENGTH_SHORT).show();startActivity(intent);LoginActivity.this.finish();}else{Toast.makeText(LoginActivity.this, "验证信息有误,请重新输入!", Toast.LENGTH_SHORT).show();}



原创粉丝点击