测试类:
1 import java.util.ArrayList;
import java.util.List; /**
* 创建数据库:
* 1.加载驱动
* Class.forName("org.sqlite.JDBC");
* 2.通过驱动管理类获得Connection对象 jdbc:sqlite:+数据库的路径
* Connection connection = DriverManager.getConnection("jdbc:sqlite:d:/myTest.db");
* 3.通过Connection对象获得Statement对象
* Statement statement = connection.createStatement();
* 4.通过statement对象执行sql语句,获得结果集
* ResultSet rSet = statement.executeQuery("select * from Student");
*
* @author Administrator
*
*/
/**
* exc:
* 通过Java代码实现,创建表,并对其进行增删改查的功能
*
* 注意:需自导入 sqlitejdbc-0.5.4.jar
* @author Administrator
* !!!
* 如果出现以下错误:Unsupported major.minor version 52.0
* 解决方法: 修改编译方式,降低javaee ,javase的版本,同时让编译方式和Jdk版本对应。
* 右击项目 properties或者alt + enter 选择java Complier 选择 Complier compliance level的版本和当前jdk版本对应,
* 如果是web项目还要降低 jstl 和javaee的版本。
*/
public class Test {
public static void main(String[] args) {
TestJDBC tj = new TestJDBC();
tj.createTable();
tj.addUser("张三", "男");
tj.addUser("李四", "女");
tj.addUser("王五", "男");
tj.addUser("赵六", "男");
System.out.println( "增:"+tj.addUser("周七", "女"));
System.out.println("删:"+tj.deleteUser(4));
System.out.println("改:"+tj.updateUser(2, "haha", "不详"));
List<User> list = tj.getAllUser();
for (User user : list) {
System.out.println("查:"+user);
} }
}

User类:

 public class User {
private String name;
private int _id;
private String sex;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getId() {
return _id;
}
public void setId(int id) {
this._id = id;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
@Override
public String toString() {
return "User [name=" + name + ", _id=" + _id + ", sex=" + sex + "]";
} }

TestJDBC类

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List; public class TestJDBC {
Connection con;//数据库一个连接对象
Statement statement;//执行sql语句
ResultSet rs;//得到select语句执行的结果集 public Statement getStatement(){
try {
//加载驱动
Class.forName("org.sqlite.JDBC");
//获得connection对象
con = DriverManager.getConnection("jdbc:sqlite:d:/mySqlite.db");//没有会自动创建一个数据库
//得到Statement对象
statement = con.createStatement();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return statement; }
public void closeConnection(){
if(con!= null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(statement != null){
try {
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} }
public void createTable(){
statement = getStatement();
try {
statement.execute("create table if not exists User(_id Integer primary key autoincrement,name varchar(20),sex varchar(20))");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
closeConnection();
}
}
public boolean addUser(String name,String sex){
statement = getStatement();
try {
//insert into User(name,age) values('张三',18)
int count = statement.executeUpdate("insert into User(name,sex) values('"+name+"','"+sex+"')");
if(count>0){
return true;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
closeConnection();
}
return false;
}
public boolean deleteUser(int id){
statement = getStatement();
try {
int count = statement.executeUpdate("delete from User where _id = "+id);
if(count>0)
return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public boolean updateUser(int id,String name,String sex){
statement = getStatement();
try {
int count = statement.executeUpdate("update User set name='"+name+"',sex='"+sex+"'where _id ="+id);
if(count>0)
return true;
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
public List<User> getAllUser(){
List<User> list = new ArrayList<User>(); statement = getStatement();
try {
rs = statement.executeQuery("select * from User");
while(rs.next()){
User user = new User();
user.setName(rs.getString("name"));
user.setSex(rs.getString("sex"));
user.setId(rs.getInt("_id"));
list.add(user);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally{
closeConnection();
} return list; }
}

JAVA_JDBC的更多相关文章

  1. java_JDBC(4)

    一.Statement import java.sql.*; public class TestJDBC { public static void main(String[] args) { Conn ...

  2. java_JDBC字段对应

    地址: http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/java.102/B19275-03/datacc.htm ...

  3. java_JDBC(3)

    Batch和Fetch两个特性非常重要.Batch相当于JDBC的写缓冲,Fetch相当于读缓冲 如果把JDBC类比为JAVA IO的话,不使用Fetch和Batch相当于直接使用FileInputS ...

  4. java_JDBC(2)

    1.Statement 每次执行sql语句,数据库都要执行sql语句的编译 ,最好用于仅执行一次查询并返回结果的情形,效率高于PreparedStatement. 2.PreparedStatemen ...

  5. java_JDBC(1)

    Java连接Oracle步骤: 1.注册加载驱动 驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";Class.forName(" ...

  6. Java_JDBC一般写法

    JDBC是Java DataBase Connectivity,Java程序访问数据库的标准接口. 如果是maven工程先加入依赖的jar包: <dependency> <group ...

  7. Java_JDBC连接数据库_使用读取配置文件的方式

    package com.homewoek3_4.dao; import java.io.IOException; import java.io.InputStream; import java.sql ...

  8. Java_JDBC连接数据库

    package com.accp.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pre ...

  9. Java_JDBC 连接

    今天,接着上一篇( mysql 数据库 )的基础上,我就写一下 Java 怎样连接数据库,并且操作数据库. 首先,我们先来准备一下数据库连接的驱动: mysql 的 jar 包下载地址:https:/ ...

随机推荐

  1. extjs分组查询

    <script type="text/jscript"> var grid; Ext.onReady(function () { Ext.QuickTips.init( ...

  2. bzoj 2716 天使玩偶(CDQ分治,BIT)

    [题目链接] http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=29234 [题意] 询问当前点与已知点的最小曼哈顿距离. [思路 ...

  3. NOIP2010 引水入城

    4引水入城 题目描述 在一个遥远的国度,一侧是风景秀美的湖泊,另一侧则是漫无边际的沙漠.该国的行政区划十分特殊,刚好构成一个N 行M 列的矩形,如上图所示,其中每个格子都代表一座城市,每座城市都有一个 ...

  4. hadoop面试题答案

    Hadoop 面试题,看看书找答案,看看你能答对多少(2) 1. 下面哪个程序负责 HDFS 数据存储.a)NameNode  b)Jobtracker  c)Datanode d)secondary ...

  5. HW5.35

    import java.util.Scanner; public class Solution { public static void main(String[] args) { Scanner i ...

  6. POJ3254 - Corn Fields(状态压缩DP)

    题目大意 给定一个N*M大小的土地,土地有肥沃和贫瘠之分(每个单位土地用0,1来表示贫瘠和肥沃),要求你在肥沃的单位土地上种玉米,如果在某个单位土地上种了玉米,那么与它相邻的四个单位土地是不允许种玉米 ...

  7. 【现代程序设计】【Homework-01】

    1维的最大子数组之和 对于1维的最大子数组之和 假设f[i]表示:对于1..i这个序列中,包含i这个元素的最大序列的值 则对于f[i],0<i<=n; 应该有 f[i]=max(a[i], ...

  8. drag and drop

    <!DOCTYPE HTML> <html> <head> <script type="text/javascript"> func ...

  9. Android实例-使用自定义字体文件(XE8+小米2)

    结果: 1.需要修改DELPHI自身的FMX.FontGlyphs.Android.pas,复制到程序的根目录下(红色部分为修改过的). 2.字体文件从 C:\Windows\Fonts 直接拷贝到A ...

  10. Delphi XE5 安卓手机要求

    1 ARMv7 的 CPU v6 的肯定不支持. 2 黑屏是因为你的手机 CPU 不支持 NEON 特性.或者是 T2 海思 CPU .这 2 个不支持. 3 系统版本  2.3.3 到 2.3.9 ...