jdbc数据库中的增删改
HttpSession session=request.getSession();
session.setAttribute("currentUser",u.username);//获取用户名
servlet中不能直接获取session
package com.hanqi.dal; import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List; import com.hanqi.model.AppUser;
import com.hanqi.model.Dept;
import com.hanqi.model.Emp;
import com.hanqi.util.JdbcConnectionUtil; public class MethodDal { private Connection con;
private PreparedStatement ps;
private ResultSet rs; // 添加一条数据
public int insertData() {
init();
int i = -;
String sql = "insert into course" + "values('11','cc','33')";
try {
ps = con.prepareStatement(sql);
i = ps.executeUpdate(); } catch (SQLException e) {
e.printStackTrace();
}
close();
return i;
} // 添加制定的参数
public int insertData(AppUser user) {
init();
int i = -;
String sql = "insert into course" + "values(?,?,?)";
//long l = new Date().getTime();
try {
ps = con.prepareStatement(sql);
ps.setString(, user.getUsername());
ps.setString(, user.getPassword());
ps.setString(, user.getRealname());
//ps.setDate(4, new java.sql.Date(l));
i = ps.executeUpdate(); } catch (SQLException e) {
e.printStackTrace();
}
close();
return i;
} // 批量添加数据
public int[] insertBatchData() {
init();
int[] arr = null;
try {
String sql = "insert into appuser values(?,?,?)";
ps = con.prepareStatement(sql);
for (int i = ; i < ; i++) {
ps.setString(, "" + i);
ps.setString(, "cc" + i);
ps.setString(, "" + i);
ps.addBatch();
}
arr = ps.executeBatch();
} catch (SQLException e) {
e.printStackTrace();
}
close();
return arr;
} // 删除一条记录
public int deleteData(int cno) {
init();
int i = -;
String sql = "delete course c where c.cno=?";
try {
ps = con.prepareStatement(sql);
ps.setInt(, cno);
i = ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
close();
return i;
} // 更新表中的数据
public int updateData(int id, String realname) {
init();
int i = -;
String sql = "update course c set c.cname=? where c.cno=?";
try {
ps = con.prepareStatement(sql);
ps.setString(, cname);
ps.setInt(, cno);
i = ps.executeUpdate();
} catch (SQLException e) {
e.printStackTrace();
}
close();
return i;
} public List<AppUser> selectAppUser() {
String sql = "select a.id,a.username hh,a.password,a.realname,a.createtime from appuser a where a.id in (76,73)";
init();
List<AppUser> list = new ArrayList<AppUser>();
try {
ps = con.prepareStatement(sql);
rs = ps.executeQuery();
while (rs.next()) {
AppUser au = new AppUser(); au.setId(rs.getInt());
au.setUsername(rs.getString());
au.setPassword(rs.getString());
au.setRealname(rs.getString());
au.setCreatetime(rs.getDate());
list.add(au);
} } catch (SQLException e) {
e.printStackTrace();
}
close();
return list;
} public void init() {
con = JdbcConnectionUtil.getConnection();
} public void close() {
JdbcConnectionUtil.destroy(con, ps, rs);
}
}
jdbc数据库中的增删改的更多相关文章
- SQL数据库中的增删改查总结1
一.增:有2种方法 1.使用insert插入单行数据: 语法:insert [into]<表名> [列名] values <列值> 例:insert into Strdents ...
- 使用MongoDB.NET 2.2.4驱动版本对 Mongodb3.3数据库中GridFS增删改查
Program.cs代码如下: internal class Program { private static void Main(string[] args) { GridFSHelper help ...
- 通过JDBC进行简单的增删改查
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- 通过JDBC进行简单的增删改查(以MySQL为例) 目录
通过JDBC进行简单的增删改查(以MySQL为例) 目录 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JDBC基本操 ...
- Java通过JDBC进行简单的增删改查(以MySQL为例)
Java通过JDBC进行简单的增删改查(以MySQL为例) 目录: 前言:什么是JDBC 一.准备工作(一):MySQL安装配置和基础学习 二.准备工作(二):下载数据库对应的jar包并导入 三.JD ...
- Spring整合JDBC实现简单的增删改
Spring整合JDBC实现简单的增删改: 1.导入Spring的包和数据库的驱动包: 2.选择一个数据源(dbcp和C3P0) 3.导入数据源的包(这里我们使用dbcp) <span styl ...
- 利用SQLiteOpenHelper创建数据库,进行增删改查操作
Android中提供SQLiteOpenHelper类,在该类的构造器中,调用Context中的方法创建并打开一个指定名称的数据库对象.继承和扩展SQLiteOpenHelper类主要做的工作就是重写 ...
- Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- ORM 实现数据库表的增删改查
这次通过反射技术来实现一下数据库表的增删改查对象关系映射(英语:Object Relational Mapping,简称ORM,或O/RM,或O/R mapping) 注:引用时约束了以下几点: 数据 ...
随机推荐
- Style在Android中的继承关系
Style在Android中的继承关系 Android的Styles(样式)和Themes(主题)非常类似Web开发里的CSS,方便开发者将页面内容和布局呈现分开.Style和Theme在Androi ...
- 浅谈SOCKS5代理与HTTP代理的应用区别
[1]什么是SOCKS5协议. SOCKS是一种网络传输协议,主要用于客户端与外网服务器之间通讯的中间传递.SOCKS是"Sockets”的缩写. 当防火墙后的客户端要访问外部的服务器时,就 ...
- 数字化婚姻配对尝试问题(C++实现)
问题描述:一.标题: 数字化婚姻配对尝试 二.题目: 建立一个模型,来模拟推导社会男女择偶过程. 为了模型简化,一个人的特性指标有三个,这里假设为财富.样貌.品格,每个指标均可取值1-100之间任意数 ...
- 00.不规则json序列化使用eval、demjson
有下面一段字符串 import json str0 = '[{"name":"白云大道营业厅","siteaddr":"x...& ...
- 基于supervisor秒级Laravel定时任务
背景介绍 公司需要实现X分钟内每隔Y秒轮训某个接口,Linux自带的crontab貌似只精确到分钟,虽然可以到精确到秒,但是并不满足需求. 选型 公司项目都是 基于 Laravel 框架,所以这个没得 ...
- (蓝桥杯)第八届A组C/C++跳蚱蜢
#include<iostream> #include<memory.h> #include<stack> #include<string> #incl ...
- 清北学堂模拟赛d5t4 套路
分析:题目非常短,看起来非常难,其实把图一画就明白了.有向图,每个点的出度都是1,那么整个图肯定是环上套链,链上的边无论怎样反向都不会形成环,环上的边也可以随便反向,但是最终不能反为同向的,总方案数减 ...
- 清北学堂模拟赛d6t3 反击数
分析:显然是一道数位dp题,不过需要一些奇怪的姿势.常规的数位dp能统计出一个区间内满足条件的数的个数,可是我们要求第k个,怎么办呢?转化为经典的二分问题,我们二分当前数的大小,看它是第几大的,就可以 ...
- SecureCRT的设置和美化
一 . SecureCRT 7.1 的 安装 http://liufei888.blog.51cto.com/2625545/1306231 1.下载注册机SecureCRT.v.6.7. ...
- nyoj_8_一种排序_201311251238
一种排序 时间限制:3000 ms | 内存限制:65535 KB 难度:3 描述 现在有很多长方形,每一个长方形都有一个编号,这个编号可以重复:还知道这个长方形的宽和长,编 ...