Java连接数据库,及增删改查
自定义连接数据库的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连接数据库,及增删改查的更多相关文章
- Java连接数据库,增删改查
底层代码: package com.zdsoft; import java.sql.*; /** * Created by lx on 2017/6/22. */ public class JDBCU ...
- 基于springmvc、ajax,后台连接数据库的增删改查
前言 前段时间在博客园上找了一个springmvc的例子,照着学了一下,算是对springmvc有了一个初步的了解,打一个基础,下面是链接.(我只看了博客,视频太耗时间了) 博客链接:http://w ...
- java DMO及增删改查代码的自动生成
在web开发过程中,尤其是后台管理系统的开发中,少不了增删改成的基础操作,原来我自己的做法是一份一份的拷贝粘贴,然后修改其中的不同,然而这样既枯燥无味又浪费了大量的时间,所以根据自己项目结构的特点写了 ...
- BaseDao代码,用于连接数据库实行增删改查等操作
在学习JavaWeb时会用到此代码,用于实行增删改查操作 1 package com.bdqn.dao; import java.sql.Connection; import java.sql.Dri ...
- 【简易版】Java ArrayList(增删改查)
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: (1)动态的增加和减少元素 (2)实现了ICollectio ...
- JDBC连接数据库及增删改查操作
什么是JDBC?Java语言访问数据库的一种规范,是一套APIJDBC (Java Database Connectivity) API,即Java数据库编程接口,是一组标准的Java语言中的接口和类 ...
- 百度鹰眼Java接口调用增删改查实例
因感觉百度鹰眼的使用场景比较符合实际业务,于是对百度鹰眼做了简单功能调试.刚开始使用springframework封装的RestTemplate,但是测试提示ak参数不存在.后又试了几种方法,均提示a ...
- Java学生信息增删改查(并没用数据库)
一个泛型的应用,Java版本增删改查,写的简陋,望批评指正 2016-07-02 很久前写的一个程序了.拿出来存一下,不是为了展示啥,自己用的时候还可以看看.写的很粗糙. import java.io ...
- MongoDB(二)-- Java API 实现增删改查
一.下载jar包 http://central.maven.org/maven2/org/mongodb/mongo-java-driver/ 二.代码实现 package com.xbq.mongo ...
- LR接口测试---Java Vuser之增删改查
import lrapi.lr; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...
随机推荐
- CentOS 7 镜像文件各个版本区别
CentOS ISO 镜像文件的功能 引导安装 CentOS ISO 镜像文件包含有安装程序,官方称其为 Anaconda,用来引导安装 CentOS 提供 CentOS 的安装文件 镜像文件不一定包 ...
- 解读经典《C#高级编程》最全泛型协变逆变解读 页127-131.章4
前言 本篇继续讲解泛型.上一篇讲解了泛型类的定义细节.本篇继续讲解泛型接口. 泛型接口 使用泛型可定义接口,即在接口中定义的方法可以带泛型参数.然后由继承接口的类实现泛型方法.用法和继承泛型类基本没有 ...
- PHP指定日期转时间戳
使用date_parse_from_format 可以转换指定的格式:举个例子: <?php $str = '2018.10.01';//或者 2018年10月1日 $arr = date_pa ...
- Java学习笔记之——Set容器
Set容器: 特点:无序.不重复 Set实现了Collection接口 常用方法见API 遍历: 迭代器.foreach 常用类: HashSet: 底层结构:HashMap,使用其中的键来存储元素 ...
- 命令行BASH的基本操作
前面说了,我们要尽量少用GNOME图形界面,而应该以使用BASH命令行为主. SHELL Shell是操作系统内核的壳,因为我们不能直接操作系统的内核Kernel,只能通过Shell去操作,Shell ...
- Django学习之三:django-admin 和 项目manage.py程序
目录 Django django-admin 和 项目manage.py程序 它俩是什么? 命令程序用法 常用命令 Django django-admin 和 项目manage.py程序 它俩是什么? ...
- html5 拖拽上传文件时,屏蔽浏览器默认打开文件
参考: https://www.cnblogs.com/kingsm/p/9849339.html
- testlib.h从入门到入坟
学了这么久OI连个spj都不会写真是惭愧啊... 趁着没退役赶紧学一波吧 配置 github下载地址 我是直接暴力复制粘贴的.. 然后扔到MingW的目录里 直接引用就好啦 基本语法 引用testli ...
- arcgis api 3.x for js 入门开发系列十三地图最短路径分析(附源码下载)
前言 关于本篇功能实现用到的 api 涉及类看不懂的,请参照 esri 官网的 arcgis api 3.x for js:esri 官网 api,里面详细的介绍 arcgis api 3.x 各个类 ...
- C#的自动拼接Sql语句Insert方法及思路
思路: 1.想想插入语句,大概是这样的一个框架:INSERT INTO 表名 (数据库列名) values (值) 2.这里要3个变量是不固定的,分别是:表名.数据库列名.值: a.表名我们这里很容易 ...