//原生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. Introduction of Servlet Filter(了解Servlet之Filter)

    API文档中介绍了public Interface Filter(公共接口过滤器) Servlet API文档中是这样介绍的: ‘A filter is an object that performs ...

  2. Java使用UDP聊天程序

    主要想测试Java UDP通信.Java UDP使用DatagramSocket和DatagramPacket完成UDP通信 主要思路: 1.本机通信,ip地址为:127.0.0.1 2.开一个线程监 ...

  3. WSAAsyncSelect 消息模型

    select 模型虽然可以管理多个socket,但是它涉及到一个时机的问题,select模型会针对所管理的数组中的每一个socket循环检测它管理是否在对应的数组中,从时间复杂度上来说它是O(n^2) ...

  4. 类的方法练习——定义MySQL类

    要求: 1.对象有id.host.port三个属性 2.定义工具create_id,在实例化时为每个对象随机生成id,保证id唯一 3.提供两种实例化方式,方式一:用户传入host和port 方式二: ...

  5. 深入理解Javascript之执行上下文(Execution Context)

    在这篇文章中,将比较深入地阐述下执行上下文 - Javascript中最基础也是最重要的一个概念.相信读完这篇文章后,你就会明白javascript引擎内部在执行代码以前到底做了些什么,为什么某些函数 ...

  6. 20_AOP_Advice增强1(前置、后置、环绕)

    [增强的类型] 1.前置增强:org.springframework.aop.BeforeAdvice. 由于Spring只支持方法级别的增强,所以MethodBeforeAdvice是目前可用的前置 ...

  7. Android 笔记之 R 文件

    Android笔记之R文件 h2{ color: #4abcde; } a{ color: blue; text-decoration: none; } a:hover{ color: red; te ...

  8. Android layout 布局 属性详解

    第一类:属性值 true或者 false           android:layout_centerHrizontal 水平居中     android:layout_centerVertical ...

  9. Automapper 实现自动映射

    出于安全考虑,在后台与前台进行数据传输时,往往不会直接传输实体模型,而是使用Dto(Data transfer object 数据传输对象),这样在后台往前台传递数据时可以省略不必要的信息,只保留必要 ...

  10. USB3.0驱动与2.0有什么区别

    安装好usb3.0驱动就可以驱动usb 3.0设备,能够适应于大部份主板,帮助用户解决usb3.0和电脑无法正常通讯的问题,并支持winxp,win7和win8系统,是目前网络上最好用的usb3.0万 ...