package songyan.jdbc.crud;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List; import songyan.jdbc.util.DBUtil;
import songyan.jdbc.entity.*; public class CRUD_prepared{ public static void selectTest() throws Exception
{
Connection conn=null;
PreparedStatement sta=null;
ResultSet rs=null;
String sql="select * from users where name=? and password=?"; conn=DBUtil.getConnection(); sta=conn.prepareStatement(sql);
sta.setString(1, "zhansan");
sta.setString(2, "123"); rs=sta.executeQuery(); List<User> l= new ArrayList<User>();
while(rs.next())
{
User u= new User();
u.setId(rs.getInt("id"));
u.setName(rs.getString("name"));
u.setPassword(rs.getString("password"));
u.setEmail(rs.getString("email"));
u.setBirthday(rs.getDate("birthday"));
l.add(u);
} for(User u:l)
{
System.out.println(u.getId()+" "+u.getName());
} DBUtil.closeAll(conn, sta, rs); } public static void insertTest() throws SQLException
{
Connection conn=null;
PreparedStatement sta=null;
ResultSet rs=null;
String sql="insert into users values(1,'a0','b0','a@163.com','1981-12-04')"; conn=DBUtil.getConnection(); sta=conn.prepareStatement(sql); System.out.println(sta.executeUpdate()); DBUtil.closeAll(conn, sta, rs);
} public static void updateTest() throws SQLException
{
Connection conn=null;
PreparedStatement sta=null;
ResultSet rs=null;
String sql="update users set name='lisi' where id='4'";
conn=DBUtil.getConnection(); sta=conn.prepareStatement(sql); System.out.println("影响了"+sta.executeUpdate()); DBUtil.closeAll(conn, sta, rs);
} public static void deleteTest() throws SQLException
{
Connection conn=null;
PreparedStatement sta=null;
ResultSet rs=null;
String sql="delete from users where name='bbb'"; conn=DBUtil.getConnection(); sta=conn.prepareStatement(sql);
System.out.println(sta.executeUpdate()); DBUtil.closeAll(conn, sta, rs);
} public static void main(String[] args) throws Exception
{
deleteTest();
}
}

CRUD_PreparedStatement的更多相关文章

随机推荐

  1. CMake Tutorial & Example

    Tutorial CMakeLists用于告诉CMake我们要对这个目录下的文件做什么事情 cmake 的特点主要有: 1,开放源代码,使用类 BSD 许可发布.http://cmake.org/HT ...

  2. Android记事本11

    昨天: Activity的启动模式. 今天: 分析了一些网上的例子的源码. 遇到问题: 无.

  3. Python洗牌算法重写

    Python有自带的洗牌算法函数shuffle(). 自己也通过学习也琢磨了一下它的实现,然后给出一个时间复杂度O(n),空间复杂度O(4)的例子: import random def shuffle ...

  4. Java 多线程(Thread)学习

    多线程:就是进程的扩展,实现并发.一个进程可以包含多个线程,进程一般是由操作系统控制,而线程就是由程序员控制的,所以作为编程人员做好线程是我们的重点. 线程和进程一样分为五个阶段:创建.就绪.运行.阻 ...

  5. Python函数参数中的冒号与箭头

    在一些Python的工程项目中,我们会看到函数参数中会有冒号,有的函数后面会跟着一个箭头,你可能会疑惑,这些都是什么东西? 其实函数参数中的冒号是参数的类型建议符,告诉程序员希望传入的实参的类型.函数 ...

  6. hdu 1846 Brave Game (博弈)

    Brave Game Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total ...

  7. 《R语言实战》读书笔记--第四章 基本数据管理

    本章内容: 操纵日期和缺失值 熟悉数据类型的转换 变量的创建和重编码 数据集的排序,合并与取子集 选入和丢弃变量 多说一句,数据预处理的时间是最长的……确实是这样的,额. 4.1一个示例 4.2创建新 ...

  8. 51Nod 1558 树中的配对

    题目链接 分析: 想了好久~~~还是得看题解...QwQ 首先因为是排列,所以我们猜想要把式子拆开来看, $ \sum dis(i,p[i])=\sum dep[i]+dep[p[i]]-2*dep[ ...

  9. OpenCV 2.4.9 学习笔记(4)—— 像素类型与Templates的限制使用

    限制使用templates C++中的Templates使得接口机制非常好用,高效而且能够保证数据与算法的安全.但是过多地使用templates可能会增加计算时间和代码长度,有时候还能难区分接口和实现 ...

  10. knockout 表单绑定 要怎么Mapping才好

    问题 之前有了解过knockout,学习过绑定语法,结合帮助文档,做个Demo倒也不成问题,但是部分地方很不爽,不知道是我的用法不对,还是功力不够. 比如说,标签里定义的data-bind属性名,必须 ...