JAVA_JDBC
测试类:
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的更多相关文章
- java_JDBC(4)
一.Statement import java.sql.*; public class TestJDBC { public static void main(String[] args) { Conn ...
- java_JDBC字段对应
地址: http://otndnld.oracle.co.jp/document/products/oracle10g/102/doc_cd/java.102/B19275-03/datacc.htm ...
- java_JDBC(3)
Batch和Fetch两个特性非常重要.Batch相当于JDBC的写缓冲,Fetch相当于读缓冲 如果把JDBC类比为JAVA IO的话,不使用Fetch和Batch相当于直接使用FileInputS ...
- java_JDBC(2)
1.Statement 每次执行sql语句,数据库都要执行sql语句的编译 ,最好用于仅执行一次查询并返回结果的情形,效率高于PreparedStatement. 2.PreparedStatemen ...
- java_JDBC(1)
Java连接Oracle步骤: 1.注册加载驱动 驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";Class.forName(" ...
- Java_JDBC一般写法
JDBC是Java DataBase Connectivity,Java程序访问数据库的标准接口. 如果是maven工程先加入依赖的jar包: <dependency> <group ...
- Java_JDBC连接数据库_使用读取配置文件的方式
package com.homewoek3_4.dao; import java.io.IOException; import java.io.InputStream; import java.sql ...
- Java_JDBC连接数据库
package com.accp.dao; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Pre ...
- Java_JDBC 连接
今天,接着上一篇( mysql 数据库 )的基础上,我就写一下 Java 怎样连接数据库,并且操作数据库. 首先,我们先来准备一下数据库连接的驱动: mysql 的 jar 包下载地址:https:/ ...
随机推荐
- [selenium webdriver Java]使用自定义条件同步测试
Selenium WebDriver可以结合ExpectedCondition类来定义自己期望的条件 创建一个新的ExpectedCondition接口,必须实现apply方法 等待元素出现 publ ...
- 【原】Storm配置
Storm入门教程 1. Storm基础 Storm Storm主要特点 Storm基本概念 Storm调度器 Storm配置 Guaranteeing Message Processing(消息处理 ...
- MVC模式 - 理解J2EE模式
MVC模式Model-View-Controller头字母的缩写,中文翻译为“模型-视图-控制器” 模式(或者模型).该模式把一个GUI应用划分 业务逻辑处理(M),画面表示(V),控制(C) ...
- HDU-4639 Hehe 简单DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4639 简单递推题,呵呵,不多说... //STATUS:C++_AC_15MS_272KB #incl ...
- Unity3D为FirstPersonController添加跑步与下蹲动作
using UnityEngine; using System.Collections; public class MyController : MonoBehaviour { ; ; ; priva ...
- 使用Markdown编辑器写博客
使用Markdown编辑器写博客 本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦: Markdown和扩展Markdown简洁的语法 代码块高亮 图片链接和图 ...
- [OC Foundation框架 - 12] NSNumber
1.概念 NSArray,NSDictionary只能放OC对象,不能放入基本数据类型 必须使用包装类NSNumber,把基本数据类型包装成OC对象 不支持自动包装解包 void number() ...
- 让UILabel具有链接功能,点击后调用safari打开网址
UILabel *labelGovUrl = [[UILabel alloc] initWithFrame:CGRectMake(73.0, 330.0, 180.0, 40.0)]; labelGo ...
- ECSHOP在线手册布局参考图--文章列表页 article_cat.dwt
A.购物车 1,设置方法 程序自动读取购物车的商品数量 2,代码相关 cart.lbi 中 {insert_scripts files='transport.js'} <div clas ...
- java反射快速入门(一)
本文会从以下几个方面讲起 ① 反射的简单解释 ② java反射的API接口 及 demo ③ 反射的优缺点.应用场景 一.什么是反射? java反射:在程序运行中动态获取类的信息,及动态调用对象的方法 ...