The development of computer information technology has promoted the process of bank information management, and with the concept of Internet: the concept of Internet, all kinds of Internet: software also came into being. In traditional management, various information management is difficult, the speed of dissemination is slow, and it takes a long time for statistical verification, which cannot meet the needs of modern development. It regulates the operation management, saves manpower and material resources, realizes the automatic management of the bank, and brings opportunities for the development of the bank.
environmental needs
1. Operating environment: WeChat developer tools, preferably java jdk 1.8, which is currently the most stable JDK and the most used JDK version.
2.IDE environment: IDEA, Eclipse can be. IDEA is recommended;
3.tomcat environment: Tomcat7/Tomcat8/Tomcat9 versions are available
4. Hardware environment: Windows 7/8/10 with more than 1G memory; or Mac OS;
5. Database: MySql version 5.7 or above;
6. Whether Maven project: yes;
technology stack
Backend: Spring+SpringMVC+Mybatis+Springboot
Mini Program: uni-app+WeChat developer tools mixed development mode
The micro-banking system of Nantong Rural Commercial Bank based on WeChat applet is based on the development of relevant application software at home and abroad, combined with the current mainstream technology, to design and develop a JAVA-based software system, which is simple and fast to operate. The system data is stored in the MySQL database, and the WeChat applet interface uses the WeChat applet, combined with JS dynamic effects, to realize the compatible display of the interface. This paper first expounds the development background of the Nantong Rural Commercial Bank micro-banking system based on the WeChat applet, and then describes the focus of this paper. And design the system according to the demand analysis, finally realize the coding through JAVA, release the system after passing the test, and finally summarize the project development.
The home page is in the index page, which includes the header file header. Introduce the relevant JS and CSS styles in the home page first. Call the database operation method in the corresponding module, assign the read result to the RS data collection object, and display the information through a loop.
1; applet
The micro-banking system of Nantong Rural Commercial Bank based on the WeChat applet includes two parts, the information query and business processing of the WeChat applet, and the management of the background information.
The WeChat applet accesses the system through the WeChat terminal. Unregistered users must first register and then enter the home page, including the latest information, wealth management products, recommendation of bank outlets, and personal center.
Click Member Registration to fill in the account number, password and personal information, and then register, and the administrator can log in after reviewing the registration information. The logged-in user can view the personal account and transfer funds in and out.
2; back end
The administrator needs to log in to manage, including user management, account fund management, transfer-in fund management, transfer-out fund management, wealth management product management, bank outlet management, and system management.
/** * Login related */ @RequestMapping("users") @RestController public class UserController{ @Autowired private UserService userService; @Autowired private TokenService tokenService; /** * Log in */ @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("Incorrect account or password"); } String token = tokenService.generateToken(user.getId(),username, "users", user.getRole()); return R.ok().put("token", token); } /** * register */ @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("user already exists"); } userService.insert(user); return R.ok(); } /** * quit */ @GetMapping(value = "logout") public R logout(HttpServletRequest request) { request.getSession().invalidate(); return R.ok("exit successfully"); } /** * reset Password */ @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("Account does not exist"); } user.setPassword("123456"); userService.update(user,null); return R.ok("Password reset to: 123456"); } /** * list */ @RequestMapping("/page") public R page(@RequestParam Map<String, Object> params,UserEntity user){ EntityWrapper<UserEntity> ew = new EntityWrapper<UserEntity>(); PageUtils page = userService.queryPage(params, MPUtil.sort(MPUtil.between(MPUtil.allLike(ew, user), params), params)); return R.ok().put("data", page); } /** * list */ @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)); } /** * information */ @RequestMapping("/info/{id}") public R info(@PathVariable("id") String id){ UserEntity user = userService.selectById(id); return R.ok().put("data", user); } /** * Get the user's session user information */ @RequestMapping("/session") public R getCurrUser(HttpServletRequest request){ Long id = (Long)request.getSession().getAttribute("userId"); UserEntity user = userService.selectById(id); return R.ok().put("data", user); } /** * save */ @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("user already exists"); } userService.insert(user); return R.ok(); } /** * Revise */ @RequestMapping("/update") public R update(@RequestBody UserEntity user){ // ValidatorUtils.validateEntity(user); userService.updateById(user);//Update all return R.ok(); } /** * delete */ @RequestMapping("/delete") public R delete(@RequestBody Long[] ids){ userService.deleteBatchIds(Arrays.asList(ids)); return R.ok(); } }
Table of contents
1 Introduction 1
1.1 Subject Background 1
1.2 Current status of subject research 1
1.3 Preliminary design method and implementation plan 2
1.4 The research content of this paper 2
2 System Development Environment 4
2.1 Introduction to using tools 4
2.2 Environment configuration 4
2.3 Introduction to B/S structure 4
2.4 MySQL database 5
2.5 Introduction to the framework 5
3 System Analysis 6
3.1 System Feasibility Analysis 6
3.1.1 Economic feasibility 6
3.1.2 Technical feasibility 6
3.1.3 Operational Feasibility 6
3.2 System Status Analysis 6
3.3 Functional Requirements Analysis 7
3.4 System Design Rules and Operating Environment 8
3.5 System flow analysis 8
3.5.1 Operation process 8
3.5.2 Adding information flow 9
3.5.3 Delete information flow 10
4 System Design 11
4.1 Main functions of system design 11
4.2 Database Design 11
4.2.1 Database Design Specifications 11
4.2.2 E/R diagram 11
4.2.3 Data Sheet 12
5 System Implementation 25
5.1 System function module 25
5.2 Background module 27
5.2.1 Administrator function module 27
5.2.2 User Function Module 30
6 System Test 33
6.1 Functional testing 33
6.2 Usability Testing 33
6.3 Performance testing 34
6.4 Analysis of test results 34
7 Conclusion 35
References 36
Thanks 37