Java项目:中药药方管理系统(java+SSM+JSP+bootstrap+Mysql)

本文主要是介绍Java项目:中药药方管理系统(java+SSM+JSP+bootstrap+Mysql),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

源码获取:俺的博客首页 "资源" 里下载!

项目介绍

本项目分为药房人员、管理员与医生三种角色;
药房人员角色包含以下功能:
药房人员登录,导诊单管理,采购管理等功能。

管理员角色包含以下功能:
管理员登录,药房人员管理,医生管理,药材信息管理,药方管理等功能。

医生角色包含以下功能:
医生登录,药材信息查询,药方查询,导诊单管理等功能。

环境需要

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.数据库:MySql 5.7/8.0版本均可;
6.是否Maven项目:是;

技术栈

1. 后端:Spring+SpringMVC+Mbytes
2. 前端:JSP+css+javascript+bootstrap+jQuery

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中db.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,在浏览器中输入localhost:8080/ssm_yaofangsys/
医生账号/密码: doctor/123456
药房人员账号/密码:yaofang/123456
管理员账号/密码:admin/admin

 

 

 

 

 

 

 

登录管理控制层:

@Controller
@RequestMapping("/login")
public class LoginController extends BaseController{@Autowiredprivate ManageService manageService;@Autowiredprivate MedicineUserService medicineUserService;@Autowiredprivate DoctorService doctorService;/*** 跳转登陆* @return*/@RequestMapping("/login")public String login(){return "login/mLogin";}@RequestMapping("/index")public String index(){return "login/mIndex";}@RequestMapping("/uIndex")public String uIndex(Model model){return "login/uIndex";}@RequestMapping("/welcome")public String welcome(){return "login/welcome";}@RequestMapping("/mup")public String mpass(){return "login/mup";}/*** 管理员登陆* @param manage* @param request* @param response* @return*/@RequestMapping("/toLogin")public String toLogin(Manage manage,Integer role, HttpServletRequest request, HttpServletResponse response){if (role == null){return "redirect:/login/login.action";}//超级管理员if (role== 1){Manage byEntity = manageService.getByEntity(manage);if(byEntity != null){request.getSession().setAttribute("role", role);request.getSession().setAttribute("name", byEntity.getRealName());return "redirect:/login/index.action";}else{return "redirect:/login/login.action";}}//1 超级管理员2 医生  3 药房人员 if (role== 2){Doctor d = new Doctor();d.setPassword(manage.getPassword());d.setUserName(manage.getUserName());Doctor byEntity = doctorService.getByEntity(d);if(byEntity != null){request.getSession().setAttribute("role", role);request.getSession().setAttribute("name", byEntity.getRealName());request.getSession().setAttribute("userId", byEntity.getId());return "redirect:/login/index.action";}else{return "redirect:/login/login.action";}}//药房人员if (role== 3){MedicineUser d = new MedicineUser();d.setPassword(manage.getPassword());d.setUserName(manage.getUserName());MedicineUser byEntity = medicineUserService.getByEntity(d);if(byEntity != null){request.getSession().setAttribute("role", role);request.getSession().setAttribute("name", byEntity.getRealName());request.getSession().setAttribute("userId", byEntity.getId());return "redirect:/login/index.action";}else{return "redirect:/login/login.action";}}return null;}/*** 退出* @param request* @param response* @return*/@RequestMapping("/tuichu")public String tuichu( HttpServletRequest request, HttpServletResponse response){HttpSession session = request.getSession();session.invalidate();return "redirect:/login/login.action";}@RequestMapping("/uTui")public String uTui( HttpServletRequest request, HttpServletResponse response){HttpSession session = request.getSession();session.invalidate();return "redirect:/login/uLogin.action";}@RequestMapping("/head")private String head(){return "inc/head";}@RequestMapping("/left")private String left(){return "inc/left";}}

医生管理控制层: 

@Controller
@RequestMapping("/doctor")
public class DoctorController extends BaseController {/*** 依赖注入 start dao/service/===*/@Autowiredprivate DoctorService doctorService;@RequestMapping(value = "/findBySql")public String findBySql(Doctor doctor, Model model, HttpServletRequest request, HttpServletResponse response) {//分页查询String sql = "SELECT * FROM doctor WHERE 1=1  and isDelete = 0 ";//and isDelete = 0 if(!isEmpty(doctor.getUserName())){sql += " and userName like '%"+doctor.getUserName()+"%'";}if(!isEmpty(doctor.getPassword())){sql += " and password like '%"+doctor.getPassword()+"%'";}if(!isEmpty(doctor.getRealName())){sql += " and realName like '%"+doctor.getRealName()+"%'";}if(!isEmpty(doctor.getIdCard())){sql += " and idCard like '%"+doctor.getIdCard()+"%'";}if(!isEmpty(doctor.getPhone())){sql += " and phone like '%"+doctor.getPhone()+"%'";}if(!isEmpty(doctor.getSex())){sql += " and sex like '%"+doctor.getSex()+"%'";}if(!isEmpty(doctor.getIsDelete())){sql += " and isDelete like '%"+doctor.getIsDelete()+"%'";}sql += " ORDER BY ID DESC ";Pager<Doctor> pagers = doctorService.findBySqlRerturnEntity(sql);model.addAttribute("pagers", pagers);//存储查询条件model.addAttribute("obj", doctor);return "doctor/doctor";}/*** 跳至添加页面* @return*/@RequestMapping(value = "/add")public String add() {return "doctor/add";}/*** 添加执行* @return*/@RequestMapping(value = "/exAdd")public String exAdd(Doctor doctor, Model model, HttpServletRequest request, HttpServletResponse response) {doctor.setIsDelete(0);doctorService.insert(doctor);return "redirect:/doctor/findBySql";}/*** 跳至修改页面* @return*/@RequestMapping(value = "/update")public String update(Integer id,Model model) {Doctor obj = doctorService.load(id);model.addAttribute("obj",obj);return "doctor/update";}/*** 添加修改* @return*/@RequestMapping(value = "/exUpdate")public String exUpdate(Doctor doctor, Model model, HttpServletRequest request, HttpServletResponse response) {//1.通过实体类修改,可以多传修改条件doctorService.updateById(doctor);//2.通过主键id修改//doctorService.updateById(doctor);return "redirect:/doctor/findBySql";}/*** 删除通过主键* @return*/@RequestMapping(value = "/delete")public String delete(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {Doctor load = doctorService.load(id);load.setIsDelete(1);doctorService.update(load);doctorService.updateById(load);return "redirect:/doctor/findBySql";}}

药房人员管理控制层:

@Controller
@RequestMapping("/medicineUser")
public class MedicineUserController extends BaseController {/*** 依赖注入 start dao/service/===*/@Autowiredprivate MedicineUserService medicineUserService;@RequestMapping(value = "/findBySql")public String findBySql(MedicineUser medicineUser, Model model, HttpServletRequest request, HttpServletResponse response) {//分页查询String sql = "SELECT * FROM medicine_user WHERE 1=1  and isDelete = 0  ";//and isDelete = 0 if(!isEmpty(medicineUser.getUserName())){sql += " and userName like '%"+medicineUser.getUserName()+"%'";}if(!isEmpty(medicineUser.getPassword())){sql += " and password like '%"+medicineUser.getPassword()+"%'";}if(!isEmpty(medicineUser.getRealName())){sql += " and realName like '%"+medicineUser.getRealName()+"%'";}if(!isEmpty(medicineUser.getIdCard())){sql += " and idCard like '%"+medicineUser.getIdCard()+"%'";}if(!isEmpty(medicineUser.getPhone())){sql += " and phone like '%"+medicineUser.getPhone()+"%'";}if(!isEmpty(medicineUser.getSex())){sql += " and sex like '%"+medicineUser.getSex()+"%'";}if(!isEmpty(medicineUser.getIsDelete())){sql += " and isDelete like '%"+medicineUser.getIsDelete()+"%'";}sql += " ORDER BY ID DESC ";Pager<MedicineUser> pagers = medicineUserService.findBySqlRerturnEntity(sql);model.addAttribute("pagers", pagers);//存储查询条件model.addAttribute("obj", medicineUser);return "medicineUser/medicineUser";}/*** 跳至添加页面* @return*/@RequestMapping(value = "/add")public String add() {return "medicineUser/add";}/*** 添加执行* @return*/@RequestMapping(value = "/exAdd")public String exAdd(MedicineUser medicineUser, Model model, HttpServletRequest request, HttpServletResponse response) {medicineUser.setIsDelete(0);medicineUserService.insert(medicineUser);return "redirect:/medicineUser/findBySql";}/*** 跳至修改页面* @return*/@RequestMapping(value = "/update")public String update(Integer id,Model model) {MedicineUser obj = medicineUserService.load(id);model.addAttribute("obj",obj);return "medicineUser/update";}/*** 添加修改* @return*/@RequestMapping(value = "/exUpdate")public String exUpdate(MedicineUser medicineUser, Model model, HttpServletRequest request, HttpServletResponse response) {//1.通过实体类修改,可以多传修改条件medicineUserService.updateById(medicineUser);//2.通过主键id修改//medicineUserService.updateById(medicineUser);return "redirect:/medicineUser/findBySql";}/*** 删除通过主键* @return*/@RequestMapping(value = "/delete")public String delete(Integer id, Model model, HttpServletRequest request, HttpServletResponse response) {MedicineUser load = medicineUserService.load(id);load.setIsDelete(1);medicineUserService.updateById(load);return "redirect:/medicineUser/findBySql";}}

源码获取:俺的博客首页 "资源" 里下载!

这篇关于Java项目:中药药方管理系统(java+SSM+JSP+bootstrap+Mysql)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/408308

相关文章

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

SpringBoot实现数据库读写分离的3种方法小结

《SpringBoot实现数据库读写分离的3种方法小结》为了提高系统的读写性能和可用性,读写分离是一种经典的数据库架构模式,在SpringBoot应用中,有多种方式可以实现数据库读写分离,本文将介绍三... 目录一、数据库读写分离概述二、方案一:基于AbstractRoutingDataSource实现动态

Springboot @Autowired和@Resource的区别解析

《Springboot@Autowired和@Resource的区别解析》@Resource是JDK提供的注解,只是Spring在实现上提供了这个注解的功能支持,本文给大家介绍Springboot@... 目录【一】定义【1】@Autowired【2】@Resource【二】区别【1】包含的属性不同【2】@

springboot循环依赖问题案例代码及解决办法

《springboot循环依赖问题案例代码及解决办法》在SpringBoot中,如果两个或多个Bean之间存在循环依赖(即BeanA依赖BeanB,而BeanB又依赖BeanA),会导致Spring的... 目录1. 什么是循环依赖?2. 循环依赖的场景案例3. 解决循环依赖的常见方法方法 1:使用 @La

Java枚举类实现Key-Value映射的多种实现方式

《Java枚举类实现Key-Value映射的多种实现方式》在Java开发中,枚举(Enum)是一种特殊的类,本文将详细介绍Java枚举类实现key-value映射的多种方式,有需要的小伙伴可以根据需要... 目录前言一、基础实现方式1.1 为枚举添加属性和构造方法二、http://www.cppcns.co

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Java中的String.valueOf()和toString()方法区别小结

《Java中的String.valueOf()和toString()方法区别小结》字符串操作是开发者日常编程任务中不可或缺的一部分,转换为字符串是一种常见需求,其中最常见的就是String.value... 目录String.valueOf()方法方法定义方法实现使用示例使用场景toString()方法方法

Java中List的contains()方法的使用小结

《Java中List的contains()方法的使用小结》List的contains()方法用于检查列表中是否包含指定的元素,借助equals()方法进行判断,下面就来介绍Java中List的c... 目录详细展开1. 方法签名2. 工作原理3. 使用示例4. 注意事项总结结论:List 的 contain

MySQL双主搭建+keepalived高可用的实现

《MySQL双主搭建+keepalived高可用的实现》本文主要介绍了MySQL双主搭建+keepalived高可用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,... 目录一、测试环境准备二、主从搭建1.创建复制用户2.创建复制关系3.开启复制,确认复制是否成功4.同

Java实现文件图片的预览和下载功能

《Java实现文件图片的预览和下载功能》这篇文章主要为大家详细介绍了如何使用Java实现文件图片的预览和下载功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... Java实现文件(图片)的预览和下载 @ApiOperation("访问文件") @GetMapping("