基于javaweb+mysql的ssm简单医院信息管理系统(java+ssm+javascript+jsp+mysql)
运行环境
Java≥8、MySQL≥5.7、Tomcat≥8
开发工具
eclipse/idea/myeclipse/sts等均可配置运行
适用
课程设计,大作业,毕业设计,项目练习,学习演示等
功能说明
基于javaweb+mysql的SSM简单医院信息管理系统(java+ssm+javascript+jsp+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版本;
技术栈
- 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp
使用说明
- 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件; 2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行; 3. 将项目中application.yml配置文件中的数据库配置改为自己的配置; 4. 运行项目,输入localhost:8080/ 登录
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getAllUtil.do")
public String getAllUtil(HttpServletRequest request, Model model) {
String field = request.getParameter("field");
String fieldValue = request.getParameter("fieldValue");
try {
fieldValue = new String(fieldValue.getBytes("iso-8859-1"), "utf-8");
} catch (Exception e) {}
String pageNo = request.getParameter("pageModel.currentPageNo");
int currentPageNo = 1;
try{
currentPageNo = Integer.parseInt(pageNo);
}catch(Exception e){
}
List<Keshiguanli> list = keshiguanliMapper.getObjectList(field, fieldValue);
PageModel pageModel = new PageModel();
pageModel = pageModel.getUtilByController(list, currentPageNo);
model.addAttribute("pageModel", pageModel);
model.addAttribute("fieldValue", fieldValue);
model.addAttribute("field", field);
return "Keshiguanli/find";
}
@RequestMapping(value = "/deleteUtil.do")
public String deleteUtil(HttpServletRequest request, Keshiguanli util, Model model) {
try{
keshiguanliMapper.deleteObject(util.getId());
}catch(Exception e){
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/deleteManyUtil.do")
public String deleteManyUtil(HttpServletRequest request, User util,
Model model) {
String ids[] = request.getParameterValues("id");
for (String id : ids) {
util = new User();
util.setId(Integer.parseInt(id));
try{
keshiguanliMapper.deleteObject(util.getId());
}catch(Exception e){}
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")
public String saveOrUpdateObject(HttpServletRequest request, Keshiguanli util, Model model) {
return "YishengFile/ok";
}
return "YishengFile/ok";
}
}
@Controller
@RequestMapping(value = "Zhengliaojilu")
public class ZhengliaojiluController {
@Autowired
private ZhengliaojiluMapper zhengliaojiluMapper;
@Autowired
private HuanzheguanliMapper huanzheguanliMapper;
@Autowired
private KeshixiangmuguanliMapper keshixiangmuguanliMapper;
@Autowired
private YishengFileMapper yishengFileMapper;
@RequestMapping(value = "/initUtil.do")
public String initUtil(HttpServletRequest request, Model model) {
List<Huanzheguanli> listHuanzheguanli = huanzheguanliMapper.getObjectList(null, null);
model.addAttribute("listHuanzheguanli", listHuanzheguanli);
List<Keshixiangmuguanli> listKeshixiangmuguanli = keshixiangmuguanliMapper.getObjectList(null, null);
model.addAttribute("listKeshixiangmuguanli", listKeshixiangmuguanli);
List<YishengFile> listYishengFile = yishengFileMapper.getObjectList(null, null);
model.addAttribute("listYishengFile", listYishengFile);
return "Zhengliaojilu/saveOrUpdate";
}
@Controller
@RequestMapping(value = "Sexguanli")
public class SexguanliController {
@Autowired
private SexguanliMapper sexguanliMapper;
@RequestMapping(value = "/initUtil.do")
public String initUtil(HttpServletRequest request, Model model) {
return "Sexguanli/saveOrUpdate";
}
@RequestMapping(value = "/selectUtil.do")
public String selectUtil(HttpServletRequest request, Sexguanli util, Model model) {
util = sexguanliMapper.selectObject(util.getId());
model.addAttribute("util", util);
return "Sexguanli/saveOrUpdate";
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getAllUtil.do")
public String getAllUtil(HttpServletRequest request, Model model) {
String field = request.getParameter("field");
String fieldValue = request.getParameter("fieldValue");
try {
fieldValue = new String(fieldValue.getBytes("iso-8859-1"), "utf-8");
} catch (Exception e) {}
String pageNo = request.getParameter("pageModel.currentPageNo");
int currentPageNo = 1;
try{
currentPageNo = Integer.parseInt(pageNo);
}catch(Exception e){
try {
userMapper.deleteObject(util.getId());
} catch (Exception e) {
}
}
return this.getAllUtil(request, util, model);
}
@RequestMapping(value = "/deleteUtil.do")
public String deleteUtil(HttpServletRequest request, User util, Model model) {
try {
userMapper.deleteObject(util.getId());
} catch (Exception e) {
}
return this.getAllUtil(request, util, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")
public String saveOrUpdateObject(HttpServletRequest request, User util,
Model model) {
List<User> list = userMapper.getObjectList("s_0", util.getS_0());
if (0 == util.getId()) {
if (list.size() > 0) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "User/saveOrUpdate";
}
userMapper.insertObject(util);
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "User/saveOrUpdate";
}
userMapper.updateObject(util);
}
return this.getAllUtil(request, util, model);
}
@RequestMapping(value = "/upload.do")
public String upload(@RequestParam MultipartFile[] myfiles,
HttpServletRequest request, User util, Model model)
throws IOException {
for (MultipartFile file : myfiles) {
model.addAttribute("fieldValue", fieldValue);
model.addAttribute("field", field);
return "Keshiguanli/find";
}
@RequestMapping(value = "/deleteUtil.do")
public String deleteUtil(HttpServletRequest request, Keshiguanli util, Model model) {
try{
keshiguanliMapper.deleteObject(util.getId());
}catch(Exception e){
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/deleteManyUtil.do")
public String deleteManyUtil(HttpServletRequest request, User util,
Model model) {
String ids[] = request.getParameterValues("id");
for (String id : ids) {
util = new User();
util.setId(Integer.parseInt(id));
try{
keshiguanliMapper.deleteObject(util.getId());
}catch(Exception e){}
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")
public String saveOrUpdateObject(HttpServletRequest request, Keshiguanli util, Model model) {
List<Keshiguanli> list = keshiguanliMapper.getObjectList("s_0", util.getS_0());
if (0 == util.getId()) {
if (list.size() > 0) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Keshiguanli/saveOrUpdate";
}
keshiguanliMapper.insertObject(util);
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Keshiguanli/saveOrUpdate";
}
keshiguanliMapper.updateObject(util);
}
@RequestMapping(value = "/deleteManyUtil.do")
public String deleteManyUtil(HttpServletRequest request, User util,
Model model) {
String ids[] = request.getParameterValues("id");
for (String id : ids) {
util = new User();
util.setId(Integer.parseInt(id));
try{
sexguanliMapper.deleteObject(util.getId());
}catch(Exception e){}
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")
public String saveOrUpdateObject(HttpServletRequest request, Sexguanli util, Model model) {
List<Sexguanli> list = sexguanliMapper.getObjectList("s_0", util.getS_0());
if (0 == util.getId()) {
if (list.size() > 0) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Sexguanli/saveOrUpdate";
}
sexguanliMapper.insertObject(util);
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Sexguanli/saveOrUpdate";
}
sexguanliMapper.updateObject(util);
}
return this.getAllUtil(request, model);
}
}
@Autowired
private KeshiguanliMapper keshiguanliMapper;
@Autowired
private SexguanliMapper sexguanliMapper;
@RequestMapping(value = "/initUtil.do")
public String initUtil(HttpServletRequest request, Model model) {
List<Keshiguanli> listKeshiguanli = keshiguanliMapper.getObjectList(null, null);
model.addAttribute("listKeshiguanli", listKeshiguanli);
List<Sexguanli> listSexguanli = sexguanliMapper.getObjectList(null, null);
model.addAttribute("listSexguanli", listSexguanli);
return "Huanzheguanli/saveOrUpdate";
}
@RequestMapping(value = "/selectUtil.do")
public String selectUtil(HttpServletRequest request, Huanzheguanli util, Model model) {
util = huanzheguanliMapper.selectObject(util.getId());
model.addAttribute("util", util);
List<Keshiguanli> listKeshiguanli = keshiguanliMapper.getObjectList(null, null);
model.addAttribute("listKeshiguanli", listKeshiguanli);
List<Sexguanli> listSexguanli = sexguanliMapper.getObjectList(null, null);
model.addAttribute("listSexguanli", listSexguanli);
return "Huanzheguanli/saveOrUpdate";
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getAllUtil.do")
public String getAllUtil(HttpServletRequest request, Model model) {
String field = request.getParameter("field");
String fieldValue = request.getParameter("fieldValue");
try {
fieldValue = new String(fieldValue.getBytes("iso-8859-1"), "utf-8");
} catch (Exception e) {}
String pageNo = request.getParameter("pageModel.currentPageNo");
int currentPageNo = 1;
try{
currentPageNo = Integer.parseInt(pageNo);
}catch(Exception e){
}
List<Huanzheguanli> list = huanzheguanliMapper.getObjectList(field, fieldValue);
PageModel pageModel = new PageModel();
pageModel = pageModel.getUtilByController(list, currentPageNo);
model.addAttribute("pageModel", pageModel);
model.addAttribute("fieldValue", fieldValue);
model.addAttribute("field", field);
return "Huanzheguanli/find";
}
@Controller
@RequestMapping(value = "Sexguanli")
public class SexguanliController {
@Autowired
private SexguanliMapper sexguanliMapper;
@RequestMapping(value = "/initUtil.do")
public String initUtil(HttpServletRequest request, Model model) {
return "Sexguanli/saveOrUpdate";
}
@RequestMapping(value = "/selectUtil.do")
public String selectUtil(HttpServletRequest request, Sexguanli util, Model model) {
util = sexguanliMapper.selectObject(util.getId());
model.addAttribute("util", util);
return "Sexguanli/saveOrUpdate";
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getAllUtil.do")
public String getAllUtil(HttpServletRequest request, Model model) {
String field = request.getParameter("field");
String fieldValue = request.getParameter("fieldValue");
try {
fieldValue = new String(fieldValue.getBytes("iso-8859-1"), "utf-8");
} catch (Exception e) {}
String pageNo = request.getParameter("pageModel.currentPageNo");
int currentPageNo = 1;
try{
currentPageNo = Integer.parseInt(pageNo);
}catch(Exception e){
}
List<Sexguanli> list = sexguanliMapper.getObjectList(field, fieldValue);
PageModel pageModel = new PageModel();
pageModel = pageModel.getUtilByController(list, currentPageNo);
model.addAttribute("pageModel", pageModel);
model.addAttribute("fieldValue", fieldValue);
model.addAttribute("field", field);
return "Sexguanli/find";
}
@RequestMapping(value = "/deleteUtil.do")
public String deleteUtil(HttpServletRequest request, Sexguanli util, Model model) {
try{
sexguanliMapper.deleteObject(util.getId());
}catch(Exception e){
}
return this.getAllUtil(request, model);
}
@Controller
@RequestMapping(value = "User")
public class UserController {
@Autowired
private UserMapper userMapper;
@RequestMapping(value = "/login.do")
public String login(HttpServletRequest request, User util, Model model) {
HttpSession session = request.getSession();
String code = (String) session.getAttribute("code");
String userCode = request.getParameter("code");
if (!code.equals(userCode)) {
model.addAttribute("errMsg", "验证码错误");
return "../login";
}
User user = userMapper.getObjectByName(util);
if (null == user) {
model.addAttribute("errMsg", "登录失败");
return "../login";
}
boolean flag = user.getS_1().equals(util.getS_1());
if (!flag) {
model.addAttribute("errMsg", "登录失败");
return "../login";
}
if (flag && !SysUtil.getSysFlag()) {
model.addAttribute("errMsg", "无法登陆,请联系管理员");
return "../login";
}
+ File.separator;
String uploadName = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date())
+ fileName;
File localFile = new File(path + uploadName);
file.transferTo(localFile);
util.setS_0(uploadName);
util.setS_1(fileName);
util.setS_2(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
}else{
List<YishengFile> list = yishengFileMapper.getObjectList("s_3", util.getS_3());
List<User> listUser = userMapper.getObjectList(null, null);
model.addAttribute("listUser", listUser);
List<Keshiguanli> listKeshiguanli = keshiguanliMapper.getObjectList(null, null);
model.addAttribute("listKeshiguanli", listKeshiguanli);
if (0 == util.getId()) {
if (list.size() > 0) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "YishengFile/saveOrUpdate";
}
util.setS_0("None");
util.setS_1("None");
util.setS_2(new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date()));
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "YishengFile/saveOrUpdate";
}
YishengFile utilTmp = yishengFileMapper.selectObject(util
.getId());
util.setS_0(utilTmp.getS_0());
util.setS_1(utilTmp.getS_1());
util.setS_2(utilTmp.getS_2());
}
}
if (0 == util.getId()) {
yishengFileMapper.insertObject(util);
} else {
yishengFileMapper.updateObject(util);
}
return "YishengFile/ok";
}
}
@RequestMapping(value = "/deleteManyUtil.do")
public String deleteManyUtil(HttpServletRequest request, User util,
Model model) {
String ids[] = request.getParameterValues("id");
for (String id : ids) {
util = new User();
util.setId(Integer.parseInt(id));
try{
keshixiangmuguanliMapper.deleteObject(util.getId());
}catch(Exception e){}
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")
public String saveOrUpdateObject(HttpServletRequest request, Keshixiangmuguanli util, Model model) {
List<Keshixiangmuguanli> list = keshixiangmuguanliMapper.getObjectList("s_0", util.getS_0());
List<Keshiguanli> listKeshiguanli = keshiguanliMapper.getObjectList(null, null);
model.addAttribute("listKeshiguanli", listKeshiguanli);
if (0 == util.getId()) {
if (list.size() > 0) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Keshixiangmuguanli/saveOrUpdate";
}
keshixiangmuguanliMapper.insertObject(util);
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Keshixiangmuguanli/saveOrUpdate";
}
keshixiangmuguanliMapper.updateObject(util);
}
return this.getAllUtil(request, model);
}
}
@Controller
@RequestMapping(value = "Keshiguanli")
case ActionMap.UPLOAD_FILE:
conf = this.configManager.getConfig( actionCode );
state = new Uploader( request, conf ).doExec();
break;
case ActionMap.CATCH_IMAGE:
conf = configManager.getConfig( actionCode );
String[] list = this.request.getParameterValues( (String)conf.get( "fieldName" ) );
state = new ImageHunter( conf ).capture( list );
break;
case ActionMap.LIST_IMAGE:
case ActionMap.LIST_FILE:
conf = configManager.getConfig( actionCode );
int start = this.getStartIndex();
state = new FileManager( conf ).listFile( start );
break;
}
return state.toJSONString();
}
public int getStartIndex () {
String start = this.request.getParameter( "start" );
try {
return Integer.parseInt( start );
} catch ( Exception e ) {
return 0;
}
}
/**
* callback参数验证
*/
public boolean validCallbackName ( String name ) {
if ( name.matches( "^[a-zA-Z_]+[\\w0-9_]*$" ) ) {
return true;
}
return false;
}
}
try {
return Integer.parseInt( start );
} catch ( Exception e ) {
return 0;
}
}
/**
* callback参数验证
*/
public boolean validCallbackName ( String name ) {
if ( name.matches( "^[a-zA-Z_]+[\\w0-9_]*$" ) ) {
return true;
}
return false;
}
}
public class BinaryUploader {
public static final State save(HttpServletRequest request,
Map<String, Object> conf) {
FileItemStream fileStream = null;
boolean isAjaxUpload = request.getHeader( "X_Requested_With" ) != null;
if (!ServletFileUpload.isMultipartContent(request)) {
return new BaseState(false, AppInfo.NOT_MULTIPART_CONTENT);
}
keshixiangmuguanliMapper.insertObject(util);
} else {
if (list.size() > 1) {
model.addAttribute("util", util);
model.addAttribute("errMsg", "该信息已存在!");
return "Keshixiangmuguanli/saveOrUpdate";
}
keshixiangmuguanliMapper.updateObject(util);
}
return this.getAllUtil(request, model);
}
}
@Controller
@RequestMapping(value = "Keshiguanli")
public class KeshiguanliController {
@Autowired
private KeshiguanliMapper keshiguanliMapper;
@RequestMapping(value = "/initUtil.do")
public String initUtil(HttpServletRequest request, Model model) {
return "Keshiguanli/saveOrUpdate";
}
@RequestMapping(value = "/selectUtil.do")
public String selectUtil(HttpServletRequest request, Keshiguanli util, Model model) {
util = keshiguanliMapper.selectObject(util.getId());
model.addAttribute("util", util);
return "Keshiguanli/saveOrUpdate";
}
@SuppressWarnings({ "rawtypes", "unchecked" })
}
YishengFile utilTmp = yishengFileMapper.selectObject(util
.getId());
util.setS_0(utilTmp.getS_0());
util.setS_1(utilTmp.getS_1());
util.setS_2(utilTmp.getS_2());
}
}
if (0 == util.getId()) {
yishengFileMapper.insertObject(util);
} else {
yishengFileMapper.updateObject(util);
}
return "YishengFile/ok";
}
return "YishengFile/ok";
}
}
@Controller
@RequestMapping(value = "Zhengliaojilu")
public class ZhengliaojiluController {
@Autowired
private ZhengliaojiluMapper zhengliaojiluMapper;
@Autowired
private HuanzheguanliMapper huanzheguanliMapper;
@Autowired
private KeshixiangmuguanliMapper keshixiangmuguanliMapper;
@Autowired
private YishengFileMapper yishengFileMapper;
@SuppressWarnings("serial")
public class ImageServlet extends HttpServlet {
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
response.setContentType("image/jpeg");
int w = 85;
int h = 20;
java.util.Random random = new java.util.Random();
BufferedImage img = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
Graphics pen = img.getGraphics();
pen.setColor(Color.WHITE);
pen.fillRect(0, 0, w, h);
for (int i = 0; i < 50; i++) {
pen.setColor(new Color(random.nextInt(255), random.nextInt(255),
random.nextInt(255)));
int x1 = random.nextInt(w);
int y1 = random.nextInt(h);
int x2 = random.nextInt(10) + x1;
int y2 = random.nextInt(10) + y1;
pen.drawLine(x1, y1, x2, y2);
}
StringBuffer sb = new StringBuffer();
pen.setFont(new Font("黑体", Font.BOLD, 16));
for (int i = 0; i < 4; i++) {
pen.setColor(new Color(random.nextInt(100), random.nextInt(100),
random.nextInt(100)));
String num = String.valueOf(random.nextInt(10));
pen.drawString(num, i * 20 + 10, 15);
sb.append(num);
}
request.getSession().setAttribute("code", sb.toString());
response.setHeader("Pragma", "no-store");
response.setDateHeader("Expires", 0);
response.setHeader("Pragma", "no-cache");
ImageIO.write(img, "jpeg", response.getOutputStream());
}
}
public class Uploader {
private HttpServletRequest request = null;
private Map<String, Object> conf = null;
public Uploader(HttpServletRequest request, Map<String, Object> conf) {
public String selectUtil(HttpServletRequest request, Sexguanli util, Model model) {
util = sexguanliMapper.selectObject(util.getId());
model.addAttribute("util", util);
return "Sexguanli/saveOrUpdate";
}
@SuppressWarnings({ "rawtypes", "unchecked" })
@RequestMapping(value = "/getAllUtil.do")
public String getAllUtil(HttpServletRequest request, Model model) {
String field = request.getParameter("field");
String fieldValue = request.getParameter("fieldValue");
try {
fieldValue = new String(fieldValue.getBytes("iso-8859-1"), "utf-8");
} catch (Exception e) {}
String pageNo = request.getParameter("pageModel.currentPageNo");
int currentPageNo = 1;
try{
currentPageNo = Integer.parseInt(pageNo);
}catch(Exception e){
}
List<Sexguanli> list = sexguanliMapper.getObjectList(field, fieldValue);
PageModel pageModel = new PageModel();
pageModel = pageModel.getUtilByController(list, currentPageNo);
model.addAttribute("pageModel", pageModel);
model.addAttribute("fieldValue", fieldValue);
model.addAttribute("field", field);
return "Sexguanli/find";
}
@RequestMapping(value = "/deleteUtil.do")
public String deleteUtil(HttpServletRequest request, Sexguanli util, Model model) {
try{
sexguanliMapper.deleteObject(util.getId());
}catch(Exception e){
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/deleteManyUtil.do")
public String deleteManyUtil(HttpServletRequest request, User util,
Model model) {
String ids[] = request.getParameterValues("id");
for (String id : ids) {
util = new User();
util.setId(Integer.parseInt(id));
try{
sexguanliMapper.deleteObject(util.getId());
}catch(Exception e){}
}
return this.getAllUtil(request, model);
}
@RequestMapping(value = "/saveOrUpdateObject.do")