//原生jdbc操作案例

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.Scanner; /*
* Java实现一个登录功能
* 可以在控制台输入用户名和密码
* 查询数据表,查询到数据,登录成功,否则登录失败
*/
public class JDBCDemo {
public static void main(String[] args) throws Exception{
Scanner sc = new Scanner(System.in);
//注册驱动
Class.forName("com.mysql.jdbc.Driver");
//获取数据库连接
Connection con =
DriverManager.getConnection("jdbc:mysql://localhost:3306/***", "***", "***");
//获取SQL语句执行对象
Statement stat = con.createStatement(); //键盘输入
String user = sc.nextLine();
String pass = sc.nextLine(); //登录查询的SQL
String sql = "SELECT * FROM users WHERE username='"+user+"' AND PASSWORD='"+pass+"'"; System.out.println(sql); //执行查询语句,返回结果集对象
ResultSet rs = stat.executeQuery(sql);
//判断是否有结果集
while(rs.next()){
System.out.println(rs.getString("username")+" "+rs.getString("password"));
}
rs.close();
stat.close();
con.close();
}
}

//封装后的DBUtil工具

 /*
* Apache提供的数据库连接池 dbcp
* javax.sql.DataSource接口,是所有连接池的标准规范
* 接口中的方法 Connection getConnection()
*
* org.apache.connons.dbcp.BasicDataSource类,实现接口DataSource
* 设置数据库连接的四大信息
* 驱动类,url,username,password
* BasicDataSource类方法 setXXX设置
*/
public class DBCPUtils {
//成员位置,创建接口实现类对象
private static BasicDataSource dataSource = new BasicDataSource();
static{
//设置数据库连接四大信息
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql://localhost:3306/***");
dataSource.setUsername("****");
dataSource.setPassword("****");
} public static Connection getConnection () throws SQLException{ //调用接口实现类对象BasicDataSource方法,返回连接
return dataSource.getConnection();
}
}

//C3p0工具

 /*
* 连接池工具类 c3p0
* 找到接口DataSource实现类对象
* com.mchange.v2.c3p0.ComboPooledDataSource类实现接口
*/
public class C3P0Utils {
//成员位置,创建DataSource接口实现类对象--读取配置文件
private static ComboPooledDataSource dataSource = new ComboPooledDataSource();
/*static{
try{
//设置数据库连接四大信息
dataSource.setDriverClass("com.mysql.jdbc.Driver");
dataSource.setJdbcUrl("jdbc:mysql://localhost:3306/****");
dataSource.setUser("****");
dataSource.setPassword("****");
}catch(Exception ex){}
}*/ public static DataSource getDataSource(){
return dataSource;
} /*
* 提供方法,返回数据库连接对象
*/
public static Connection getConnection() throws SQLException{
return dataSource.getConnection();
} /*
* 定义静态方式,实现释放资源
*/
public static void close(ResultSet rs,Statement stat,Connection con){
if(rs!=null)
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
} if(stat!=null)
try{
stat.close();
}catch(Exception ex){} if(con!=null)
try{
con.close();
}catch(Exception ex){}
}
}

//C3p0-config.xml内容

 <?xml version="1.0" encoding="UTF-8"?>
<c3p0-config>
<default-config>
<property name="user">root</property>
<property name="password">root</property>
<property name="driverClass">com.mysql.jdbc.Driver</property>
<property name="jdbcUrl">jdbc:mysql:///***</property>
</default-config>
</c3p0-config>

JDBC相关的更多相关文章

  1. JDBC相关总结

    JDBC statement的相关总结 1.Statement.PreparedStatement和CallableStatement都是接口(interface). 2.Statement继承自Wr ...

  2. spring学习二:jdbc相关回顾以及spring下dao

    目录: Part一:回顾java web部分的jdbc.事务.连接池和dbutils工具等 : Part二:spring的JdbcTemplate使用: Part三:spring的事务处理: Part ...

  3. JDBC相关的类介绍

    JDBC 背景:1996年,Sun公司推出了Java数据库连接(Java Database Connectivity JDBC)工具包的第一个版本.该工具包使得程序员可以使用结构化语言SQL连接到一个 ...

  4. JDBC相关知识

    一.连接数据库 1. 步骤 //1.创建一个Driver实现类的对象 Driver driver = new com.mysql.jdbc.Driver();//注意抛异常 //2.准备 url 和 ...

  5. 02 JDBC相关

    ====================================================================================JDBC JAVA Databa ...

  6. 2019.3.28 JDBC相关

    JDBC(Java Data Base Connectivity) JDBC是一组用Java编写的类和接口 使用JDBC的好处: 1.Java的开发人员完全不需要关心数据库的连接方式和实现手段 2.提 ...

  7. MyBatis、JDBC相关知识

    引言 在mybatis的基础知识中我们已经可以对mybatis的工作方式窥斑见豹.但是,为什么还要要学习mybatis的工作原理?因为,随着mybatis框架的不断发展,如今已经越来越趋于自动化,从代 ...

  8. JDBC相关配置和操作

    获取数据库连接的几种方式 ps.数据库URL : String url = "jdbc:mysql://localhost:3306/dailytext?useSSL=false&s ...

  9. Java JDBC基础学习小结

    JDBC是一个Java应用程序接口,作用是封装了对数据库的各种操作.JDBC由类和接口组成,使用Java开发数据库应用都需要4个主要的接口:Driver.Connection.Statement.Re ...

随机推荐

  1. Visual Studio中C++项目编译常见问题总结

    1. 工程引用外部头文件 工程->属性->配置属性->C/C++ ->常规->附加包含目录:输入头文件存放目录 2. 添加lib库引用 添加lib库的路径:工程-> ...

  2. java.sql.SQLException: The server time zone value 'Öйú±ê׼ʱ¼ 解决方案

    //第一个异常 Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysq ...

  3. 资源:开源Fuzzers工具列表 (以及其它fuzzing工具)

    开源fuzzers‍ / 开源fuzzing工具的最新列表(Fuzzers,没有标准中文翻译,可以理解为模糊测试工具或者模糊器) 如果你知道有需要添加的部分,那么请在这里或在推特上@Peerlyst来 ...

  4. Cocos2d-x手游技术分享(1)-【天天打蚊子】数据存储与音效篇

    前言: 手游项目<天天打蚊子>终于上线,特地写几篇技术分享文章,分享一下其中使用到的技术,其中使用cocos2d-x引擎,首选平台iOS,也请有iPhone或者iPad的朋友帮忙下载好评. ...

  5. scss-比较运算符

    与JavaScript类似,scss中也有比较运算符,下面就分别做一下介绍. 一.==相等和!=不相等运算符: 此运算符用来判断两个操作数是否相等. 特别说明: 上面两个运算符,支持类似于JavaSc ...

  6. css 简单梯形

    通过css2D变形我们可以轻松得到平行四边形,那么通过此技巧可以得到梯形吗? no! 不过我们可以通过3D旋转得到类似这样的效果: transform:perspective(0.5em)  rota ...

  7. [转]chrome developer tool 调试技巧

    这篇文章是根据目前 chrome 稳定版(19.0.1084.52 m)写的, 因为 google 也在不断完善chrome developer tool, 所以 chrome 版本不同可能稍有差别. ...

  8. .NET开源工作流RoadFlow-表单设计-组织机构选择

    组织机构选择即在表单中添加组织机构选择框. 选择范围: 1.发起者部门:只能在发起者同一个部门中选择. 2.处理者部门:只能在当前处理者同一个部门中选择. 3.自定义:自己指定一个选择范围. 选择类型 ...

  9. spring的开发

    spring与web的整合 1. 整合的原理: Spring容器随着tomcat容器ServletContext的启动而启动,并且在初始化完成后放到整个应用都可以访问的范围. ApplicationC ...

  10. Hadoop ->> HIVE

    HIVE的由来: 最初由Facebook基于HDFS开发出来的一套数据仓库工具. HIVE可以干什么? HIVE可以将已经结构化的数据映射成一张表,然后可以使用HIVE语言像写T-SQL一样查询数据. ...