技术范围:SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app、大数据、物联网、机器学习等设计与开发。
主要内容:免费功能设计、开题报告、任务书、中期检查PPT、系统功能实现、代码编写、论文编写和辅导、论文降重、长期答辩答疑辅导、腾讯会议一对一专业讲解辅导答辩、模拟答辩演练、和理解代码逻辑思路。
🍅文末获取源码联系🍅
🍅文末获取源码联系🍅
🍅文末获取源码联系🍅
👇🏻 精彩专栏推荐订阅👇🏻 不然下次找不到哟
《课程设计专栏》
《Java专栏》
《Python专栏》
⛺️心若有所向往,何惧道阻且长
运行环境要求
Java:版本需在 8 及以上。
MySQL:版本应不低于 5.7 。
Node.js:要求版本为 14 及以上。特别提醒,未学习过 Node.js 的朋友,请谨慎选择参与前后端分离项目。
开发工具推荐
后端:eclipse、idea、myeclipse、sts 等工具,均可用于项目的配置与运行。
前端:WebStorm、VSCode、HBuilderX 等工具,都能满足前端开发需求。
适用场景
本系统适用于课程设计、大学大作业、毕业设计、项目实践练习以及学习演示等多种场景。
功能简介
这是一个基于 javaweb 技术构建的 SpringBoot 汽车租赁系统,其技术栈涵盖 java、springboot、vue、mysql 以及 maven 。
系统用户账号信息
管理员:账号为 admin ,密码 123456 。
普通用户:设有 user1、user2、user3 三个账号,密码均为 123456 。
业务员:有业务员账号 1、业务员账号 2 ,密码皆为 123456 。
租车业务流程
前台用户发起汽车租赁请求。
后台业务员对用户租赁请求进行审核,审核通过后进入下一步。
前台用户完成租车使用后,进行车辆归还操作。
后台业务员根据车辆归还情况,生成对应的租赁订单。
前台用户依据生成的租赁订单,进行费用支付。
功能页面展示
gg
部分代码展示
@RestController
@RequestMapping("/qicheleixing")
public class QicheleixingController {
@Autowired
private QicheleixingService qicheleixingService;
/**
* 后端列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,QicheleixingEntity qicheleixing,
HttpServletRequest request){
EntityWrapper<QicheleixingEntity> ew = new EntityWrapper<QicheleixingEntity>();
PageUtils page = qicheleixingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, qicheleixing), params),params));
return R.ok().put("data", page);
}
/**
* 前端列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,QicheleixingEntity qicheleixing,
HttpServletRequest request){
EntityWrapper<QicheleixingEntity> ew = new EntityWrapper<QicheleixingEntity>();
PageUtils page = qicheleixingService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, qicheleixing), params),params));
return R.ok().put("data", page);
}
/**
* 列表
*/
@RequestMapping("/lists")
public R list( QicheleixingEntity qicheleixing){
EntityWrapper<QicheleixingEntity> ew = new EntityWrapper<QicheleixingEntity>();
ew.allEq(MPUtil.allEQMapPre( qicheleixing, "qicheleixing"));
return R.ok().put("data", qicheleixingService.selectListView(ew));
}
jianchaxinxiService.updateById(jianchaxinxi);//全部更新
return R.ok();
}
/**
* 删除
*/
@RequestMapping("/delete")
public R delete(@RequestBody Long[] ids){
jianchaxinxiService.deleteBatchIds(Arrays.asList(ids));
return R.ok();
}
/**
* 提醒接口
*/
@RequestMapping("/remind/{columnName}/{type}")
public R remindCount(@PathVariable("columnName") String columnName, HttpServletRequest request,
@PathVariable("type") String type,@RequestParam Map<String, Object> map) {
map.put("column", columnName);
map.put("type", type);
if(type.equals("2")) {
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
Calendar c = Calendar.getInstance();
Date remindStartDate = null;
Date remindEndDate = null;
if(map.get("remindstart")!=null) {
Integer remindStart = Integer.parseInt(map.get("remindstart").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindStart);
remindStartDate = c.getTime();
map.put("remindstart", sdf.format(remindStartDate));
}
if(map.get("remindend")!=null) {
Integer remindEnd = Integer.parseInt(map.get("remindend").toString());
c.setTime(new Date());
c.add(Calendar.DAY_OF_MONTH,remindEnd);
remindEndDate = c.getTime();
map.put("remindend", sdf.format(remindEndDate));
}
}
Wrapper<JianchaxinxiEntity> wrapper = new EntityWrapper<JianchaxinxiEntity>();
if(map.get("remindstart")!=null) {
wrapper.ge(columnName, map.get("remindstart"));
}
if(map.get("remindend")!=null) {
wrapper.le(columnName, map.get("remindend"));
}
/**
* 后端接口
* @email
*/
@RestController
@RequestMapping("/yonghu")
public class YonghuController {
@Autowired
private YonghuService yonghuService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuzhanghao", username));
if(user==null ||!user.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(), username,"yonghu", "用户");
return R.ok().put("token", token);
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody YonghuEntity yonghu){
//ValidatorUtils.validateEntity(yonghu);
YonghuEntity user = yonghuService.selectOne(new EntityWrapper<YonghuEntity>().eq("yonghuzhanghao", yonghu.getYonghuzhanghao()));
if(user!=null) {
return R.error("注册用户已存在");
}
public class ConfigController{
@Autowired
private ConfigService configService;
/**
* 列表
*/
@RequestMapping("/page")
public R page(@RequestParam Map<String, Object> params,ConfigEntity config){
EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
PageUtils page = configService.queryPage(params);
return R.ok().put("data", page);
}
/**
* 列表
*/
@IgnoreAuth
@RequestMapping("/list")
public R list(@RequestParam Map<String, Object> params,ConfigEntity config){
EntityWrapper<ConfigEntity> ew = new EntityWrapper<ConfigEntity>();
PageUtils page = configService.queryPage(params);
return R.ok().put("data", page);
}
/**
* 信息
*/
@RequestMapping("/info/{id}")
public R info(@PathVariable("id") String id){
ConfigEntity config = configService.selectById(id);
return R.ok().put("data", config);
}
/**
* 详情
*/
@IgnoreAuth
@RequestMapping("/detail/{id}")
public R detail(@PathVariable("id") String id){
ConfigEntity config = configService.selectById(id);
return R.ok().put("data", config);
}
/**
* 根据name获取信息
*/
@RequestMapping("/info")
public R infoByName(@RequestParam String name){
ConfigEntity config = configService.selectOne(new EntityWrapper<ConfigEntity>().eq("name", "facefile"));
return R.ok().put("data", config);
}