基于javaweb的物业缴费管理系统(java+ssm+html+js+jsp+mysql)

运行环境

Java≥8、MySQL≥5.7、Tomcat≥8

开发工具

eclipse/idea/myeclipse/sts等均可配置运行

适用

课程设计,大作业,毕业设计,项目练习,学习演示等

功能说明

java 充值功能安全设计方案 java缴费功能_html

java 充值功能安全设计方案 java缴费功能_User_02

java 充值功能安全设计方案 java缴费功能_User_03

java 充值功能安全设计方案 java缴费功能_java_04

java 充值功能安全设计方案 java缴费功能_java 充值功能安全设计方案_05

java 充值功能安全设计方案 java缴费功能_html_06

基于javaweb+mysql的物业缴费管理系统(java+SSM+HTML+JS+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版本;

技术栈

  1. 后端:Spring+SpringMVC+Mybatis 2. 前端:HTML+CSS+JavaScript+jsp

使用说明

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

用户管理控制层:

@Controller
@RequestMapping(“/user”)
public class UserController {
@Autowired
private UserService userService;
@Autowired
private CarService carservice;
@Autowired
private RoomService roomservice;
@RequestMapping(“/welcome”)
public String welcome(HttpServletRequest request,ModelMap model){
return “login”;
/**
• 用户登录
• @param request
• @return
*/
@RequestMapping(“/login”)
public String login(HttpServletRequest request,ModelMap model){
String username = request.getParameter(“username”);
String password = request.getParameter(“password”);
if(StringUtils.isEmpty(username)||StringUtils.isEmpty(password)){
return “login”;
User user = userService.getUserByUsername(username);
HttpSession session = request.getSession();
session.setAttribute(“user”, user);
if(user.getPassword().equals(password)){
if(user.getRole().equals(0)){
return “adminindex”;
}else {
return “userindex”;
}else{
model.put(“msg”, “用户名或者密码错误!”);
return “login”;
/**
• 跳转用户注册页面
*/
@RequestMapping(value=“/getregister”)
public String getRegister(){
return “register”;
/**
• 用户注册
• @param user
• @param modelMap
• @return
*/
@RequestMapping(“/register”)
public String register(ModelMap modelMap,HttpServletRequest request){
try{
String username = request.getParameter(“username”);
String password = request.getParameter(“password”);
String realname = request.getParameter(“realname”);
String idCardNum = request.getParameter(“idCardNum”);
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-mm-dd HH:mm:ss”);
String settleTime = request.getParameter(“settleTime”);
Date date = sdf.parse(settleTime);
String sex = request.getParameter(“sex”);
String address = request.getParameter(“address”);
User user = new User();
user.setUserName(username);
user.setPassword(password);
user.setRealName(realname);
user.setIdCardNum(idCardNum);
user.setSettleTime(date);
user.setSex(sex);
user.setAddress(address);
userService.addUser(user);
modelMap.put(“msg”, “注册成功,请登录!”);
return “login”;
}catch(Exception e){
modelMap.put(“msg”, “注册失败!”);
e.printStackTrace();
return “register”;
/**
• 跳转更新用户页面
*/
@RequestMapping(value=“/getupdateUser”)
public String getupdateUser(HttpServletRequest request,User user,ModelMap model){
HttpSession session = request.getSession();
user = (User) session.getAttribute(“user”);
int id = user.getId();
user = userService.getUserById(id);
model.put(“user”, user);
return “updateUser”;
/**
• 更新用户
• @param user
• @return
• @throws ParseException
*/
@RequestMapping(“/updateUser”)
public String updateUser(HttpServletRequest request,User user,ModelMap model,
HttpSession session) throws ParseException{
user = (User) session.getAttribute(“user”);
int id = user.getId();
String userName = request.getParameter(“username”);
String companyName = request.getParameter(“companyname”);
String phone = request.getParameter(“phone”);
String email = request.getParameter(“email”);
/*SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss E”);
String outmigrationTime = request.getParameter(“outmigrationTime”);
Date date = sdf.parse(outmigrationTime);*/
String relationship = request.getParameter(“relationship”);
user.setId(id);
user.setUserName(userName);
user.setCompanyName(companyName);
user.setPhone(phone);
user.setEmail(email);
/user.setOutmigrationTime(date);/
user.setRelationship(relationship);
userService.updateUser(user);
//人
user = userService.getUserByUsername(userName);
model.put(“user”, user);
//车
Car car = carservice.getCarById(id);
model.put(“car”, car);
//房
Room room = roomservice.getRoomByUserId(id);
model.put(“room”, room);
return “userinfo”;
/**
• 跳转修改密码页面
*/
@RequestMapping(value=“/getupdatePassword”)
public String getUpdatePassword(HttpServletRequest request,User user,
ModelMap model){
HttpSession session = request.getSession();
user = (User) session.getAttribute(“user”);
String username = user.getUserName();
model.put(“username”, username);
return “pass”;
/**
• 更新密码
• @param user
• @return
*/
@RequestMapping(“/updatePassword”)
public String updatePassword(HttpServletRequest request,ModelMap modelMap){
HttpSession session = request.getSession();
User user1=(User) session.getAttribute(“user”);
String username = user1.getUserName();
String mpass = request.getParameter(“mpass”);
String newpass = request.getParameter(“newpass”);
User user2 = userService.getUserByUsername(username);
if (user2.getPassword().equals(mpass)) {
User user3 = new User();
user3.setUserName(username);
user3.setPassword(newpass);
userService.updatePassword(user3);
modelMap.put(“msg”, “更新成功!”);
//人
User user = userService.getUserByUsername(username);
modelMap.put(“user”, user);
//车
Car car = carservice.getCarById(user2.getId());
modelMap.put(“car”, car);
//房
Room room = roomservice.getRoomByUserId(user2.getId());
modelMap.put(“room”, room);
return “user”;
}else{
modelMap.put(“msg”, “原密码输入错误!”);
return “pass”;
/**
• 分页查询用户列表(未做)
• @param page
• @return
*/
@RequestMapping(“/getAllUserByPage”)
public String getAllUserByPage(HttpServletRequest request,ModelMap model){
List userList = userService.getAllUsers();
model.put(“userList”, userList);
for (User user : userList) {
Room room = roomservice.getRoomByUserId(user.getId());
if(room==null) {
continue;
user.setRelationship(room.getBuildingNum()+“号楼”+room.getUnitNum()+“单元”+room.getRoomNum());
return “adminUserAll”;
/**
• 获取单个用户信息
• @param request
• @return
*/
@RequestMapping(“/getUserById”)
public String getUserById(HttpServletRequest request,ModelMap model,HttpSession session){
User user1 = (User) session.getAttribute(“user”);
int id = user1.getId();
User user = userService.getUserById(id);
model.addAttribute(“user”, user);
return “user”;
/**
• 首页
• @param request
• @return
*/
@RequestMapping(value=“/getWelcome”)
public String Welcome(HttpServletRequest request){
return “user”;

用户反馈管理控制层:

@Controller
@RequestMapping(“/userrepair”)
public class UserrepairController {
@Autowired
private UserrepairService userrepairService ;
String msg =“暂无维修内容!”;
/**
• 查看所有业主待维修信息–admin
• @param request
• @param model
• @return
*/
@RequestMapping(value=“/alluserrepair”)
public String getAllUserrepair(HttpServletRequest request,ModelMap model){
List userrepair1 = userrepairService.getUserrepairByStatus(1);
if(userrepair1 != null && userrepair1.size()>0){
model.put(“userrepair1”, userrepair1);
}else{
model.put(“msg”, msg);
return “adminUserrepair”;
/**
• 跳转–业主添加维修–user
*/
@RequestMapping(value=“/adduserrepair”)
public String getAdduserrepair(HttpServletRequest request,ModelMap model,
HttpSession session){
User user = (User) session.getAttribute(“user”);
model.put(“user”, user);
List userrepair1 = userrepairService.getUserrepairById(user.getId(),1);
if(userrepair1 != null && userrepair1.size()>0){
model.put(“userrepair1”, userrepair1);
}else{
model.put(“msg”, msg);
return “userUserrepair”;
/**
• 业主添加维修信息–user
• @param request
• @param model
• @return
• @throws ParseException
*/
@RequestMapping(value=“/addUserrepair”)
public String getAddUserrepair(HttpServletRequest request,
ModelMap model) throws ParseException{
int userId = Integer.parseInt(request.getParameter(“userId”));
String realName = request.getParameter(“realName”);
String phone = request.getParameter(“phone”);
SimpleDateFormat sdf = new SimpleDateFormat(“yyyy-mm-dd HH:mm:ss”);
String date = request.getParameter(“bookTime”);
Date bookTime = sdf.parse(date);
String comments = request.getParameter(“comments”);
Userrepair userrepair = new Userrepair();
userrepair.setUserId(userId);
userrepair.setRealName(realName);
userrepair.setPhone(phone);
userrepair.setBookTime(bookTime);
userrepair.setComments(comments);
userrepair.setStatus(1);
userrepairService.addUserrepair(userrepair);
List userrepair1 = userrepairService.getUserrepairById(userId,1);
if(userrepair1 != null && userrepair1.size()>0){
model.put(“userrepair1”, userrepair1);
List userrepair0 = userrepairService.getUserrepairById(userId,0);
if(userrepair0 != null && userrepair0.size()>0){
model.put(“userrepair0”, userrepair0);
return “userUserrepair”;
/**
• 物业修改维修信息–admin
• @param request
• @param model
• @return
*/
@RequestMapping(value=“/updateUserrepair”)
public String getUpdateUserrepair(HttpServletRequest request,ModelMap model){
int id = Integer.parseInt(request.getParameter(“id”));
BigDecimal serviceCost = new BigDecimal(request.getParameter(“serviceCost”));
BigDecimal equipmentCost = new BigDecimal(request.getParameter(“equipmentCost”));
BigDecimal allCost = serviceCost.add(equipmentCost);
String replyComments = request.getParameter(“replyComments”);
Userrepair userrepair = new Userrepair();
userrepair.setId(id);
userrepair.setServiceCost(serviceCost);
userrepair.setEquipmentCost(equipmentCost);
userrepair.setAllCost(allCost);
userrepair.setReplyComments(replyComments);
userrepair.setAgreement(1);
userrepair.setStatus(0);
userrepairService.updateUserrepair(userrepair);
List userrepair0 = userrepairService.getUserrepairByStatus(0);
if(userrepair0 != null && userrepair0.size()>0){
model.put(“userrepair0”, userrepair0);
List userrepair1 = userrepairService.getUserrepairByStatus(1);
if(userrepair1 != null && userrepair1.size()>0){
model.put(“userrepair1”, userrepair1);
return “adminUserrepair”;

公告管理控制层:

@Controller
public class MessageController {
@Autowired
private MessageService messService;
@Autowired
private OwnerService ownerService;
private SimpleDateFormat cx = new SimpleDateFormat(“yyyy-MM-dd”);
/**
• @category 未阅读的通知
• @param model
• @param request
• @return
*/
@RequestMapping(“/unread.action”)
public String unread(Model model,HttpServletRequest request) {
System.out.println(“我进来了”);
HttpSession session = request.getSession();
Owner owner=(Owner)session.getAttribute(“currentOwnerr”);
List list1=messService.selectByOid(owner.getOid());
List list=new ArrayList();
for (int i = 0; i < list1.size(); i++) {
if(list1.get(i).getStatus().equals(“未阅读”)) {
list.add(list1.get(i));
if(list.size()<1) {
model.addAttribute(“nomess”, “暂无通知”);
model.addAttribute(“type”, “未阅读”);
model.addAttribute(“readlist”, list);
return “messinfo”;
/**
• @category 已阅读的通知
• @param model
• @param request
• @return
*/
@RequestMapping(“/readed.action”)
public String readed(Model model,HttpServletRequest request) {
System.out.println(“我进来了”);
HttpSession session = request.getSession();
Owner owner=(Owner)session.getAttribute(“currentOwnerr”);
List list1=messService.selectByOid(owner.getOid());
List list=new ArrayList();
for (int i = 0; i < list1.size(); i++) {
if(list1.get(i).getStatus().equals(“已读”)) {
list.add(list1.get(i));
model.addAttribute(“type”, “已读”);
model.addAttribute(“readlist”, list);
model.addAttribute(“nomess”, " ");
return “messinfo”;
/**
• @category 单个已读操作
• @param messid
• @param model
• @return
*/
@RequestMapping(“/doread.action”)
public String doread(int messid,Model model) {
Message mess=new Message();
mess.setMessid(messid);
mess.setStatus(“已读”);
messService.updateByPrimaryKeySelective(mess);
return “redirect:unread.action”;
/**
• @category ajax控制器用于动态传递业主通知数量
• @param request
• @return
*/
@RequestMapping(“/showMessNum”)
public @ResponseBody List showMessNum(HttpServletRequest request) {
//System.out.println(“json”);
HttpSession session = request.getSession();
Owner owner=(Owner)session.getAttribute(“currentOwnerr”);
//System.out.println(owner.getOname());
List list1=messService.selectByOid(owner.getOid());
List list=new ArrayList();
for (int i = 0; i < list1.size(); i++) {
if(list1.get(i).getStatus().equals(“未阅读”)) {
list.add(list1.get(i));
String a= “我的通知”+list.size();
String b=“未读”+list.size();
List list2=new ArrayList<>();
list2.add(a);
list2.add(b);
return list2;
/**
• @category 通知一键已读控制器
• @param request
• @param model
• @return
*/
@RequestMapping(“/allread.action”)
public String allread(HttpServletRequest request,Model model) {
HttpSession session = request.getSession();
Owner owner=(Owner)session.getAttribute(“currentOwnerr”);
messService.updateByOid(owner.getOid());
model.addAttribute(“nomess”, “暂无通知”);
model.addAttribute(“readlist”, null);
return “messinfo”;
/**
• @category 给业主发送催款通知
• @param oid
• @return
*/
@RequestMapping(“/cuikuan.action”)
public @ResponseBody int cuikuan(int oid) {
Message mess=new Message();
mess.setMessinfo(“请您及时缴纳相关费用,详情请到我的账单查看”);
mess.setOid(oid);
mess.setStatus(“未阅读”);
Date date=new Date();
String time=cx.format(date);
mess.setMesstime(time);
messService.insert(mess);
return oid;
@RequestMapping(“/sendmess”)
public @ResponseBody List sendmess(HttpServletRequest request,String message,Integer oid){
//System.out.println(oid);
//System.out.println(message);
String oname=ownerService.findById(oid).getOname();
Date date=new Date();
String timeString=cx.format(date);
Message mess=new Message();
mess.setMessinfo(message);
mess.setOid(oid);
mess.setStatus(“未阅读”);
mess.setMesstime(timeString);
messService.insert(mess);
List list=new ArrayList<>();
list.add(oname);
return list;

java 充值功能安全设计方案 java缴费功能_java_07