基于ssm+vue汽车售票网站源码和论文

基于ssm+vue汽车售票网站源码和论文088

 开发工具:idea 
 数据库mysql5.7+
 数据库链接工具:navcat,小海豚等
  技术:ssm

摘  要

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。针对汽车售票信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,采用汽车售票网站可以有效管理,使信息管理能够更加科学和规范。

汽车售票网站在Eclipse环境中,使用Java语言进行编码,使用Mysql创建数据表保存本系统产生的数据。系统可以提供信息显示和相应服务,其管理员负责审核会员充值,审核客户购票信息以及会员购票信息,管理客运班次与留言板,管理会员等级。客户查看客运班次,购买并支付车票,在前台联系客服,向管理员留言,在后台查看购票记录,进行会员充值。会员通过会员购票渠道进行购票,并在后台支付车票,查看购票审核情况,查看会员等级,管理收藏信息。

总之,汽车售票网站集中管理信息,有着保密性强,效率高,存储空间大,成本低等诸多优点。它可以降低信息管理成本,实现信息管理计算机化。

关键词:汽车售票网站;Java语言;Mysql

1.1 课题背景

互联网发展至今,无论是其理论还是技术都已经成熟,而且它广泛参与在社会中的方方面面。它让信息都可以通过网络传播,搭配信息管理工具可以很好地为人们提供服务。所以各行业,尤其是规模较大的企业和学校等都开始借助互联网和软件工具管理信息,传播信息,共享信息等等,以此可以增强自身实力,提高在同行业当中的竞争能力,并从各种激烈的竞争中获取发展的机会。针对汽车售票信息管理混乱,出错率高,信息安全性差,劳动强度大,费时费力等问题,经过分析和考虑,在目前的情况下,可以引进一款汽车售票网站这样的现代化管理工具,这个工具就是解决上述问题的最好的解决方案。它不仅可以实时完成信息处理,还缩短汽车售票信息管理流程,使其系统化和规范化。同时还可以减少工作量,节约汽车售票信息管理需要的人力和资金。所以汽车售票网站是信息管理环节中不可缺少的工具,它对管理者来说非常重要。

1.2 课题意义 

现如今,信息种类变得越来越多,信息的容量也变得越来越大,这就是信息时代的标志。近些年,计算机科学发展得也越来越快,而且软件开发技术也越来越成熟,因此,在生活中的各个领域,只要存在信息管理,几乎都有计算机的影子,可以说很多行业都采用计算机的方式管理信息。信息计算机化处理相比手工操作,有着保密性强,效率高,存储空间大,成本低等诸多优点。针对汽车售票信息管理,采用汽车售票网站可以有效管理,使信息管理能够更加科学和规范。

总之,在实际中使用汽车售票网站,其意义如下:

第一点:汽车售票网站的实际运用,可以帮助管理人员在短时间内完成信息处理工作;

第二点:通过系统页面的合理排版布局,可以更加直观的展示系统的内容,并且使用者可以随时阅读页面信息,随时操作系统提供的功能;

第三点:可以实现信息管理计算机化;

第四点:可以降低信息管理成本;

 

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.HuiyuanEntity;
import com.entity.view.HuiyuanView;import com.service.HuiyuanService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 会员* 后端接口* @author * @email * @date 2021-04-02 18:43:53*/
@RestController
@RequestMapping("/huiyuan")
public class HuiyuanController {@Autowiredprivate HuiyuanService huiyuanService;@Autowiredprivate TokenService tokenService;/*** 登录*/@IgnoreAuth@RequestMapping(value = "/login")public R login(String username, String password, String captcha, HttpServletRequest request) {HuiyuanEntity user = huiyuanService.selectOne(new EntityWrapper<HuiyuanEntity>().eq("yonghuming", username));if(user==null || !user.getMima().equals(password)) {return R.error("账号或密码不正确");}String token = tokenService.generateToken(user.getId(), username,"huiyuan",  "会员" );return R.ok().put("token", token);}/*** 注册*/@IgnoreAuth@RequestMapping("/register")public R register(@RequestBody HuiyuanEntity huiyuan){//ValidatorUtils.validateEntity(huiyuan);HuiyuanEntity user = huiyuanService.selectOne(new EntityWrapper<HuiyuanEntity>().eq("yonghuming", huiyuan.getYonghuming()));if(user!=null) {return R.error("注册用户已存在");}Long uId = new Date().getTime();huiyuan.setId(uId);huiyuanService.insert(huiyuan);return R.ok();}/*** 退出*/@RequestMapping("/logout")public R logout(HttpServletRequest request) {request.getSession().invalidate();return R.ok("退出成功");}/*** 获取用户的session用户信息*/@RequestMapping("/session")public R getCurrUser(HttpServletRequest request){Long id = (Long)request.getSession().getAttribute("userId");HuiyuanEntity user = huiyuanService.selectById(id);return R.ok().put("data", user);}/*** 密码重置*/@IgnoreAuth@RequestMapping(value = "/resetPass")public R resetPass(String username, HttpServletRequest request){HuiyuanEntity user = huiyuanService.selectOne(new EntityWrapper<HuiyuanEntity>().eq("yonghuming", username));if(user==null) {return R.error("账号不存在");}user.setMima("123456");huiyuanService.updateById(user);return R.ok("密码已重置为:123456");}/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,HuiyuanEntity huiyuan, HttpServletRequest request){EntityWrapper<HuiyuanEntity> ew = new EntityWrapper<HuiyuanEntity>();PageUtils page = huiyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huiyuan), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,HuiyuanEntity huiyuan, HttpServletRequest request){EntityWrapper<HuiyuanEntity> ew = new EntityWrapper<HuiyuanEntity>();PageUtils page = huiyuanService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huiyuan), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( HuiyuanEntity huiyuan){EntityWrapper<HuiyuanEntity> ew = new EntityWrapper<HuiyuanEntity>();ew.allEq(MPUtil.allEQMapPre( huiyuan, "huiyuan")); return R.ok().put("data", huiyuanService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(HuiyuanEntity huiyuan){EntityWrapper< HuiyuanEntity> ew = new EntityWrapper< HuiyuanEntity>();ew.allEq(MPUtil.allEQMapPre( huiyuan, "huiyuan")); HuiyuanView huiyuanView =  huiyuanService.selectView(ew);return R.ok("查询会员成功").put("data", huiyuanView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){HuiyuanEntity huiyuan = huiyuanService.selectById(id);return R.ok().put("data", huiyuan);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){HuiyuanEntity huiyuan = huiyuanService.selectById(id);return R.ok().put("data", huiyuan);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody HuiyuanEntity huiyuan, HttpServletRequest request){huiyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(huiyuan);HuiyuanEntity user = huiyuanService.selectOne(new EntityWrapper<HuiyuanEntity>().eq("yonghuming", huiyuan.getYonghuming()));if(user!=null) {return R.error("用户已存在");}huiyuan.setId(new Date().getTime());huiyuanService.insert(huiyuan);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody HuiyuanEntity huiyuan, HttpServletRequest request){huiyuan.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(huiyuan);HuiyuanEntity user = huiyuanService.selectOne(new EntityWrapper<HuiyuanEntity>().eq("yonghuming", huiyuan.getYonghuming()));if(user!=null) {return R.error("用户已存在");}huiyuan.setId(new Date().getTime());huiyuanService.insert(huiyuan);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody HuiyuanEntity huiyuan, HttpServletRequest request){//ValidatorUtils.validateEntity(huiyuan);huiyuanService.updateById(huiyuan);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){huiyuanService.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<HuiyuanEntity> wrapper = new EntityWrapper<HuiyuanEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}int count = huiyuanService.selectCount(wrapper);return R.ok().put("count", count);}}

 

package com.controller;import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
import java.util.Map;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Date;
import java.util.List;
import javax.servlet.http.HttpServletRequest;import com.utils.ValidatorUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.format.annotation.DateTimeFormat;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.annotation.IgnoreAuth;import com.entity.HuiyuangoupiaojiluEntity;
import com.entity.view.HuiyuangoupiaojiluView;import com.service.HuiyuangoupiaojiluService;
import com.service.TokenService;
import com.utils.PageUtils;
import com.utils.R;
import com.utils.MD5Util;
import com.utils.MPUtil;
import com.utils.CommonUtil;/*** 会员购票记录* 后端接口* @author * @email * @date 2021-04-02 18:43:53*/
@RestController
@RequestMapping("/huiyuangoupiaojilu")
public class HuiyuangoupiaojiluController {@Autowiredprivate HuiyuangoupiaojiluService huiyuangoupiaojiluService;/*** 后端列表*/@RequestMapping("/page")public R page(@RequestParam Map<String, Object> params,HuiyuangoupiaojiluEntity huiyuangoupiaojilu, HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("huiyuan")) {huiyuangoupiaojilu.setYonghuming((String)request.getSession().getAttribute("username"));}EntityWrapper<HuiyuangoupiaojiluEntity> ew = new EntityWrapper<HuiyuangoupiaojiluEntity>();PageUtils page = huiyuangoupiaojiluService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huiyuangoupiaojilu), params), params));return R.ok().put("data", page);}/*** 前端列表*/@RequestMapping("/list")public R list(@RequestParam Map<String, Object> params,HuiyuangoupiaojiluEntity huiyuangoupiaojilu, HttpServletRequest request){String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("huiyuan")) {huiyuangoupiaojilu.setYonghuming((String)request.getSession().getAttribute("username"));}EntityWrapper<HuiyuangoupiaojiluEntity> ew = new EntityWrapper<HuiyuangoupiaojiluEntity>();PageUtils page = huiyuangoupiaojiluService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.likeOrEq(ew, huiyuangoupiaojilu), params), params));return R.ok().put("data", page);}/*** 列表*/@RequestMapping("/lists")public R list( HuiyuangoupiaojiluEntity huiyuangoupiaojilu){EntityWrapper<HuiyuangoupiaojiluEntity> ew = new EntityWrapper<HuiyuangoupiaojiluEntity>();ew.allEq(MPUtil.allEQMapPre( huiyuangoupiaojilu, "huiyuangoupiaojilu")); return R.ok().put("data", huiyuangoupiaojiluService.selectListView(ew));}/*** 查询*/@RequestMapping("/query")public R query(HuiyuangoupiaojiluEntity huiyuangoupiaojilu){EntityWrapper< HuiyuangoupiaojiluEntity> ew = new EntityWrapper< HuiyuangoupiaojiluEntity>();ew.allEq(MPUtil.allEQMapPre( huiyuangoupiaojilu, "huiyuangoupiaojilu")); HuiyuangoupiaojiluView huiyuangoupiaojiluView =  huiyuangoupiaojiluService.selectView(ew);return R.ok("查询会员购票记录成功").put("data", huiyuangoupiaojiluView);}/*** 后端详情*/@RequestMapping("/info/{id}")public R info(@PathVariable("id") Long id){HuiyuangoupiaojiluEntity huiyuangoupiaojilu = huiyuangoupiaojiluService.selectById(id);return R.ok().put("data", huiyuangoupiaojilu);}/*** 前端详情*/@RequestMapping("/detail/{id}")public R detail(@PathVariable("id") Long id){HuiyuangoupiaojiluEntity huiyuangoupiaojilu = huiyuangoupiaojiluService.selectById(id);return R.ok().put("data", huiyuangoupiaojilu);}/*** 后端保存*/@RequestMapping("/save")public R save(@RequestBody HuiyuangoupiaojiluEntity huiyuangoupiaojilu, HttpServletRequest request){huiyuangoupiaojilu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(huiyuangoupiaojilu);huiyuangoupiaojiluService.insert(huiyuangoupiaojilu);return R.ok();}/*** 前端保存*/@RequestMapping("/add")public R add(@RequestBody HuiyuangoupiaojiluEntity huiyuangoupiaojilu, HttpServletRequest request){huiyuangoupiaojilu.setId(new Date().getTime()+new Double(Math.floor(Math.random()*1000)).longValue());//ValidatorUtils.validateEntity(huiyuangoupiaojilu);huiyuangoupiaojilu.setUserid((Long)request.getSession().getAttribute("userId"));huiyuangoupiaojiluService.insert(huiyuangoupiaojilu);return R.ok();}/*** 修改*/@RequestMapping("/update")public R update(@RequestBody HuiyuangoupiaojiluEntity huiyuangoupiaojilu, HttpServletRequest request){//ValidatorUtils.validateEntity(huiyuangoupiaojilu);huiyuangoupiaojiluService.updateById(huiyuangoupiaojilu);//全部更新return R.ok();}/*** 删除*/@RequestMapping("/delete")public R delete(@RequestBody Long[] ids){huiyuangoupiaojiluService.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<HuiyuangoupiaojiluEntity> wrapper = new EntityWrapper<HuiyuangoupiaojiluEntity>();if(map.get("remindstart")!=null) {wrapper.ge(columnName, map.get("remindstart"));}if(map.get("remindend")!=null) {wrapper.le(columnName, map.get("remindend"));}String tableName = request.getSession().getAttribute("tableName").toString();if(tableName.equals("huiyuan")) {wrapper.eq("yonghuming", (String)request.getSession().getAttribute("username"));}int count = huiyuangoupiaojiluService.selectCount(wrapper);return R.ok().put("count", count);}}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/111950.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

8.28作业

定义一个基类 Animal&#xff0c;其中有一个虚函数 perform()&#xff0c;用于在子类中实现不同的表演行为。 #include <iostream>using namespace std; class Animal { public:Animal() {}virtual void perform(){} }; class Monkey:public Animal { public:Monkey() {…

python自动化测试-自动化基本技术原理

1 概述 在之前的文章里面提到过&#xff1a;做自动化的首要本领就是要会 透过现象看本质 &#xff0c;落实到实际的IT工作中就是 透过界面看数据。 掌握上面的这样的本领可不是容易的事情&#xff0c;必须要有扎实的计算机理论基础&#xff0c;才能看到深层次的本质东西。 …

骨传导耳机有什么副作用? 骨传导耳机对身体有损伤吗

根据目前的科学研究和经验&#xff0c;骨传导耳机被认为是相对安全的使用设备&#xff0c;不会引起副作用&#xff0c;也不会对身体造成损伤&#xff0c;相比会对我们的耳朵听力起到一定的保护作用。 但是&#xff0c;个体差异和特殊情况可能会影响人们对骨传导耳机的感受与反应…

选择结构(个人学习笔记黑马学习)

if语句 单行if语句 用户输入分数&#xff0c;如果分数大于600&#xff0c;视为考上一本大学&#xff0c;在屏幕上输出 #include <iostream> using namespace std;int main() {int score 0;cout << "请用户输入分数" << endl;cin >> score;c…

探索OLED透明屏的优缺点:引领科技未来的革命性突破

OLED透明屏作为一项革命性的创新技术&#xff0c;其令人惊叹的透明度和柔性性能引起了全球范围内的关注。 然而&#xff0c;了解OLED透明屏的优缺点对于我们全面认识其在科技未来中的地位至关重要。 今天&#xff0c;尼伽将深入探讨OLED透明屏的优势和限制&#xff0c;并借助…

C++新经典 | C语言

目录 一、基础之查漏补缺 1.float精度问题 2.字符型数据 3.变量初值问题 4.赋值&初始化 5.头文件之<> VS " " 6.逻辑运算 7.数组 7.1 二维数组初始化 7.2 字符数组 8.字符串处理函数 8.1 strcat 8.2 strcpy 8.3 strcmp 8.4 strlen 9.函数 …

Delphi 11.3 FMX 多设备平台中使用 TGrid 实现类似 TDBGrid 的效果

Delphi Firemonkey 中 TDBGrid 这个控件已经没有了。如何实现类似这个效果呢。其实可以用TGrid 来实现。以下用 11.3 来讲解。 查询里面用到的 connection 和 query 等控件那些一般的数据库用法&#xff0c;就不做过多描述了。请参考其他资料。 方法一.通过界面配置来实现 在…

计算机竞赛 基于人工智能的图像分类算法研究与实现 - 深度学习卷积神经网络图像分类

文章目录 0 简介1 常用的分类网络介绍1.1 CNN1.2 VGG1.3 GoogleNet 2 图像分类部分代码实现2.1 环境依赖2.2 需要导入的包2.3 参数设置(路径&#xff0c;图像尺寸&#xff0c;数据集分割比例)2.4 从preprocessedFolder读取图片并返回numpy格式(便于在神经网络中训练)2.5 数据预…

Docker从认识到实践再到底层原理(一)|技术架构

前言 那么这里博主先安利一些干货满满的专栏了&#xff01; 首先是博主的高质量博客的汇总&#xff0c;这个专栏里面的博客&#xff0c;都是博主最最用心写的一部分&#xff0c;干货满满&#xff0c;希望对大家有帮助。 高质量博客汇总 然后就是博主最近最花时间的一个专栏…

Linux 进程

目录 进程与程序main()函数由谁调用&#xff1f;程序如何结束&#xff1f;何为进程&#xff1f;进程号 进程的环境变量应用程序中获取环境变量添加/删除/修改环境变量清空环境变量环境变量的作用 进程的内存布局进程的虚拟地址空间fork()创建子进程父、子进程间的文件共享系统调…

(笔记三)opencv图像基础操作

强调&#xff1a;本文只为学习记录做笔记 详细可参考opencv官网 &#xff1a;https://docs.opencv.org/4.1.1/d0/d86/tutorial_py_image_arithmetics.html &#xff08;1&#xff09;将cv2的BGR模式改为RGB模式 #!/usr/bin/env python # -*- coding:utf-8 -*- ""&q…

基于负载均衡的在线OJ实战项目

前言&#xff1a; 该篇讲述了实现基于负载均衡式的在线oj&#xff0c;即类似在线编程做题网站一样&#xff0c;文章尽可能详细讲述细节即实现&#xff0c;便于大家了解学习。 文章将采用单篇不分段形式&#xff08;ps&#xff1a;切着麻烦&#xff09;&#xff0c;附图文&#…

【JavaEE基础学习打卡00】该专栏知识大纲在这里!

目录 前言一、为什么有该教程二、教程内容介绍1.JavaEE2.JDBC3.JSP编程4.JavaBean5.Servlet6.综合案例7.拦截器、过滤器 三、学习前置要求四、课程服务总结 前言 &#x1f4dc; 本系列教程适用于 Java Web 初学者、爱好者&#xff0c;小白白。我们的天赋并不高&#xff0c;可贵…

SpringBoot Mybatis 多数据源 MySQL+Oracle+Redis

一、背景 在SpringBoot Mybatis 项目中&#xff0c;需要连接 多个数据源&#xff0c;连接多个数据库&#xff0c;需要连接一个MySQL数据库和一个Oracle数据库和一个Redis 二、依赖 pom.xml <dependencies><dependency><groupId>org.springframework.boot&l…

Mybatis与Spring集成配置

目录 具体操作 1.1.添加依赖 1.2创建spring的配置文件 1.3. 注解式开发 Aop整合pagehelper插件 1. 创建一个AOP切面 2. Around("execution(* *..*xxx.*xxx(..))") 表达式解析 前言&#xff1a; 上篇我们讲解了关于Mybatis的分页&#xff0c;今天我们讲Mybatis与…

通义千问本地化部署不调用GPU只调用CPU的检查方法

今天部署本地版通义千问的时候遇到一个问题。 启动他的cli_demo.py调用的一直都是CPU模式的。 检查cuda已经正确安装&#xff0c;后面发现是torch即PyTorch的安装问题。 我安装torch的时候&#xff0c;用的是默认指令&#xff0c;没有增加别的参数。 检测一下&#xff0c;输出…

Three.js实现模型,模型材质可拖拽效果 DragControls

Three.js提供了一个拖拽的API DragControls 用于实现模型材质拖拽效果 DragControls&#xff1a;是一个用于在Three.js中实现拖拽控制的辅助类。它简化了在Three.js中实现拖拽物体的过程。 DragControls的构造函数接受三个参数&#xff1a; objects&#xff1a;一个包含需要…

免费可商用的高清视频素材库分享~

找视频素材绝对不能错过这个6个网站&#xff0c;免费可商用&#xff0c;视频剪辑、自媒体必备&#xff0c;赶紧收藏~ 1、菜鸟图库 https://www.sucai999.com/video.html?vNTYwNDUx 菜鸟图库不仅是一个设计网站&#xff0c;它还有非常丰富的视频和音频素材&#xff0c;视频素材…

part-01 C++知识总结

一.程序的内存分区/程序模型 内存分区分别是堆、栈&#xff0c;自由存储区&#xff0c;全局/静态存储区、常量存储区和代码存储区。 栈&#xff1a;在执行函数时&#xff0c;函数内局部变量的存储单元都可以在栈上创建&#xff0c;函数执行结束时这些存储单元自动被释放。栈内存…

WordPress导航主题源码

源码说明&#xff1a; V2.0406 添加搜索自动索引百度热搜关键词 添加首页tab标签模式加载方式切换(ajax加载和普通加载)(首页设置) 修复tab标签ajax加载模式会显示未审核的网址的bug 小屏幕热搜采用水平滚动 优化子主题支持 添加文章分页 添加解决WordPress 429的服务(…