自定义连接数据库的util类

package com.shuzf.jdbc;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; public class JDBCUtil {
// 定义驱动器类的路径
private static final String DRIVER = "oracle.jdbc.driver.OracleDriver";
// 定义用于连接数据库的URL
private static final String URL = "jdbc:oracle:thin****l";
// 定义用于访问数据库的用户名及密码
private static final String USERNAME = "s****t";
private static final String PASSWORD = "t***r"; // 加载驱动器类
static {
try {
Class.forName(DRIVER);
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
} // 定义获得连接的方法
public static Connection getConnection() {
Connection conn = null;
;
try {
conn = DriverManager.getConnection(URL, USERNAME, PASSWORD);
} catch (SQLException e) {
e.printStackTrace();
}
return conn;
} // 定义释放数据库资源的方法
public static void destory(Connection con, Statement stat, ResultSet rs) {
if (rs != null) {
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
} if (stat != null) {
try {
stat.close();
} catch (SQLException e) {
e.printStackTrace();
}
} if (con != null) {
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
} }

基本类

package com.shuzf.jdbc;

public class Student {
private Integer Id;
private String Name;
private String Sex;
private int Age; public Student() {
super();
}
public Student(String name, String sex, int age) {
Id = null;
Name = name;
Sex = sex;
Age = age;
}
public Integer getId() {
return Id;
}
public void setId(Integer id) {
Id = id;
}
public String getName() {
return Name;
}
public void setName(String name) {
Name = name;
}
public String getSex() {
return Sex;
}
public void setSex(String sex) {
Sex = sex;
}
public int getAge() {
return Age;
}
public void setAge(int age) {
Age = age;
} }

增删改查

package com.shuzf.jdbc;

import java.sql.Connection;
import java.sql.Date;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList; public class JdbcTest { public int insert(Student student) {
Connection conn = JDBCUtil.getConnection();
int i = 0;
PreparedStatement pst = null;
String sql = "insert into students (Name,Sex,Age,Addtime) values(?,?,?,?)";
try {
pst = conn.prepareStatement(sql);
pst.setString(1, student.getName());
pst.setString(2, student.getSex());
pst.setInt(3, student.getAge());
pst.setDate(4, new Date(new java.util.Date().getTime()));
i = pst.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.destory(conn, pst, null);
}
return i;
} public int update(Student student) {
Connection conn = JDBCUtil.getConnection();
int i = 0;
PreparedStatement pst = null;
String sql = "update students set Age='" + student.getAge() + "' where Name='" + student.getName() + "'";
try {
pst = conn.prepareStatement(sql);
i = pst.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.destory(conn, pst, null);
}
return i;
} public int delete(Student student) {
Connection conn = JDBCUtil.getConnection();
int i = 0;
PreparedStatement pst = null;
String sql = "delete from students where Name='" + student.getName() + "'";
try {
pst = conn.prepareStatement(sql);
i = pst.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.destory(conn, pst, null);
}
return i;
} public ArrayList<Student> getStudent(String name) {
Connection conn = JDBCUtil.getConnection();
PreparedStatement pst = null;
ResultSet rs = null;
ArrayList<Student> students = new ArrayList<Student>();
String sql = "select * from students where Name='" + name + "'";
try {
pst = conn.prepareStatement(sql);
rs = pst.executeQuery();
// int count = rs.getMetaData().getColumnCount();// 指示列数目的 int值
while (rs.next()) {
Student s = new Student();
s.setId(rs.getInt("id"));
s.setName(rs.getString("name"));
s.setSex(rs.getString("sex"));
s.setAge(rs.getInt("age"));
students.add(s);
}
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtil.destory(conn, pst, rs);
}
return students;
} public static void main(String[] args) {
// TODO Auto-generated method stub } }

Java连接数据库,及增删改查的更多相关文章

  1. Java连接数据库,增删改查

    底层代码: package com.zdsoft; import java.sql.*; /** * Created by lx on 2017/6/22. */ public class JDBCU ...

  2. 基于springmvc、ajax,后台连接数据库的增删改查

    前言 前段时间在博客园上找了一个springmvc的例子,照着学了一下,算是对springmvc有了一个初步的了解,打一个基础,下面是链接.(我只看了博客,视频太耗时间了) 博客链接:http://w ...

  3. java DMO及增删改查代码的自动生成

    在web开发过程中,尤其是后台管理系统的开发中,少不了增删改成的基础操作,原来我自己的做法是一份一份的拷贝粘贴,然后修改其中的不同,然而这样既枯燥无味又浪费了大量的时间,所以根据自己项目结构的特点写了 ...

  4. BaseDao代码,用于连接数据库实行增删改查等操作

    在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...

  5. 【简易版】Java ArrayList(增删改查)

    1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: (1)动态的增加和减少元素 (2)实现了ICollectio ...

  6. JDBC连接数据库及增删改查操作

    什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...

  7. 百度鹰眼Java接口调用增删改查实例

    因感觉百度鹰眼的使用场景比较符合实际业务,于是对百度鹰眼做了简单功能调试.刚开始使用springframework封装的RestTemplate,但是测试提示ak参数不存在.后又试了几种方法,均提示a ...

  8. Java学生信息增删改查(并没用数据库)

    一个泛型的应用,Java版本增删改查,写的简陋,望批评指正 2016-07-02 很久前写的一个程序了.拿出来存一下,不是为了展示啥,自己用的时候还可以看看.写的很粗糙. import java.io ...

  9. MongoDB(二)-- Java API 实现增删改查

    一.下载jar包 http://central.maven.org/maven2/org/mongodb/mongo-java-driver/ 二.代码实现 package com.xbq.mongo ...

  10. LR接口测试---Java Vuser之增删改查

    import lrapi.lr; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...

随机推荐

  1. 手把手教您将 libreoffice 移植到函数计算平台

    LibreOffice 是由文档基金会开发的自由及开放源代码的办公室套件.LibreOffice 套件包含文字处理器.电子表格.演示文稿程序.矢量图形编辑器和图表工具.数据库管理程序及创建和编辑数学公 ...

  2. linux rsync 实际应用

    linux rsync 实际应用 一.rsync的概述 rsync是类unix系统下的数据镜像备份工具,从软件的命名上就可以看出来了——remote sync.rsync是Linux系统下的文件同步和 ...

  3. 适用于app.config与web.config的ConfigUtil读写工具类

    之前文章:<两种读写配置文件的方案(app.config与web.config通用)>,现在重新整理一个更完善的版本,增加批量读写以及指定配置文件路径,代码如下: using System ...

  4. HDFS架构及原理

    原文链接:HDFS架构及原理 引言 进入大数据时代,数据集的大小已经超过一台独立物理计算机的存储能力,我们需要对数据进行分区(partition)并存储到若干台单独的计算机上,也就出现了管理网络中跨多 ...

  5. xshell连接虚拟机详解--技术流ken

    xshell连接虚拟机 第一步:网络模式更改为桥接模式 第二步:重启网络 [root@ken1 ~]# systemctl restart network 第三步:获取IP地址 输入命令ip a 第四 ...

  6. Java多线程之---用 CountDownLatch 说明 AQS 的实现原理

    本文基于 jdk 1.8 . CountDownLatch 的使用 前面的文章中说到了 volatile 以及用 volatile 来实现自旋锁,例如 java.util.concurrent.ato ...

  7. [PHP] try catch在日常中的使用

    1.try catch可以捕获上一层throw的异常 2.finally是不管try或者catch任何一块有return, 最终都会执行的块 3.try也是可以捕获到call_user_func_ar ...

  8. C# 提取PPT文本和图片的实现方案

    在图文混排的文档中,我们可以根据需要将文档中的文字信息或者图片提取出来,通过C#代码可以提取Word和PDF文件中的文本和图片,那么同样的,我们也可以提取PPT幻灯片当中的文本和图片.本篇文档将讲述如 ...

  9. JAVA设计模式——开篇

    设计模式很重要,重要性我就不再复述了.最主要的是,通常我们在写一定量代码后,常用的方法什么的都熟悉后,想再提高代码能力,我找到的最好的方法还是去学习,理解设计模式.不理解设计模式,看一些开源框架和ja ...

  10. 为什么选择 Intellij IDEA 作为日常开发工具

    作为一个从事 Java 开发的程序员,每天离不开编辑器的帮助.还记得刚开始学习 Java 编程的时候,使用 Eclipse 作为日常开发工具.后来工作以后,需要使用 Intellij IDEA,刚开始 ...