更加精简的增删改查以及DBUtil方法

                                               方便精简                                           

上一个servlet的增删改查的代码量太大,这次为大家带来更加方便精简的方式。

( • ̀ω•́ )✧φ(>ω<*) 

这里用到了onject语句,所以使查询变得更加简单。

1.工具类

前三个方法不用动,只用写一个调用servlet语句的方法就行了。使用servlet语句的时候直接调用,更加方便。

package org.jun.Util;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DBUtil {



	static {
		try {
			Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}
	}

	public static Connection getconn() {

		Connection conn = null;
		try {
			conn = DriverManager.getConnection(
					"jdbc:sqlserver://localhost:1433;databasename=MyDB", "sa",
					"1");
		} catch (Exception e) {
			e.printStackTrace();
		}

		return conn;
	}

	public static void close(Connection conn, PreparedStatement ps, ResultSet rs) {
		try {
			if(conn!=null)
			conn.close();
			if(ps!=null)
				ps.close();
			if(rs!=null)
				rs.close();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		
	}

	public static int update(String sql, Object[] objs) {
		Connection conn = DBUtil.getconn();
		PreparedStatement ps = null;
		int count = 0;
		try {
			ps = conn.prepareStatement(sql);
			for (int i = 0; i < objs.length; i++) {
				ps.setObject(i + 1, objs[i]);
			}
			 count = ps.executeUpdate();
			if (count > 0) {
				System.out.println("成功");
			} else {
				System.out.println("失败");
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			DBUtil.close(conn, ps, null);
		}
		return count;

	}
}

2.查询语句如下,稍微有点复杂。

package org.jun.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import org.jun.Util.DBUtil;
import org.jun.bean.User;

public class select {

	public static ArrayList<User> getUsers() {
		Connection conn = DBUtil.getconn();
		String sql = "select *from user";
		PreparedStatement ps = null;
		ResultSet rs = null;
		ArrayList<User> users = new ArrayList<User>();

		try {
			rs = ps.executeQuery();
			ps = conn.prepareStatement(sql);
			while (rs.next()) {
				User user = new User();
				user.setId(rs.getInt("1"));
				user.setUserName(rs.getString("2"));
				user.setPwd(rs.getString("3"));
				user.setSex(rs.getString("4"));
				user.setAge(rs.getInt("5"));
			}
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			DBUtil.close(conn, ps, rs);
		}
		return users;
	}
}

3.这是剩下三个语句,用了新的方法,这三个变得特别简单了。

package org.jun.dao;
import org.jun.Util.DBUtil;

public class update {
	
	public static void main(String[] args) {
		
		//这是更新------------------------
		String sql = "update student set pwd = ?and id = ?";
		Object[] objs = { "223", 2 };
		int count = DBUtil.update(sql, objs);
		if (count > 0) {
			System.out.println("成功");
		} else {
			System.out.println("失败");
		}
        
		//这是新增------------------------
		String sql2 = "insert into user (user_name,pwd,sex,age)";
		Object[] objs2 = { "zhangsan", "213", "nan", 18 };
		int count2 = DBUtil.update(sql2, objs2);
		if (count2 > 0) {
			System.out.println("成功");
		} else {
			System.out.println("失败");
		}
		
		//这是删除------------------------
		String sql3 = "(delete from user where id = ?)";
		Object[] objs3 = {2};
		int count3 = DBUtil.update(sql3, objs3);
		if (count3 > 0) {
			System.out.println("成功");
		} else {
			System.out.println("失败");
		}
	}
}

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值