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

一个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";

//构造函数:初始化ct

public 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.创建ps

ps=(PreparedStatement) ct.prepareStatement(sql);

//4.给?赋值

for(int i=0;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

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();

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值