作者主页:夜未央5788
简介:Java领域优质创作者、Java项目、学习资料、技术互助
文末获取源码
基于jsp+servlet在线药店管理系统。
该项目是一个后管系统,只有一个管理员角色,功能比较简单,适合java初学者或者在样学生做课程设计等;
主要功能包括:
用户登录、注册;系统管理、药品管理、顾客信息管理、供货商管理、订单管理等;
1.运行环境:最好是java jdk 1.8,我们在这个平台上运行的。其他版本理论上也可以。
2.IDE环境:IDEA,Eclipse,Myeclipse都可以。推荐IDEA;
3.tomcat环境:Tomcat 7.x,8.x,9.x版本均可
4.硬件环境:windows 7/8/10 1G内存以上;或者 Mac OS;
5.是否Maven项目: 否;查看源码目录中是否包含pom.xml;若包含,则为maven项目,否则为非maven项目
6.数据库:MySql 5.7版本;
1. 后端:servlet
2. 前端:JSP+bootstrap+jQuery
1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,配置tomcat,然后运行;
3. 将项目中c3p0.properties配置文件中的数据库配置改为自己的配置
4. 运行项目,输入http://localhost:8080/shop 登录
5. 账户admin 密码123456

AdminDao
- package dao;
-
- import java.io.IOException;
- import java.sql.Date;
- import java.sql.SQLException;
- import java.util.List;
-
-
- import org.apache.commons.dbutils.QueryRunner;
- import org.apache.commons.dbutils.handlers.BeanHandler;
- import org.apache.commons.dbutils.handlers.BeanListHandler;
- import org.apache.commons.dbutils.handlers.ScalarHandler;
-
- import com.mchange.v2.c3p0.ComboPooledDataSource;
-
- import entity.Admin;
- import util.PageTools;
-
- public class AdminDao {
- private QueryRunner qr=new QueryRunner(new ComboPooledDataSource());
-
- //添加一个管理员
- public boolean insertAdmin(Admin admin){
- String sql="insert into admin values(?,?,?,?,?)";
- try {
- int z=qr.update(sql,admin.getAid(),admin.getAname(),admin.getApassword(),admin.getAphone(),admin.getAaddress());
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
-
- public Admin checkLogin(String aname,String apassword)
- {
- String sql="select * from admin where aname=? and apassword=?";
- try {
-
- return qr.query(sql, new BeanHandler
(Admin.class),aname,apassword); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
-
-
-
- //删除一个管理员
- public boolean deleteAdminByAid(int aid){
- String sql="delete from admin where aid=?";
- try {
- int z=qr.update(sql,aid);
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //查询所有管理员
- public List
selectAdmin(){ - String sql="select * from admin";
- try {
- return qr.query(sql, new BeanListHandler
(Admin.class)); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按ID查询管理员
- public Admin selectAdminByAid(int aid) {
- String sql="select * from admin where aid=?";
- try {
- return qr.query(sql, new BeanHandler
(Admin.class),aid); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按页码查询管理员
- public List
selectAdminByPage(PageTools pt){ - String sql="select * from admin limit ?,?";
- try {
- return qr.query(sql, new BeanListHandler
(Admin.class),pt.getStart_index(),pt.getPage_size()); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //修改一个管理员
- public boolean updateAdmin(Admin admin){
- String sql="update admin set aname=?,apassword=?,aphone=?,aaddress=? where aid=?";
- try {
- int z=qr.update(sql,admin.getAname(),admin.getApassword(),admin.getAphone(),admin.getAaddress(),admin.getAid());
- if(z>0)
- return true;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //统计管理员的个数
- public int counts(){
- String sql="select count(*) from admin";
- try {
- Long l=(Long)qr.query(sql, new ScalarHandler());//反射
- return l.intValue();//java基础
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return 0;
-
- }
-
-
- public static void main(String[] args) {
-
- Admin z = new AdminDao().checkLogin("cc1", "1234");
- System.out.println(z);
-
- }
-
- }
CustomerDao
- package dao;
-
- import java.sql.SQLException;
- import java.util.List;
-
- import org.apache.commons.dbutils.QueryRunner;
- import org.apache.commons.dbutils.handlers.BeanHandler;
- import org.apache.commons.dbutils.handlers.BeanListHandler;
- import org.apache.commons.dbutils.handlers.ScalarHandler;
-
- import com.mchange.v2.c3p0.ComboPooledDataSource;
-
- import entity.Admin;
- import entity.Customer;
- import util.PageTools;
-
- public class CustomerDao {
- private QueryRunner qr=new QueryRunner(new ComboPooledDataSource());
- //添加一个顾客
- public boolean insertCustomer(Customer customer){
- String sql="insert into customer values(?,?,?,?,?,?,?)";
- try {
- int z=qr.update(sql,customer.getCid(),customer.getCname(),customer.getCsex(),customer.getCage(),customer.getCphone(),customer.getCemail(),customer.getCaddress());
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //删除一个顾客
- public boolean deleteCustomerByCid(int cid){
- String sql="delete from customer where cid=?";
- try {
- int z=qr.update(sql,cid);
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //查询所有管理员
- public List
selectCustomer(){ - String sql="select * from customer";
- try {
- return qr.query(sql, new BeanListHandler
(Customer.class)); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按ID查询顾客
- public Customer selectCustomerByCid(int cid) {
- String sql="select * from customer where cid=?";
- try {
- return qr.query(sql, new BeanHandler
(Customer.class),cid); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按页码查询顾客
- public List
selectCustomerByPage(PageTools pt){ - String sql="select * from customer limit ?,?";
- try {
- return qr.query(sql, new BeanListHandler
(Customer.class),pt.getStart_index(),pt.getPage_size()); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //修改一个顾客
- public boolean updateCustomer(Customer customer){
- String sql="update customer set cname=?,csex=?,cage=?,cphone=?,cemail=?,caddress=? where cid=?";
- try {
- int z=qr.update(sql,customer.getCname(),customer.getCsex(),customer.getCage(),customer.getCphone(),customer.getCemail(),customer.getCaddress(),customer.getCid());
- if(z>0)
- return true;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //统计顾客的个数
- public int counts(){
- String sql="select count(*) from customer";
- try {
- Long l=(Long)qr.query(sql, new ScalarHandler());//反射
- return l.intValue();//java基础
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return 0;
-
- }
-
- }
DrugDao
- package dao;
-
- import java.sql.SQLException;
- import java.util.List;
-
- import org.apache.commons.dbutils.QueryRunner;
- import org.apache.commons.dbutils.handlers.BeanHandler;
- import org.apache.commons.dbutils.handlers.BeanListHandler;
- import org.apache.commons.dbutils.handlers.ScalarHandler;
-
- import com.mchange.v2.c3p0.ComboPooledDataSource;
-
- import entity.Drug;
- import util.PageTools;
-
- public class DrugDao {
- private QueryRunner qr=new QueryRunner(new ComboPooledDataSource());
-
- //添加药品
- public boolean insertDrug(Drug drug){
- String sql="insert into drug values(?,?,?,?,?,?,?,?,?)";
- try {
- int z=qr.update(sql,drug.getDid(),drug.getDname(),drug.getDclass(),drug.getDprice(),drug.getProdate(),drug.getExdate(),drug.getRequantity(),drug.getSname(),drug.getFunction());
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //删除一个管理员
- public boolean deleteDrugByDid(String did){
- String sql="delete from drug where did=?";
- try {
- int z=qr.update(sql,did);
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //查询所有管理员
- public List
selectDrug(){ - String sql="select * from drug";
- try {
- return qr.query(sql, new BeanListHandler
(Drug.class)); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按ID查询管理员
- public Drug selectDrugByDid(String did) {
- String sql="select * from drug where did=?";
- try {
- return qr.query(sql, new BeanHandler
(Drug.class),did); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按页码查询管理员
- public List
selectDrugByPage(PageTools pt){ - String sql="select * from drug limit ?,?";
- try {
- return qr.query(sql, new BeanListHandler
(Drug.class),pt.getStart_index(),pt.getPage_size()); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //修改一个管理员
- public boolean updateDrug(Drug drug){
- String sql="update drug set dname=?,dclass=?,dprice=?,prodate=?,exdate=?,requantity=?,sname=?,function=? where did=?";
- try {
- int z=qr.update(sql,drug.getDname(),drug.getDclass(),drug.getDprice(),drug.getProdate(),drug.getExdate(),drug.getRequantity(),drug.getSname(),drug.getFunction(),drug.getDid());
- if(z>0)
- return true;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //统计管理员的个数
- public int counts(){
- String sql="select count(*) from drug";
- try {
- Long l=(Long)qr.query(sql, new ScalarHandler());//反射
- return l.intValue();//java基础
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return 0;
-
- }
-
- }
OrderDao
- package dao;
-
- import java.sql.SQLException;
- import java.util.List;
-
- import org.apache.commons.dbutils.QueryRunner;
- import org.apache.commons.dbutils.handlers.BeanHandler;
- import org.apache.commons.dbutils.handlers.BeanListHandler;
- import org.apache.commons.dbutils.handlers.ScalarHandler;
-
- import com.mchange.v2.c3p0.ComboPooledDataSource;
-
- import entity.Order;
- import util.PageTools;
-
- public class OrderDao {
- private QueryRunner qr=new QueryRunner(new ComboPooledDataSource());
-
- //添加订单
- public boolean insertOrder(Order order){
- String sql="insert into ordered(did,oquantity,oprice,cid,odate) values(?,?,?,?,?)";
- try {
- int z=qr.update(sql,order.getDid(),order.getOquantity(),order.getOprice(),order.getCid(),order.getOdate());
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //删除一个订单
- public boolean deleteOrderByOid(int oid){
- String sql="delete from ordered where oid=?";
- try {
- int z=qr.update(sql,oid);
- if(z>0) {
- return true;
- }
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
- //查询所有订单
- public List
selectOrder(){ - String sql="select * from ordered";
- try {
- return qr.query(sql, new BeanListHandler
(Order.class)); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
- //按ID查询订单
- public Order selectOrderByOid(int oid) {
- String sql="select * from ordered where oid=?";
- try {
- return qr.query(sql, new BeanHandler
(Order.class),oid); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
-
- //按页码查询订单
- public List
selectOrderByPage(PageTools pt){ - String sql="select * from ordered limit ?,?";
- try {
- return qr.query(sql, new BeanListHandler
(Order.class),pt.getStart_index(),pt.getPage_size()); - } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return null;
- }
-
- //修改一个订单
- public boolean updateOrder(Order order){
- String sql="update ordered set did=?,oquantity=?,oprice=?,cid=?,odate=? where oid=?";
- try {
- int z=qr.update(sql,order.getDid(),order.getOquantity(),order.getOprice(),order.getCid(),order.getOdate(),order.getOid());
- if(z>0)
- return true;
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return false;
- }
-
- //统计订单的个数
- public int counts(){
- String sql="select count(*) from ordered";
- try {
- Long l=(Long)qr.query(sql, new ScalarHandler());//反射
- return l.intValue();//java基础
- } catch (SQLException e) {
- // TODO Auto-generated catch block
- e.printStackTrace();
- }
- return 0;
- }
- }
如果也想学习本系统,下面领取。关注并回复:009jsp