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

项目介绍

该项目分为前后台,分为普通用户与管理员两种角色。
前台主要功能包括:
普通用户的注册、登录,房屋列表展示,租房,我的订单、用户中心等功能模块;

后台主要功能包括:
系统设置:菜单管理、角色管理、修改密码;
用户管理:用户列表;
系统日志:日志列表;
房屋管理:房屋列表;
租赁管理:租赁列表;

环境需要

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版本;
6.是否Maven项目:否;

技术栈

1. 后端:Spring+SpringMVC+Mybatis
2. 前端:JSP+EasyUI+Echarts+jQuery

使用说明

1. 使用Navicat或者其它工具,在mysql中创建对应名称的数据库,并导入项目的sql文件;
2. 使用IDEA/Eclipse/MyEclipse导入项目,Eclipse/MyEclipse导入时,若为maven项目请选择maven;
若为maven项目,导入成功后请执行maven clean;maven install命令,然后运行;
3. 将项目中db.properties配置文件中的数据库配置改为自己的配置;
4. 运行项目,输入localhost:8080即可

后台管理员控制层:

@Controller
@RequestMapping("/admin")
public class Adminfunctioncontroller {@Resourceprivate RentwithdrawnService rentwithdrawnService;@Resourceprivate LeaseinformationService leaseinformationService;@Resourceprivate CheckoutapplicationService checkoutapplicationService;@Resourceprivate MydailylifeService mydailylifeService;@Resourceprivate RentcollectionService rentcollectionService;@Resourceprivate FaultService faultService;@Resourceprivate UserlistService userlistService;@Resourceprivate LeaseimgService leaseimgService;@Resourceprivate HeadPortraitImgService headPortraitImgService;/*** 注销*/@RequestMapping("/admincancel")public String cancellation(HttpServletRequest request) {HttpSession session = request.getSession();session.removeAttribute("admin");System.out.println("注销成功");return "official";}@RequestMapping("/details")public ModelAndView listCategory(@RequestParam int pn) {ModelAndView mav = new ModelAndView("rentingdel");// 设置分页传输PageHelper.startPage(pn, 10);// 查询所有数据List<rentwithdrawn> list = rentwithdrawnService.selectRwState("已退租");// 使用PageInFo封装查询结果PageInfo<rentwithdrawn> pageInfo = new PageInfo<rentwithdrawn>(list, 5);// 放入转发参数mav.addObject("cs", pageInfo);return mav;}@RequestMapping("/delect")public ModelAndView delect(@RequestParam int id) {ModelAndView mav = new ModelAndView("rentingdel");rentwithdrawnService.deleteByPrimaryKey(id);return mav;}@RequestMapping("/rentinglist")public ModelAndView listHouseState(@RequestParam int pn) {ModelAndView mav = new ModelAndView("rentinglist");// 设置分页传输PageHelper.startPage(pn, 10);// 查询所有数据List<leaseinformation> list = leaseinformationService.selecthousteaseWith("出租中");// 使用PageInFo封装查询结果PageInfo<leaseinformation> pageInfo = new PageInfo<leaseinformation>(list, 5);// 放入转发参数mav.addObject("cs", pageInfo);return mav;}@RequestMapping("/delectcontract")public ModelAndView delectcontract(@RequestParam int id) {ModelAndView mav = new ModelAndView("rentinglist");leaseinformationService.updacontract(id);return mav;}/*** 看房申请列表*/@RequestMapping("/houseapply")public ModelAndView kanfansqing(@RequestParam int pn) {ModelAndView mav = new ModelAndView("houseapply");// 设置分页传输PageHelper.startPage(pn, 10);// 查询所有数据List<checkoutapplication> list = checkoutapplicationService.selectCoaState();// 使用PageInFo封装查询结果PageInfo<checkoutapplication> pageInfo = new PageInfo<checkoutapplication>(list, 5);// 放入转发参数mav.addObject("cs", pageInfo);return mav;}/*** 预约看房申请*/@RequestMapping("/tonyizp")public ModelAndView tonyizp(@RequestParam int id, String housecall, String name) throws ParseException {ModelAndView mav = new ModelAndView("houseapply");checkoutapplicationService.xgaiCoaState("已同意", id);leaseinformation house = leaseinformationService.selectHouseCall(housecall).get(0);SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");// 设置日期格式Calendar c = Calendar.getInstance();c.add(Calendar.DATE, 30);// 计算30天后的时间String t1 = df.format(new Date());String t2 = df.format(c.getTime());// 格式转换date格式Date date1 = df.parse(t1);Date date2 = df.parse(t2);house.setHousestartingdate(date1);house.setHouseclosingdate(date2);house.setHousestate("出租中");house.setUsername(name);leaseinformationService.updateByPrimaryKey(house);return mav;}@RequestMapping("/jujzp")public ModelAndView jujzp(@RequestParam int id) {ModelAndView mav = new ModelAndView("houseapply");checkoutapplicationService.xgaiCoaState("已拒绝", id);return mav;}/*** 退房申请*/@RequestMapping("/tzshenqing")public ModelAndView tzshenqing(@RequestParam int pn) {ModelAndView mav = new ModelAndView("housedel");// 设置分页传输PageHelper.startPage(pn, 10);// 查询所有数据List<checkoutapplication> list = checkoutapplicationService.selectCoaState1();// 使用PageInFo封装查询结果PageInfo<checkoutapplication> pageInfo = new PageInfo<checkoutapplication>(list, 5);// 放入转发参数mav.addObject("cs", pageInfo);return mav;}/*** 删除退房记录*/@RequestMapping("/delecttzsq")public ModelAndView delecttzsq(@RequestParam int id) {ModelAndView mav = new ModelAndView("housedel");checkoutapplicationService.deleteByPrimaryKey(id);return mav;}/*** 同意退房*/@RequestMapping("/checkoutmvc")public ModelAndView checkoutmvc(@RequestParam int id,String housecall) {ModelAndView mav = new ModelAndView("housedel");String news=checkoutapplicationService.updateState("已同意", id);if(news.equals("同意退租成功!")) {System.out.println(news);System.out.println(leaseinformationService.updateCancelForeignKey(housecall));}return mav;}/*** 拒绝退房*/@RequestMapping("/refusemvc")public ModelAndView refusemvc(@RequestParam int id) {ModelAndView mav = new ModelAndView("housedel");System.out.println(checkoutapplicationService.updateState("已拒绝", id));return mav;}/*** 分页查找所有用户*/@RequestMapping("/pagingselectuser")public String pagingselectuser(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,@RequestParam(required = false, defaultValue = "6") Integer pageSize) {PageHelper.startPage(pn, 10);List<userlist> userlist = userlistService.selectAll();PageInfo<userlist> p = new PageInfo<userlist>(userlist, 3);model.addAttribute("p", p);return "account";}/*** 删除用户信息*/@RequestMapping("/deletuser")public String deletuser(int id,String username,HttpServletRequest request) {userlistService.updateJointTabledelete(username);headPortraitImgService.deletuserimg(userlistService.selectUserId(id).getUsercall());userlistService.deleteByPrimaryKey(id);return "redirect:pagingselectuser.do";}/*** 添加房源* * @throws IOException* @throws IllegalStateException*/@RequestMapping("/addhouse")public String addhouse(String housecall, String address, String area, String rent, String housetype, String[] state,@RequestParam(value = "file", required = false) MultipartFile file, HttpServletRequest request)throws IllegalStateException, IOException {if (housecall.equals("") || address.equals("") || area.equals("") || rent.equals("") || state.equals("")|| housetype.equals("")) {request.setAttribute("erro", "输入房源信息不能缺少任意一项!");return "housingadd";}List<leaseinformation> list = leaseinformationService.queryAll();for (leaseinformation leaseinformation : list) {if (housecall.equals(leaseinformation.getHousecall())) {request.setAttribute("erro", "该房源编号已存在");return "housingadd";}}String path = "";String imgname = "";if (!file.isEmpty()) {// 生成uuid作为文件名称String uuid = UUID.randomUUID().toString().replaceAll("-", "");// 获得文件类型(可以判断如果不是图片,禁止上传)String contentType = file.getContentType();// 获得文件后缀名称String imageName = contentType.substring(contentType.indexOf("/") + 1);path = "C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/leaseimg/" + uuid + "." + imageName;file.transferTo(new File(path));imgname = uuid + "." + imageName;}leaseimg img = new leaseimg();img.setImgname(address);img.setImgroute(imgname);leaseimgService.insert(img);int id = leaseimgService.selectAll().get(leaseimgService.selectAll().size() - 1).getId();leaseinformation house = new leaseinformation();house.setHouseaddress(address);house.setHousesize(Double.valueOf(area));house.setHousemoney(rent);house.setHousestate(state[0]);house.setHousecall(housecall);//获取当前时间和一个月后的时间Date date = new Date();SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");String HouseStartingDate=sdf.format(date);Calendar cal = Calendar.getInstance();cal.setTime(date);cal.add(Calendar.DATE, 30);String HouseClosingDate=sdf.format(cal.getTime());house.setHousestartingdate(date);house.setHouseclosingdate(cal.getTime());house.setHousestartingdatetemp(HouseStartingDate);house.setHouseclosingdatetemp(HouseClosingDate);house.setId(id);house.setHousetype(housetype);house.setHouserecommend("未设置");leaseinformationService.addHouse(house);request.setAttribute("sessce", "添加成功");return "housingadd";}/*** 分页展示房源信息*/@RequestMapping("/pagingselecthouse")public String pagingselecthouse(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,@RequestParam(required = false, defaultValue = "6") Integer pageSize) {PageHelper.startPage(pn, 10);List<leaseinformation> leaseinformation = leaseinformationService.queryAll();PageInfo<leaseinformation> p = new PageInfo<leaseinformation>(leaseinformation, 3);model.addAttribute("p", p);return "housinglist";}/*** 获取修改房源信息*/@RequestMapping("/getupdatehouse")public String getupdatehouse(int houseid, HttpServletRequest request) {List<leaseinformation> house = leaseinformationService.queryID(houseid);request.setAttribute("uphouse", house);return "houseupdate";}/*** 修改房源信息*/@RequestMapping("/updatehouse")public String updatehouse(Integer houseid, String housetype, String address, String area, String rent, String state,HttpServletRequest request) {leaseinformation house = leaseinformationService.queryID(houseid).get(0);request.removeAttribute("uphouse");house.setHouseaddress(address);house.setHousemoney(rent);house.setHousetype(housetype);house.setHousesize(Double.valueOf(area));house.setHousestate(state);house.setHouseid(houseid);leaseinformationService.updateByPrimaryKey(house);request.setAttribute("sessce", "修改成功");request.setAttribute("newhouse", house);return "houseupdate";}/*** 删除房源信息*/@RequestMapping("/delethouse")public String delethouse(int houseid, HttpServletRequest request) {if (houseid >= 0) {int id = leaseinformationService.queryID(houseid).get(0).getId();leaseinformationService.deleteByPrimaryKey(houseid);leaseimgService.deleteByPrimaryKey(id);}return "redirect:pagingselecthouse.do";}/** 推荐房屋列表*/@RequestMapping("/recommendlist")public String recommendlist(Model model, @RequestParam(value = "pn", defaultValue = "1") Integer pn,@RequestParam(required = false, defaultValue = "6") Integer pageSize) {PageHelper.startPage(pn, 10);List<leaseinformation> leaseinformation = leaseinformationService.selectAllLeasable();PageInfo<leaseinformation> p = new PageInfo<leaseinformation>(leaseinformation, 3);model.addAttribute("p", p);return "recommendhouse";}/*** 修改推荐信息*/@RequestMapping("/updaterecommend")public String updatehouse(Integer houseid) {leaseinformation house = leaseinformationService.queryID(houseid).get(0);if (house.getHouserecommend().equals("未推荐")) {house.setHouserecommend("已推荐");} else {house.setHouserecommend("未推荐");}leaseinformationService.updateByPrimaryKey(house);return "redirect:recommendlist.do?";}/*** 分页查询日程信息*/@RequestMapping("/schedulelist")public String mydailylifelist(@RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) {// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<mydailylife> mydailylifes = mydailylifeService.selectAll();PageInfo<mydailylife> page = new PageInfo<mydailylife>(mydailylifes, 3);model.addAttribute("p", page);return "schedulelist";}/*** 添加日程*/@RequestMapping("/addmydailylife")public String mydailylifeadd(mydailylife mydailylife) {mydailylifeService.insert(mydailylife);return "redirect:/admin/schedulelist.do";}/*** 修改日程*/@RequestMapping("/updatemydailylife")public String mydailylifeupdate1(Integer id, HttpServletRequest request) {mydailylife mydailylife = mydailylifeService.selectByPrimaryKey(id);request.setAttribute("mydailylife", mydailylife);return "scheduleupdate";}@RequestMapping("/toupdate")public String mydailylifeupdate2(mydailylife mydailylife) {mydailylifeService.updateByPrimaryKey(mydailylife);return "redirect:/admin/schedulelist.do";}/*** 删除日程*/@RequestMapping("/delmydailylife")public String mydailylifedel(Integer id) {mydailylifeService.deleteByPrimaryKey(id);return "redirect:/admin/schedulelist.do";}// 报障/*** 查询待处理报障*/@RequestMapping("/Adminselectrepairwait")public String selectrepairwait(String state, @RequestParam(value = "pn", defaultValue = "1") Integer pn,Model model) {state = "未处理";// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<fault> faultlist = faultService.AdminSelectStateAll(state);PageInfo<fault> page = new PageInfo<fault>(faultlist, 3);model.addAttribute("p", page);return "repairwait";}/*** 已完成全部报障*/@RequestMapping("/Adminselectrepairdone")public String selectrepairdone(String state, @RequestParam(value = "pn", defaultValue = "1") Integer pn,Model model) {state = "已处理";// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<fault> faultdone = faultService.AdminSelectStateAll(state);PageInfo<fault> page = new PageInfo<fault>(faultdone, 3);model.addAttribute("p", page);return "repairdone";}/*** 报障状态修改*/@RequestMapping("/adminrepairwait")public String updaterepairwait(Integer id) {fault fault = faultService.selectByPrimaryKey(id);String fhouseid = fault.getFhouseid();String fhouseaddress = fault.getFhouseaddress();Double fprice = fault.getFprice();Date fdate = fault.getFdate();String fcontent = fault.getFcontent();String fusername = fault.getFusername();String fuserid = fault.getFuserid();String fuserphone = fault.getFuserphone();String fstate = "已处理";fault f = new fault(fhouseid, fhouseaddress, fprice, fdate, fcontent, fusername, fuserid, fuserphone, fstate,id);faultService.updateByPrimaryKey(f);return "redirect:/admin/Adminselectrepairwait.do";}/*** 报障删除*/@RequestMapping("/adminrepairdone")public String delrepair(Integer id) {faultService.deleteByPrimaryKey(id);return "redirect:/admin/Adminselectrepairdone.do";}/*** 搜索报障*/@RequestMapping("/repairselect")public String repairselect(QueryVo vo, @RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) {// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<fault> faultdone = faultService.repairselect(vo);for (fault temp : faultdone) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String date = sdf.format(temp.getFdate());temp.setFdatetemp(date);}PageInfo<fault> page = new PageInfo<fault>(faultdone, 3);model.addAttribute("p", page);model.addAttribute("vo", vo);return "repairdone";}/*** 我要收租*/@RequestMapping("/adminrentshou")public String rentshou(@RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) {// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<userlist> userlists = userlistService.rentSelectAll();PageInfo<userlist> page = new PageInfo<userlist>(userlists, 3);model.addAttribute("rent", page);return "rentshou";}/*** 获取收租信息*/@RequestMapping("/adminrentselect")public String rentadd(String housecall, Model model) {userlist userlist = userlistService.selectUserCallWith(housecall);model.addAttribute("addrent", userlist);return "rentadd";}/*** 添加代缴租金*/@RequestMapping("/adminrentadd")public String rentaddwait(rentcollection rentcollection) {rentcollectionService.insert(rentcollection);return "redirect:/admin/adminrentshou.do";}/*** 代缴租金*/@RequestMapping("/adminrentwait")public String rentwait(String rcstate, @RequestParam(value = "pn", defaultValue = "1") Integer pn, Model model) {rcstate = "未缴纳";// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<rentcollection> rentlists = rentcollectionService.selectPaidStateAll(rcstate);PageInfo<rentcollection> page = new PageInfo<rentcollection>(rentlists, 3);model.addAttribute("rent", page);return "rentwait";}/*** 删除租金缴纳记录*/@RequestMapping("/admindelrent")public String delrent(Integer id) {rentcollectionService.deleteByPrimaryKey(id);return "redirect:/admin/adminselectPaidAll.do";}/*** 搜索查询*/@RequestMapping("/adminselectPaidAll")public String adminselectPaidAll(QueryVo vo, @RequestParam(value = "pn", defaultValue = "1") Integer pn,Model model) {// 引用PageHelper分页插件PageHelper.startPage(pn, 10);List<rentcollection> rentlists = rentcollectionService.selectPaidAll(vo);for (rentcollection temp : rentlists) {SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");String date = sdf.format(temp.getRcdate());temp.setRcdatetemp(date);if(temp.getRcpaiddate()!=null) {String Rcpaiddate = sdf.format(temp.getRcpaiddate());temp.setRcpaiddatetemp(Rcpaiddate);}}PageInfo<rentcollection> page = new PageInfo<rentcollection>(rentlists, 3);model.addAttribute("rent", page);model.addAttribute("vo", vo);return "rentdone";}/*** 查看合同*/@RequestMapping("/viewcontractadmin")public ModelAndView viewcontractadmin(String username, String userid, String houseaddress,String housestartingdatetemp, String houseclosingdatetemp, String housemoney, String userphone,String houseid, HttpServletRequest request, HttpSession session) {ModelAndView mav = new ModelAndView("rentinglist");String arraytemp[] = { username, userid, houseaddress, housestartingdatetemp, houseclosingdatetemp, housemoney,userphone, houseid };System.out.println(Arrays.toString(arraytemp));String temp = arraytemp[7] + "pdf.pdf";File filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);if (!filetemp.exists()) {System.out.println(new DocumentConversion().DocumentGeneration(arraytemp));new DocumentConversion().PdfGeneration(arraytemp[7]);filetemp = new File("C://Users/Rain/Desktop/ssm_leaseOfHouses/WebContent/contract/pdf/" + temp);}String pdf = filetemp.getName();// 放入转发参数mav.addObject("pdftemp", pdf);return mav;}
}

房屋信息控制器:

/*** 房屋信息控制器*/@Controller
@RequestMapping("/leaseinformationmvc")
public class LeaseinformationController {@AutowiredLeaseinformationService leaseinformationService;@RequestMapping("/details")public ModelAndView listCategory(@RequestParam int id){ModelAndView mav = new ModelAndView("details");List<leaseinformation> cs= leaseinformationService.allANDimg1(id);for (leaseinformation leaseinformation : cs) {System.out.println(leaseinformation.getLeaseimg().getImgroute());}// 放入转发参数mav.addObject("cs", cs);return mav;}}

支付管理控制层:

@Controller
@RequestMapping("/alipaymvc")
public class PayController {@Resourceprivate RentcollectionService rentcollectionService;@Resourceprivate HeadPortraitImgService headPortraitImgService;/*** 回调并缴纳租金*/@RequestMapping(value = "/returnUrl", method = RequestMethod.GET)public ModelAndView returnUrl(HttpServletRequest request, HttpServletResponse response,HttpSession session) throws UnsupportedEncodingException, AlipayApiException {session.setAttribute("user", AlipayConfig.usercall);headportraitimg headportraitimg = headPortraitImgService.selectheadportrait(AlipayConfig.usercall);if (headportraitimg.getHeadportraitimgaddress() != null) {session.setAttribute("headportraitimg", headportraitimg.getHeadportraitimgaddress());}ModelAndView mav = new ModelAndView("redirect:/jsp/personacenter.jsp");// 获取支付宝GET过来反馈信息Map<String, String> params = new HashMap<String, String>();Map<String, String[]> requestParams = request.getParameterMap();for (Iterator<String> iter = requestParams.keySet().iterator(); iter.hasNext();) {String name = (String) iter.next();String[] values = (String[]) requestParams.get(name);String valueStr = "";for (int i = 0; i < values.length; i++) {valueStr = (i == values.length - 1) ? valueStr + values[i] : valueStr + values[i] + ",";}// 乱码解决,这段代码在出现乱码时使用valueStr = new String(valueStr.getBytes("utf-8"), "utf-8");params.put(name, valueStr);}System.out.println(params);//查看参数都有哪些boolean signVerified = AlipaySignature.rsaCheckV1(params, AlipayConfig.alipay_public_key, AlipayConfig.charset,  AlipayConfig.sign_type); // 调用SDK验证签名//验证签名通过if(signVerified){// 商户订单号String out_trade_no = new String(request.getParameter("out_trade_no").getBytes("ISO-8859-1"), "UTF-8");// 支付宝交易号String trade_no = new String(request.getParameter("trade_no").getBytes("ISO-8859-1"), "UTF-8");// 付款金额String total_amount = new String(request.getParameter("total_amount").getBytes("ISO-8859-1"), "UTF-8");System.out.println("商户订单号="+out_trade_no);System.out.println("支付宝交易号="+trade_no);System.out.println("付款金额="+total_amount);/*** 缴纳租金*/Warning news = rentcollectionService.updateState(Integer.parseInt(AlipayConfig.rcid));System.out.println(news.getWarningContent());}else{mav.addObject("news", new Warning(2, "支付失败!"));}return mav;}} 

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

Java项目:公寓房屋出租系统(java+SSM+JSP+EasyUI+Echarts+Mysql)相关推荐

  1. 基于javaweb的公寓房屋出租系统(java+ssm+jsp+easyui+echarts+mysql)

    基于javaweb的公寓房屋出租系统(java+ssm+jsp+easyui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  2. 基于javaweb的汽车维修管理系统(java+ssm+jsp+easyui+echarts+mysql)

    基于javaweb的汽车维修管理系统(java+ssm+jsp+easyui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/id ...

  3. Java/java程序设计:房屋出租系统:要求实现:新增房源,查找房屋信息,修改房屋信息,删除房屋信息,显示所有房屋列表,退出房屋管理系统;

    Java/java程序设计:房屋出租系统: 一.前言: 一.1. 框架图 二.各类包下的代码实现: 1. 主文件(运行文件HouseApp.java) 2. 房屋类文件(House.java) 3. ...

  4. 数据库Java项目:在线租房出租房屋系统(java+springboot+maven+mysql)

    数据库Java项目:在线租房出租房屋系统(java+springboot+maven+mysql) 主要实现了客户在线租房及房东发布出租等基本操作流程的全部功能,系统分普通用户.房东.管理员等角色,除 ...

  5. 基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql)

    基于javaweb的汽车租赁系统(java+ssm+jsp+layui+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/idea/ ...

  6. 基于javaweb的养老院综合服务系统(java+ssm+jsp+jquery+echarts+mysql)

    基于javaweb的养老院综合服务系统(java+ssm+jsp+jquery+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/i ...

  7. 基于javaweb的家校通管理系统(java+ssm+jsp+bootstrap+echarts+mysql)

    基于javaweb的家校通管理系统(java+ssm+jsp+bootstrap+echarts+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclipse/ ...

  8. 基于javaweb的校园共享自行车管理系统(java+ssm+jsp+easyui+bootstrap+mysql)

    基于javaweb的校园共享自行车管理系统(java+ssm+jsp+easyui+bootstrap+mysql) 运行环境 Java≥8.MySQL≥5.7.Tomcat≥8 开发工具 eclip ...

  9. Java笔记之房屋出租系统(十一)

    目录 一.项目需求说明 二.界面说明 1.主界面 2.新增房源界面 3.查找房源界面 4.删除房源界面 5.修改房源界面 6.房源列表界面 7.退出界面 三.程序框架图设计 四.工具类的说明 五.房屋 ...

最新文章

  1. 云钉一体应用创新:音视频如何带来灵活高效的协同体验
  2. Oracle入门(十四)之PL/SQL
  3. python 把xml中含有特殊字段的部分提取出来_Python: 爬虫网页解析工具lxml.html(一)...
  4. Redis读写分离技术解析
  5. tomcat在linux服务器上部署应用
  6. 最近面试 Java 后端开发的感受!现在的环境太。。。
  7. 洛谷OJ:P3811 【模板】乘法逆元(线性递推求逆元)
  8. 联想 M7400 pro Linux下 CUPS 驱动安装
  9. 1156 Sexy Primes – PAT甲级真题
  10. 创建variation model (差异模型)
  11. amr-nb linux 编译安装包,3GPP最新版本amr-nb编解码源代码
  12. 实现微信扫描小程序码携带参数和路径跳转页面
  13. 软件集成测试采用,集成测试的组成以及流程
  14. 特效制作软件AE(After Effects)插件安装
  15. acer计算机的无线功能键,Acer笔记本Fn组合键功能说明
  16. Android入门教程学习笔记
  17. codewars题目记录
  18. 基于C语言的随机点名器设计
  19. 2021语言与智能技术竞赛:机器阅读理解任务 实验报告
  20. 2022 前端最新生态趋势——尤雨溪主题分享

热门文章

  1. 亚马逊zm html,以编程方式登录amazon
  2. 12.8金融宋江美元的操作建议
  3. Python-OpenCV之操作像素进行反色(反相)处理
  4. 什么是Subversion?
  5. 《对不队团队》第一次作业:团队亮相
  6. Raspberry Pi 树莓派连接温度传感器DS18B20
  7. NAN、QNAN、 SNAN、 IND、 INF
  8. cvm服务器虚拟机,macOS CVM服务器漏洞曝光
  9. 疫情反弹,传统企业如何做好线上营销获客?
  10. 简单带验证码的登陆网站破解