技术介绍
在微信平台,通过搜索微信小程序的名称即可打开,也可以通过微信的扫一扫打开对应的小程序。借助微信强大的用户平台,微信小程序发展迅速,与传统的APP相比,微信小程序更容易进行开发,客户体验良好,不需要通过安卓市场来进行推广即可使用,也不需要安装APP软件。
后端语言支持以下技术栈:
1 java(SSM/springboot)-idea/eclipse
2.Nodejs+Vue.js -vscode
3.python(flask/django)–pycharm/vscode
4.php(thinkphp/laravel)-hbuilderx
数据库工具:Navicat/SQLyog等都可以
前端开发框架:vue.js
数据库 mysql 版本不限
小程序端运行软件 微信开发者工具/hbuiderx
uni-app框架:使用Vue.js开发跨平台应用的前端框架,编写一套代码,可编译到Android、小程序等平台。
微信小程序指的是在微信平台中,通过API和配套的组件可以运行的APP,微信小程序不需要单独的安装。
具体实现截图
HBuilderX
HBuilder 是基于HTML、js、css的等H5语法的开发技术,使得开发者很容易上手学习,里面涉及的数据绑定基于Vue语法涉及,在开发效率上也比传统的jquery快,当然HBuilder 也保留了对jquery的支持,两种语法可以结合项目的需要,可以混合开发。该开发工具本身是由java编写完成,所以对原生项目的插件也有很好的兼容性。
mysql数据库与主流编程语言
MySQL不但可以和Java语言进行搭建系统,也可以和php、python等进行搭配。MySQL数据库可以存储多种格式的内容,常见的有文本,也可以存储整数、浮点数、日期,还可以存储二进制字节,程序中对文件或图片进行处理,转换为二进制数据后。本系统使用MySQL数据库的原因是其安全、稳定、成熟、可靠性强。
java类核心代码部分展示
@RestController
@RequestMapping("/yuangong")
public class YuangongController {
@Autowired
private YuangongService yuangongService;
@Autowired
private TokenService tokenService;
/**
* 登录
*/
@IgnoreAuth
@RequestMapping(value = "/login")
public R login(String username, String password, String captcha, HttpServletRequest request) {
YuangongEntity user = yuangongService.selectOne(new EntityWrapper<YuangongEntity>().eq("yuangonggonghao", username));
if(user==null || !user.getMima().equals(password)) {
return R.error("账号或密码不正确");
}
String token = tokenService.generateToken(user.getId(), username,"yuangong", "员工" );
return R.ok().put("token", token);
}
/**
* 密码重置
*/
@IgnoreAuth
@RequestMapping(value = "/resetPass")
public R resetPass(String username, HttpServletRequest request){
YuangongEntity user = yuangongService.selectOne(new EntityWrapper<YuangongEntity>().eq("yuangonggonghao", username));
if(user==null) {
return R.error("账号不存在");
}
user.setMima("123456");
yuangongService.updateById(user);
return R.ok("密码已重置为:123456");
}
/**
* 注册
*/
@IgnoreAuth
@RequestMapping("/register")
public R register(@RequestBody YuangongEntity yuangong){
//ValidatorUtils.validateEntity(yuangong);
YuangongEntity user = yuangongService.selectOne(new EntityWrapper<YuangongEntity>().eq("yuangonggonghao", yuangong.getYuangonggonghao()));
if(user!=null) {
return R.error("注册用户已存在");
}
Long uId = new Date().getTime();
yuangong.setId(uId);
yuangongService.insert(yuangong);
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");
YuangongEntity user = yuangongService.selectById(id);
return R.ok().put("data", user);
}
登录的业务流程的顺序是:
当你是用户时:首先是用户输入格式正确的用户号和密码,然后系统会接受你的登录信息,系统开始查询数据库并且自动匹配查找相关账号信息,判断数据是否正确,当用户输入的账户信息正确时,输入的数据会与数据库里录入的账号信息相匹配,然后就可以成功登录了。否则登录失败。成功登录的用户可以使用自己的用户权力对系统进行一定的功能上的操作。
操作可行性
本系统目前设计的理念是按照正常的前后台设计,后台管理员登录后对各种信息进行管理。在前台用户具有浏览信息的权限,各种操作所见即所得,不需要操作文档和专业的岗位培训即可胜任,所以在操作上具有可行性。
系统性能
性能方面指的是部署系统后,能否在规定的时间内响应请求或者反馈出结果。通常标准的响应时间为一秒内,这就需要考虑大数据查询时和多用户请求网页时的并发情况,通过压力测试来确保其性能正常。
互操作性是指系统是否具备在不同的操作系统环境下能否运行,以及和企业其他相关的系统是否具备数据交互的接口,所以在结合实际情况下,尽可能的涉及到相应的操作接口。
可靠性方面,一般系统都存储了大量的数据,这些数据非常重要,系统要具备数据定期备份的能力,保证系统持续性运行,并确保数据的安全。
可伸缩性指的是系统的一种弹性,随着软硬件的发展,保证系统可以很好的兼容软硬件。通过较少的改动来进行迭代换新,实现低延迟的性能。
系统测试
本系统功能比较完善,系统的整体错误率小于1%,系统功能都可以正常运行,本系统所有的链接可以在短时间内得到响应。模块之间的传递数据表现良好,通过测试发现和实际预期结果相符,达到了客户满意的效果,在实际应用中具有一定的价值。
详细视频演示
请联系我获取更详细的演示视频