隨著時(shí)代的發(fā)展,我國的國民經(jīng)濟(jì)一直在穩(wěn)步的提升,共享單車的是用來一直在不斷的攀升,為了能夠更加方便快捷的管理共享單車,需要開發(fā)一套利用計(jì)算機(jī)進(jìn)行管理的JSP共享單車管理系統(tǒng)。
本項(xiàng)目利用軟件工程原理,采用面向?qū)ο蟮木幊谭椒?#xff0c;其開發(fā)主要包括后臺(tái)數(shù)據(jù)庫的建立、維護(hù)以及前端應(yīng)用程序開發(fā),實(shí)現(xiàn)了共享單車管理的自動(dòng)化和信息化以及圖形化,本系統(tǒng)主要實(shí)現(xiàn)了用戶登錄,用戶信息管理,車輛信息管理,報(bào)修信息管理,租借信息管理,修改密碼等功能。
本系統(tǒng)實(shí)際運(yùn)用為開發(fā)背景,運(yùn)用軟件工程原理和開發(fā)方法,采用JSP+Servlet技術(shù)和MySQL數(shù)據(jù)庫構(gòu)建一個(gè)基于B/S模式的共享單車管理系統(tǒng)。通過本系統(tǒng)用戶可以進(jìn)行在線租借共享單車,管理人員可以更加方便快捷的對(duì)共享單車和租借以及報(bào)修信息進(jìn)行管理。
隨著社會(huì)科技的發(fā)展進(jìn)步,機(jī)動(dòng)車已經(jīng)成為大眾消費(fèi)品,發(fā)展初期較少的機(jī)動(dòng)車方便了人們的交流,給人們帶來了極大的便利,但隨著數(shù)量的持續(xù)增長,依據(jù)辯證法之對(duì)立統(tǒng)一及質(zhì)量互變兩個(gè)哲學(xué)規(guī)律,我們可以清晰的得到私家車的激增已經(jīng)從給人們帶來方便轉(zhuǎn)化為給人們?cè)斐衫_:環(huán)境污染,能源短缺,交通擁堵,交通噪音,停車?yán)_。這些問題或多或少都與機(jī)動(dòng)車交通直接或間接相關(guān)。日益尖銳的問題已經(jīng)不得不讓人們引起注意了。為了應(yīng)對(duì)這些困擾人們?nèi)粘I畹膯栴},一個(gè)新的概念已經(jīng)被提出:共享單車。早在建國初期,我國是自行車大國,自行車承擔(dān)了主要的出行作用,盡管其優(yōu)點(diǎn)眾多:無需燃油,不產(chǎn)污染,沒有擁堵;但是其缺點(diǎn)也十分突出:消耗體力,短距出行,時(shí)間較長。為了提高工效,加之工業(yè)革命的推動(dòng),自行車逐漸被機(jī)動(dòng)車所取代。但是如今的現(xiàn)狀,如何破解環(huán)境污染難題,踐行可持續(xù)發(fā)展理念,共享單車管理系統(tǒng)具有重要的現(xiàn)實(shí)意義。
本系統(tǒng)主要是為了共享單車管理進(jìn)行服務(wù)的,本系統(tǒng)分為管理員和用戶兩部分,其中用戶可以進(jìn)行共享單車的查詢,在查詢到自己所需的單車之后可以在線進(jìn)行租借,不需要騎行的時(shí)候進(jìn)行歸還,系統(tǒng)會(huì)根據(jù)用戶租借和歸還的時(shí)間差自動(dòng)的計(jì)算費(fèi)用信息,此外用戶還可以對(duì)有故障的共享單車進(jìn)行報(bào)修;管理員在登錄之后可以管理用戶信息,單車信息,用戶的租借信息和對(duì)用戶的報(bào)修信息進(jìn)行處理等功能。
共享單車作為一種可持續(xù)型公共交通工具有著明顯的優(yōu)勢:無噪音、零排放、靈活易存取、與其他公共交通工具無縫銜接。這一系列的優(yōu)點(diǎn)令其在解決城市交通擁堵,緩解環(huán)境污染,降低能源消耗,解決出行最后一公里等方面的能力得到人們的廣泛認(rèn)可。如何解決科學(xué)發(fā)展所帶來的各種環(huán)境問題,是新形勢下的一個(gè)重要課題。本文系選題的目的正是研究利用共享單車管理系統(tǒng),綠色解決居民最后一公里問題,還民眾清山綠水,健康生態(tài)環(huán)境。
package com.controller;import java.io.File;
import java.io.IOException;import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.io.PrintWriter;import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.multipart.MultipartFile;import com.entity.Allusers;
//import com.chengxusheji.po.News;
import com.server.AllusersServer;
import com.util.PageBean;
import net.sf.json.JSONObject;@Controller
public class AllusersController {@Resourceprivate AllusersServer allusersService;// @RequestMapping("showAllusers.do")public String showAllusers(int id,ModelMap map,HttpSession session){/* Map<String,Object> bmap=new HashMap<String,Object>();bmap.put("uid", id);*/// map.put("blist", allusersService.getAll(bmap));map.put("allusers", allusersService.getById(id));return "read";}@RequestMapping("addAllusers.do")public String addAllusers(HttpServletRequest request,Allusers allusers,HttpSession session){Timestamp time=new Timestamp(System.currentTimeMillis());//Users u=(Users)session.getAttribute("user");/*if(u==null||u.equals("")){return "redirect:showIndex.do";}else{*///bbs.setUid(u.getId());/*bbs.setPubtime(time.toString());bbs.setIsdel("1");*/allusers.setAddtime(time.toString().substring(0, 19));allusersService.add(allusers);return "redirect:allusersList.do";/*}*/}// 處理編輯@RequestMapping("doUpdateAllusers.do")public String doUpdateAllusers(int id,ModelMap map,Allusers allusers){allusers=allusersService.getById(id);map.put("allusers", allusers);return "allusers_updt";}
// @RequestMapping("updateAllusers.do")public String updateAllusers(int id,ModelMap map,Allusers allusers){allusersService.update(allusers);return "redirect:allusersList.do";}
// 所有List
// @RequestMapping("allusersList.do")
// public String allusersList(ModelMap map,HttpSession session){
// map.put("list", allusersService.getAll(null));
// map.put("clist", allusersService.getAll(null));
// return "allusers";
// }
// 分頁查詢@RequestMapping("allusersList.do")public String goodList(@RequestParam(value="page",required=false)String page,ModelMap map,HttpSession session,Allusers allusers, String username, String pwd, String cx){/*if(session.getAttribute("user")==null){return "login";}*/if(page==null||page.equals("")){page="1";}PageBean pageBean=new PageBean(Integer.parseInt(page), 15);Map<String, Object> pmap=new HashMap<String,Object>();pmap.put("pageno", pageBean.getStart());pmap.put("pageSize", 15);Map<String, Object> bmap=new HashMap<String, Object>();Map<String,Object> cmap=new HashMap<String,Object>();/*pmap.put("uid", ((Users)session.getAttribute("user")).getId());bmap.put("uid", ((Users)session.getAttribute("user")).getId());*/if(username==null||username.equals("")){pmap.put("username", null);cmap.put("username", null);}else{pmap.put("username", username);cmap.put("username", username);}if(pwd==null||pwd.equals("")){pmap.put("pwd", null);cmap.put("pwd", null);}else{pmap.put("pwd", pwd);cmap.put("pwd", pwd);}if(cx==null||cx.equals("")){pmap.put("cx", null);cmap.put("cx", null);}else{pmap.put("cx", cx);cmap.put("cx", cx);}int total=allusersService.getCount(bmap);pageBean.setTotal(total);List<Allusers> list=allusersService.getByPage(pmap);map.put("page", pageBean);map.put("list", list);session.setAttribute("p", 1);return "allusers_list";}
// 分頁模糊查詢@RequestMapping("vagueAllusersList.do")public String vagueAllusersList(@RequestParam(value="page",required=false)String page,ModelMap map,HttpSession session){if(page==null||page.equals("")){page="1";}PageBean pageBean=new PageBean(Integer.parseInt(page),PageBean.PAGESIZE);Map<String, Object> pmap=new HashMap<String,Object>();pmap.put("pageno", pageBean.getStart());pmap.put("pageSize", pageBean.getPageSize());Map<String, Object> bmap=new HashMap<String, Object>();/*pmap.put("uid", ((Users)session.getAttribute("user")).getId());bmap.put("uid", ((Users)session.getAttribute("user")).getId());*/int total=allusersService.getCount(bmap);pageBean.setTotal(total);List<Allusers> list=allusersService.getByPage(pmap);map.put("page", pageBean);map.put("list", list);session.setAttribute("p", 2);return "queryallusers";}@RequestMapping("deleteAllusers.do")public String deleteAllusers(int id){allusersService.delete(id);return "redirect:allusersList.do";}@RequestMapping("quchongAllusers.do")public void quchongAllusers(Allusers allusers,HttpServletResponse response){Map<String,Object> map=new HashMap<String,Object>();map.put("username", allusers.getUsername());System.out.println("username==="+allusers.getUsername());System.out.println("username222==="+allusersService.quchongAllusers(map));JSONObject obj=new JSONObject();if(allusersService.quchongAllusers(map)!=null){obj.put("info", "ng");}else{obj.put("info", "username可以用!");}response.setContentType("text/html;charset=utf-8");PrintWriter out=null;try {out=response.getWriter();out.print(obj);out.flush();} catch (IOException e) {e.printStackTrace();}finally{out.close();}}@RequestMapping("Alluserslogin.do")public String checkAllusersLogin(Allusers allusers, HttpSession session) {Map<String,Object> u=new HashMap<String,Object>();System.out.println("name===" + allusers.getUsername());u.put("username",allusers.getUsername());//u.put("utype", "用戶");//Md5.MD5HexEncode(user.getPassword())u.put("pwd",allusers.getPwd());allusers = allusersService.allusersLogin(u);if (allusers != null) {session.setAttribute("username", allusers);System.out.println("username=" + allusers);session.removeAttribute("suc");return "redirect:index.do";} else {System.out.println("usernafwfwwme=");session.setAttribute("suc", "登錄失敗!用戶名或密碼錯(cuò)誤!");return "login";}}
}
目錄
1 緒論 1
1.1課題背景 1
1.2課題研究現(xiàn)狀 1
1.3初步設(shè)計(jì)方法與實(shí)施方案 2
1.4本文研究內(nèi)容 2
2 系統(tǒng)開發(fā)環(huán)境 4
2.1 使用工具簡介 4
2.2 環(huán)境配置 4
2.3 B/S結(jié)構(gòu)簡介 4
2.4 MySQL數(shù)據(jù)庫 5
2.5 框架介紹 5
3 系統(tǒng)分析 6
3.1系統(tǒng)可行性分析 6
3.1.1經(jīng)濟(jì)可行性 6
3.1.2技術(shù)可行性 6
3.1.3運(yùn)行可行性 6
3.2系統(tǒng)現(xiàn)狀分析 6
3.3功能需求分析 7
3.4系統(tǒng)設(shè)計(jì)規(guī)則與運(yùn)行環(huán)境 8
3.5系統(tǒng)流程分析 8
3.5.1操作流程 8
3.5.2添加信息流程 9
3.5.3刪除信息流程 10
4 系統(tǒng)設(shè)計(jì) 11
4.1系統(tǒng)設(shè)計(jì)主要功能 11
4.2數(shù)據(jù)庫設(shè)計(jì) 11
4.2.1數(shù)據(jù)庫設(shè)計(jì)規(guī)范 11
4.2.2 E/R圖 11
4.2.3數(shù)據(jù)表 12
5 系統(tǒng)實(shí)現(xiàn) 25
5.1系統(tǒng)功能模塊 25
5.2后臺(tái)模塊 27
5.2.1管理員功能模塊 27
5.2.2用戶功能模塊 30
6 系統(tǒng)測試 33
6.1功能測試 33
6.2可用性測試 33
6.3性能測試 34
6.4測試結(jié)果分析 34
7結(jié) 論 35
參考文獻(xiàn) 36
致 謝 37
總結(jié)
以上是生活随笔為你收集整理的Java+MySQL共享单车管理系统的设计与实现的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。