Java项目实战II基于微信小程序的作品集展示(开发文档+数据库+源码)

目录

一、前言

二、技术介绍

三、系统实现

四、核心代码

五、源码获取


全栈码农以及毕业设计实战开发,CSDN平台Java领域新星创作者,专注于大学生项目实战开发、讲解和毕业答疑辅导。获取源码联系方式请查看文末

一、前言

随着移动互联网技术的飞速发展,人们越来越倾向于通过移动设备来浏览和分享各类信息。作品集作为个人或团队才华与成果的集中展示,其传播和分享方式也亟需与时俱进。微信小程序作为一种轻量级的应用形态,凭借其无需下载安装、即用即走的特点,成为了作品集展示的理想平台。

本作品集展示微信小程序旨在为用户提供一个便捷、美观、互动性强的作品展示空间。通过整合图片、视频、文字等多种媒体形式,用户可以全面、生动地展示自己的创作成果。同时,小程序还支持用户留言、点赞等互动功能,增强了用户之间的交流与反馈。

本文将对作品集展示微信小程序的设计思路、技术实现以及用户体验优化等方面进行详细阐述。希望通过本项目的实践,能够为其他类似作品的展示提供有益的参考和借鉴,推动作品集展示方式的不断创新与发展。

二、技术介绍

语言:Java

使用框架:Spring Boot

前端技术:JS、Vue 、css3

开发工具:IDEA/Eclipse

数据库:MySQL 5.7/8.0

数据库管理工具:phpstudy/Navicat

JDK版本:jdk1.8

Maven: apache-maven 3.8.1-bin

前端环境:Node.Js 12\14\16

三、系统实现

四、核心代码

@RequestMapping("users")
@RestController
public class UserController{
	
	@Autowired
	private UserService userService;
	
	@Autowired
	private TokenService tokenService;
 
	/**
	 * 登录
	 */
	@IgnoreAuth
	@PostMapping(value = "/login")
	public R login(String username, String password, String captcha, HttpServletRequest request) {
		UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
		if(user==null || !user.getPassword().equals(password)) {
			return R.error("账号或密码不正确");
		}
		String token = tokenService.generateToken(user.getId(),username, "users", user.getRole());
		return R.ok().put("token", token);
	}
	
	/**
	 * 注册
	 */
	@IgnoreAuth
	@PostMapping(value = "/register")
	public R register(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }
 
	/**
	 * 退出
	 */
	@GetMapping(value = "logout")
	public R logout(HttpServletRequest request) {
		request.getSession().invalidate();
		return R.ok("退出成功");
	}
	
	/**
     * 密码重置
     */
    @IgnoreAuth
	@RequestMapping(value = "/resetPass")
    public R resetPass(String username, HttpServletRequest request){
    	UserEntity user = userService.selectOne(new EntityWrapper<UserEntity>().eq("username", username));
    	if(user==null) {
    		return R.error("账号不存在");
    	}
    	user.setPassword("123456");
        userService.update(user,null);
        return R.ok("密码已重置为:123456");
    }
 
	/**
     * 列表
     */
    @RequestMapping("/list")
    public R list( UserEntity user){
       	EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>();
      	ew.allEq(MPUtil.allEQMapPre( user, "user")); 
        return R.ok().put("data", userService.selectListView(ew));
    }
 
    /**
     * 保存
     */
    @PostMapping("/save")
    public R save(@RequestBody UserEntity user){
//    	ValidatorUtils.validateEntity(user);
    	if(userService.selectOne(new EntityWrapper<UserEntity>().eq("username", user.getUsername())) !=null) {
    		return R.error("用户已存在");
    	}
        userService.insert(user);
        return R.ok();
    }
 
    /**
     * 修改
     */
    @RequestMapping("/update")
    public R update(@RequestBody UserEntity user){
//        ValidatorUtils.validateEntity(user);
        userService.updateById(user);//全部更新
        return R.ok();
    }
 
    /**
     * 删除
     */
    @RequestMapping("/delete")
    public R delete(@RequestBody Long[] ids){
        userService.deleteBatchIds(Arrays.asList(ids));
        return R.ok();
    }
}

五、源码获取

感谢大家点赞、收藏、关注、评论 啦 、获取联系方式在个人简介绿泡泡

相关推荐
向阳12183 分钟前
mybatis 缓存
java·缓存·mybatis
HEU_firejef4 分钟前
Redis——缓存预热+缓存雪崩+缓存击穿+缓存穿透
数据库·redis·缓存
上等猿10 分钟前
函数式编程&Lambda表达式
java
摇光9323 分钟前
js高阶-async与事件循环
开发语言·javascript·事件循环·宏任务·微任务
沐泽Mu27 分钟前
嵌入式学习-QT-Day09
开发语言·qt·学习
蓝染-惣右介28 分钟前
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
java·设计模式
小猿_0032 分钟前
C语言实现顺序表详解
c语言·开发语言
等一场春雨44 分钟前
springboot 3 websocket react 系统提示,选手实时数据更新监控
spring boot·websocket·react.js
KELLENSHAW1 小时前
MySQL45讲 第三十七讲 什么时候会使用内部临时表?——阅读总结
数据库·mysql
余~~185381628001 小时前
NFC 碰一碰发视频源码搭建技术详解,支持OEM
开发语言·人工智能·python·音视频