JAVA项目之增删改查
public class ProductDao {
// 查询所有商品
// BeanListHandler查询所有商品
public List<Product> getAll() throws SQLException {
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql = "select * from product";
List<Product> arr = qr.query(sql, new BeanListHandler<Product>(Product.class));
return arr;
}
// 添加商品
public void add(Product product) throws SQLException {
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql = "insert into product(pid,pname,market_price,shop_price,pdate,pdesc,is_hot,cid) values(?,?,?,?,?,?,?,?)";
Object[] obj = { product.getPid(), product.getPname(), product.getMarket_price(), product.getShop_price(),
product.getPdate(), product.getPdesc(), product.getIs_hot(), product.getCid() };
// 执行sql
qr.update(sql, obj);
}
// 根据pid查询商品--就一条记录--用BeanHandler
public Product getProductById(String pid) throws SQLException {
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql = "select * from product where pid = ?";
Product product = qr.query(sql, new BeanHandler<Product>(Product.class), pid);
return product;
}
//根据pid修改商品
public void edit(Product product) throws SQLException{
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql ="update product set pname = ?,market_price = ?,shop_price =?,pdesc =?,is_hot=?,cid=? where pid =?";
Object[] obj = { product.getPname(), product.getMarket_price(), product.getShop_price(), product.getPdesc(), product.getIs_hot(), product.getCid(),product.getPid()};
qr.update(sql,obj);
}
//根据pid删除商品
public void delete(String pid) throws SQLException{
QueryRunner qr = new QueryRunner(MyDBUtils.getDataSource());
String sql = "delete from product where pid =?";
qr.update(sql,pid);
}
}
package com.oracle.service; import java.sql.SQLException;
import java.util.List; import com.oracle.dao.ProductDao;
import com.oracle.domain.Product; public class ProductService {
private ProductDao productDao = new ProductDao();
//查询所有商品
public List<Product> getAll(){
List<Product> arr = null;
try {
arr=productDao.getAll();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return arr; }
//添加商品
public void add(Product product){
try {
productDao.add(product);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//根据pid查询商品
public Product getProductById(String pid){
Product product = null;
try {
product =productDao.getProductById(pid);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return product;
}
//根据pid修改商品
public void edit(Product product){
try {
productDao.edit(product);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//根据pid删除商品
public void delete(String pid){
try {
productDao.delete(pid);
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
package com.oracle.web; import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import java.util.UUID; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.apache.commons.beanutils.BeanUtils; import com.oracle.domain.Product;
import com.oracle.service.ProductService;
//增加
public class AddProductServlet extends HttpServlet {
private ProductService productService =new ProductService();
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//解决乱码
request.setCharacterEncoding("UTF-8");
//获取所有参数的map
Map<String,String[]> map = request.getParameterMap();
//创建product对象
Product product = new Product();
//用BeanUtils进行封装
try {
BeanUtils.populate(product, map);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//设置pid
//uuid是个类,--返回36位的不重复的字母加数字--转成字符串
product.setPid(UUID.randomUUID().toString());
//设置pdate
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String d = sdf.format(date);
product.setPdate(d);
//调用Service方法
productService.add(product);
response.sendRedirect(request.getContextPath()+"/AdminProductListServlet");
} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
package com.oracle.web; import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.oracle.service.ProductService;
//删除
public class DeleteProductServlet extends HttpServlet {
private ProductService productService=new ProductService();
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//获取pid
String pid =request.getParameter("pid");
//调用service方法
productService.delete(pid);
//重定向
response.sendRedirect(request.getContextPath() + "/AdminProductListServlet");
} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
package com.oracle.web; import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.util.Map; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import org.apache.commons.beanutils.BeanUtils; import com.oracle.domain.Product;
import com.oracle.service.ProductService;
//修改
public class AdiminEditProductServlet extends HttpServlet {
private ProductService productService = new ProductService();
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
//解决乱码
request.setCharacterEncoding("UTf-8");
//获取所有参数MAP
Map<String,String[]> map = request.getParameterMap();
//创建product对象
Product product = new Product();
//用BeanUtils进行封装
try {
BeanUtils.populate(product, map);
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//调用service方法
productService.edit(product);
//这时候已经修改完了,不需要调数据了,只是去页面上查看下数据修改完后的样子
//重定向
response.sendRedirect(request.getContextPath()+"/AdminProductListServlet");
} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
package com.oracle.web; import java.io.IOException;
import java.util.List; import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse; import com.oracle.domain.Product;
import com.oracle.service.ProductService;
//查
public class AdminProductListServlet extends HttpServlet {
// 后台的商品列表页面
private ProductService productService = new ProductService(); public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// 获取商品列表
List<Product> list = productService.getAll();
// 向域中存list
request.setAttribute("ProductList", list);
// 请求转发
request.getRequestDispatcher("/admin/product/list.jsp").forward(request, response);
} public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
doGet(request, response);
}
}
JAVA项目之增删改查的更多相关文章
- java DMO及增删改查代码的自动生成
在web开发过程中,尤其是后台管理系统的开发中,少不了增删改成的基础操作,原来我自己的做法是一份一份的拷贝粘贴,然后修改其中的不同,然而这样既枯燥无味又浪费了大量的时间,所以根据自己项目结构的特点写了 ...
- 【简易版】Java ArrayList(增删改查)
1.什么是ArrayList ArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处: (1)动态的增加和减少元素 (2)实现了ICollectio ...
- 百度鹰眼Java接口调用增删改查实例
因感觉百度鹰眼的使用场景比较符合实际业务,于是对百度鹰眼做了简单功能调试.刚开始使用springframework封装的RestTemplate,但是测试提示ak参数不存在.后又试了几种方法,均提示a ...
- Java学生信息增删改查(并没用数据库)
一个泛型的应用,Java版本增删改查,写的简陋,望批评指正 2016-07-02 很久前写的一个程序了.拿出来存一下,不是为了展示啥,自己用的时候还可以看看.写的很粗糙. import java.io ...
- MongoDB(二)-- Java API 实现增删改查
一.下载jar包 http://central.maven.org/maven2/org/mongodb/mongo-java-driver/ 二.代码实现 package com.xbq.mongo ...
- LR接口测试---Java Vuser之增删改查
import lrapi.lr; import java.sql.Connection; import java.sql.DriverManager; import java.sql.Prepared ...
- MongoDB(六)java操作mongodb增删改查
java操作mysql数据库的代码我们已经了如指掌了.增删改查,java对mongodb数据库也是类似的操作,先是数据库连接.再是进行操作. 首先我们进入进入admin数据库.然后建立自己的数据库te ...
- Java连接数据库,增删改查
底层代码: package com.zdsoft; import java.sql.*; /** * Created by lx on 2017/6/22. */ public class JDBCU ...
- 2019年11月18日 JAVA期中考试 增删改查
一.题目 石家庄铁道大学 青年志愿者服务网(20分) 1.项目需求: 为了适应社会主义市场经济发展的需要,推动青年志愿服务体系和多层次社会保障体系的建立和完善,促进青年健康成长,石家庄铁道大学急需 ...
随机推荐
- js判断字符串是否以指定字符串开头或是否包含指定字符串
1. 用js判断一个字符串是否是以某个子字符串开头如:ssss001是否以ssss开头, 可以这样做: 1 2 3 4 5 6 var fdStart = strCode.indexOf(" ...
- vue---引入外部样式
在用 vue-cli 进行项目开发的时候,经常会遇到要引入外部的样式,那该怎么做的呢? 示例:使用 import 引入 scss import variables from '@/assets/sty ...
- thinkjs框架发布上线PM2管理,静态资源访问配置
一.环境:thinkjs + pm2 二.网站配置: #端口转发 location / { proxy_pass http://127.0.0.1:8368; } #静态资源(很重要) set $no ...
- 浅入深出ETCD之【集群部署与golang客户端使用】
前言 之前说了etcd的简介,命令行使用,一些基本原理.这次来说说现实一点的集群部署和golang版本的客户端使用.因为在实际使用过程中,etcd的节点肯定是需要2N+1个进行部署的,所以有必要说明一 ...
- Synchronize深入
前言: synchronize会使用,但是对于深层次的知识,不是很清楚,故整理一篇博客. 简介: 能够保证在同一时刻,最多只有一个线程执行该端代码,以达到保证并发安全效果. 两种用法: 对象 ...
- PHP 字符串和十六进制互转
今天在做项目中,因为要调用别人网站的接口,结果需要对请求和返回的时间进行十六进制加密处理,于是在网上查了下资料谢了一个转换Demo做个记录. 如果在TP下使用可以将下面函数放到common.php中 ...
- coding git push 403 时
直接修改 项目目录下的 .git/config url url = https://coding用户名:coding密码@git.coding.net/coding账号/coding项目名称.gi ...
- python进阶---列表、字典、集合相关操作
基本概念 列表 序列是python中一个基本的数据结构,每个元素都有一个索引index 操作 # 创建列表 list = [] # 修改列表 list[2] = 2001 # 删除列表 del lis ...
- 开源OCR识别库-Tesseract介绍
最近在github上面看到一个开源的ocr文字识别库,感觉效果还可以,所以在这里介绍一下,这个项目的原地址在:https://github.com/tesseract-ocr/tesseract. t ...
- spring security实现记录用户登录时间等信息
目录 spring security实现记录用户登录时间等信息 一.原理分析 二.实现方式 2.1 自定义AuthenticationSuccessHandler实现类 2.2 在spring-sec ...