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:/ ...
随机推荐
- HDU 5266 pog loves szh III
题意:给出一棵树,1为根节点,求一段区间内所有点的最近公共祖先. 解法:用一棵线段树维护区间LCA.LCA是dp做法.dp[i][j]表示点i的第2^j个祖先是谁,转移方程为dp[i][j] = dp ...
- asp.net文本编辑器(FCKeditor)
FCKeditor介绍 FCKeditor是一个功能强大支持所见即所得功能的文本编辑器,可以为用户提供微软office软件一样的在线文档编辑服务.它不需要安装任何形式的客户端,兼容绝大多数主流浏览器, ...
- Spring 拦截器配置
Spring interceptor拦截器配置 Spring mvc的拦截器是通过handlerinterceptor来实现的 实现方式: 1.自定义一个类实现Spring的handlerinterc ...
- MVC 实现计算页面执行时间
使用 ActionFilterAttribute 来实现: public class PerformanceActionAttribute:ActionFilterAttribute { public ...
- Tomcat 7 Connector 精读(2) CoyoteAdapter
这个适配器类只讲2个方法,构造方法中我们看到一个适配器对象有自己关联的连接器类. 其中Service的重要任务就是讲客户端端请求交给容器. public void service(org.apache ...
- HDU 1698 Just a Hook 区间更新 lazy标记
lazy标记 #include <iostream> #include <cstdio> #include <cstring> #include <sstre ...
- 【FOI】异或问题
题意: 给出n个数ai 和m个操作 操作有两种 C x y:将ax的值改为y Q x:求几种方案使得 b1^b2^...^bn=x(ai>=bi) 题解: 先推荐一个不错的题解 题目差不多 我之 ...
- spring3.0的BeanFactory上下文context获取不到bean
开门见山,背景: 系统初始化的时候扫包实例化bean,然后一个工具类实现ServletContextAware接口,拿到servletContext之后: WebApplicationContextU ...
- XML操作之Linq to Xml
需要引用的命名空间: using System.Xml.Linq; 常用的类:XDocument.XElement.XAttribute 创建 XDocument对象. XDocument.Loa ...
- MySQL 索引、视图、DML
1.索引 索引是存放在模式(schema)中的一个数据库对象,索引的作用就是提高对表的检索查询速度, 索引是通过快速访问的方法来进行快速定位数据,从而减少了对磁盘的读写操作. 索引是数据库的一个对象, ...