Java数据库操作类演示
只在mysql上测试过,不知道算不算好使
1. [代码][Java]代码
package org.load.demo;
import java.io.IOException;
import java.util.List;
import java.util.Map;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.loadphp.simple4j.ContentValues;
import com.loadphp.simple4j.DB;
import com.loadphp.simple4j.Utils;
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String action = req.getParameter("action");
if("show".equalsIgnoreCase(action)) {
this.findAll(req, resp);
}else if("del".equalsIgnoreCase(action)) {
this.del(req, resp);
}else if("edit".equalsIgnoreCase(action)) {
this.find(req, resp);
}else if("update".equalsIgnoreCase(action)) {
this.update(req, resp);
}else if("insert".equalsIgnoreCase(action)) {
this.insert(req, resp);
}
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
this.doGet(req, resp);
}
private void findAll(final HttpServletRequest req, HttpServletResponse resp) {
// DB db = this.getDB();flash歌曲
// List<Map<String, Object>> userList = db.findAll("*"); // 查询全部
// db.close();
// req.setAttribute("userList", userList);
// try {
// req.getRequestDispatcher("/index.jsp").forward(req, resp);
// } catch (ServletException e) {
// e.printStackTrace();
// } catch (IOException e) {
// e.printStackTrace();
// }
DB db = this.getDB();
db.findAll(new DB.QueryAllCallback() {
public void callback(List<Map<String, Object>> list) {
req.setAttribute("userList", list);
}
}, "*");
try {
req.getRequestDispatcher("/index.jsp").forward(req, resp);
} catch (ServletException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
private void del(HttpServletRequest req, HttpServletResponse resp) {
DB db = this.getDB();
db.where(new ContentValues().put("id", req.getParameter("id"))).del();
db.close();
this.findAll(req, resp);
}
private void find(final HttpServletRequest req, HttpServletResponse resp) {
DB db = this.getDB();
// Map<String, Object> map = db.where(new ContentValues().put("id", req.getParameter("id"))).find(
// "id", "name", "birthday", "pwd");
db.find(new DB.QueryCallback() {
public void callback(Map<String, Object> map) {
req.setAttribute("user", map);
}
}, "id","name","birthday");
db.close();
try {
req.getRequestDispatcher("/edit.jsp").forward(req, resp);
} catch (ServletException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
private void insert(HttpServletRequest req, HttpServletResponse resp) {
DB db = this.getDB();http://www.huiyi8.com/flashgequ/wangluo/
db.insert(Utils.params2Array(req, 3, "null","user","birth","pwd"));
db.close();
this.findAll(req, resp);
}
private void update(HttpServletRequest req, HttpServletResponse resp) {
DB db = this.getDB();
db.where(new ContentValues().put("id", req.getParameter("id"))).update(
new ContentValues().put("name", req.getParameter("user"))
.put("pwd", Utils.md5(req.getParameter("pwd")))
.put("birthday", req.getParameter("birth")));
db.close();
this.findAll(req, resp);
}
private DB getDB() {
// DB.DRIVER = "com.mysql.jdbc.Driver"; // driver
DB.URI = "jdbc:mysql://localhost:3306/forjava"; // uri
// DB.USER = "root"; // mysql用户名
// DB.PWD = ""; // mysql密码
DB.connect("utf-8"); // 连接数据库并设置编码
return DB.init("users"); // 设置操作的表名,并返回数据库操作对象
}
}
Java数据库操作类演示的更多相关文章
- php : mysql数据库操作类演示
设计目标: 1,该类一实例化,就可以自动连接上mysql数据库: 2,该类可以单独去设定要使用的连接编码(set names XXX) 3,该类可以单独去设定要使用的数据库(use XXX): 4,可 ...
- Java 数据库操作类
import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...
- Android打造属于自己的数据库操作类。
1.概述 开发Android的同学都知道sdk已经为我们提供了一个SQLiteOpenHelper类来创建和管理SQLite数据库,通过写一个子类去继承它,就可以方便的创建.管理数据库.但是当我们需要 ...
- 复习java数据库操作的总结
以前学习java数据库操作,学得那叫糊里糊涂,各种JDBC常用的类和接口根本是傻傻分不清啥是干嘛的.只是套着用用吧. 不过这次好歹清楚些了,呜呜,学习有阶段性,多次重复才有好效果,多么痛的领悟. 工程 ...
- 扣出thinkphp数据库操作类
假如你是一位thinkphp的使用者,想必你会觉得thinkphp操作数据库非常方便.现在在你面前有一个非常小的作业,小到完全没有必要用thinkphp去完成它.但是你又觉得不用thinkphp的话, ...
- 【知识必备】ezSQL,最好用的数据库操作类,让php操作sql更简单~
最近用php做了点小东东,用上了ezSQL,感觉真的很ez,所以拿来跟大家分享一下~ ezSQL是一个非常好用的PHP数据库操作类.著名的开源博客WordPress的数据库操作就使用了ezSQL的My ...
- PHP 数据库操作类:ezSQL
EZSQL类介绍: 下载地址:http://www.jb51.net/codes/26393.htmlezsql是一个小型的快速的数据库操作类,可以让你很容易地用PHP操作各种数据库( MySQL.o ...
- 通用数据库操作类,前端easyui-datagrid,form
实现功能: 左端datagrid显示简略信息,右侧显示选中行详细信息,数据库增删改 (1)点击选中行,右侧显示详细信息,其中[新增].[修改].[删除]按钮可用,[保存]按钮禁用 (2)点击[ ...
- php MySQL数据库操作类源代码
php MySQL数据库操作类源代码: <?php class MySQL{ private $host; //服务器地址 private $name; //登录账号 private $pwd; ...
随机推荐
- STL学习笔记(五) 算法
条款30:确保目标区间足够大 条款31:了解各种与排序有关的选择 //使用unaryPred划分输入序列,使得unaryPred为真的元素放在序列开头 partition(beg, end, unar ...
- OI 数论整理
1.素数: 质数(prime number)又称素数,有无限个.一个大于1的自然数,除了1和它本身外,不能被其他自然数整除,换句话说就是该数除了1和它本身以外不再有其他的因数;否则称为合数. 2016 ...
- 解析XML字符串为json对象
var overtime='<?xml version="1.0" encoding="UTF-8"?><response><co ...
- Valentine's Day Round hdu 5176 The Experience of Love [好题 带权并查集 unsigned long long]
传送门 The Experience of Love Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Ja ...
- iOS推送的开启与关闭
开启: [[UIApplication sharedApplication] registerForRemoteNotificationTypes: UIRemoteNotificationType ...
- Java常用几种加密算法
对称加密算法是应用较早的加密算法,技术成熟.在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yue)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去.收信方收到密文后,若想解 ...
- Paul Graham:梦寐以求的编程语言
我的朋友曾对一位著名的操作系统专家说他想要设计一种真正优秀的编程语言.那位专家回答,这是浪费时间,优秀的语言不一定会被市场接受,很可能无人使用,因为语言的流行不取决于它本身.至少,那位专家设计的语言就 ...
- 计算机视觉人脸相关开源项目总结:face_recognition
计算机视觉人脸相关开源项目总结 https://github.com/ageitgey/face_recognition 深度学习人脸关键点检测方法----综述
- 【paddle学习】图像分类
https://zhuanlan.zhihu.com/p/28871960 深度学习模型中的卷积神经网络(Convolution Neural Network, CNN)近年来在图像领域取得了惊人的成 ...
- BUPT复试专题—字符串转换(2013计院)
题目描述 我们将仅由若干个同一小写字母构成的字符串称之为简单串,例如"aaaa"是一个简单串,而"abcd"则不是简单串.现在给你一个仅由小写字母组成的字符串, ...