ssm+vue实现前后端分离的登录注册

您所在的位置:网站首页 前后端分离登录注册实现 ssm+vue实现前后端分离的登录注册

ssm+vue实现前后端分离的登录注册

2024-07-14 01:34| 来源: 网络整理| 查看: 265

技术栈:vue2.0+ssm

流程图:

前端:

1.新建vue项目

 vue init webpack 项目名

2.安装所需的依赖

//安装element组件库 npm i element-ui -S //在main.js中引入element组件库 import ElementUI from 'element-ui'; import 'element-ui/lib/theme-chalk/index.css'; Vue.use(ElementUI); //安装 scss 和 scss-loader npm install scss-loader scss --save // 安装 node-sass 和 sass-loader npm install [email protected] --save npm install [email protected] --save 在 build 文件夹目录下 webpack.base.conf.js 文件中,找到 rules 添加以下代码 { test: /\.scss$/, loaders: ['style', 'css', 'sass'] },

3.设计并编写页面

4.接口对接

首先解决跨域问题

proxyTable: { '/api': { target: 'http://localhost:8080/', //源地址 changeOrigin: true, //改变源 pathRewrite: { '^/api': 'http://localhost:8080/' //路径重写 } } },

安装axios

import axios from "axios"; //利用vue的原型属性,方便调用 Vue.prototype.$axios = axios;

对于axios的封装参考以前写的另外一篇博客

利用原型链和闭包进行封装自定义的js模板:

vue中封装axios的请求方法_Famiglistimo-run的博客-CSDN博客

然后可以开始进行接口对接

后端:

1.数据库设计及建表

create table user( username varchar(32) not null primary key, password int not null, phone int not null );

2.新建后台项目,基本环境搭建

新建基本框架结构 pojo dao service controller

applicationContext.xml  //整合资源 mybatis-config.xml      //映射

3.Mybatis层编写

数据库配置文件 database.properties jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8 jdbc.username=root jdbc.password=root 编写核心配置文件,mybatis-config.xml dao层编写用户类 package pojo; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; @Data//提供get,set,toString方法 @AllArgsConstructor @NoArgsConstructor public class user { private String username; private int password; private int phone; } 编写usermapper package dao; import pojo.user; import java.util.List; public interface userMapper { //增加一个User int addUser(user user); //根据id删除一个User int deleteUserByUserName(String userName); //更新User int updateUser( user user); //根据id查询,返回一个User user queryUserByUserName(String userName); //查询全部User,返回list集合 List queryAllUser(); } usermapper.xml的编写 insert into ssmbuild.user(username,password,phone) values (#{username}, #{password}, #{phone}) delete from ssmbuild.user where username=#{username} update ssmbuild.user set username = #{username},password = #{password},phone = #{phone} where username = #{username} select * from ssmbuild.user where username = #{username} SELECT * from ssmbuild.user package service; import pojo.user; import java.util.List; public interface userService { //增加一个User int addUser(user user); //根据id删除一个User int deleteUserByUserName(String userName); //更新User int updateUser(user user); //根据id查询,返回一个User Boolean queryUserByUserName(String userName); //查询全部User,返回list集合 List queryAllUser(); user login(String userName,int password); } userservice的实现类 package service; import dao.userMapper; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import pojo.user; import java.util.List; @Service("userService") public class userServiceIml implements userService { //调用dao层的操作,设置一个set接口,方便Spring管理 private dao.userMapper userMapper; @Autowired public void setUserMapper(userMapper userMapper) { this.userMapper = userMapper; } public int addUser(user user) { return userMapper.addUser(user); } public int deleteUserByUserName(String userName) { return userMapper.deleteUserByUserName(userName); } public int updateUser(user users) { return userMapper.updateUser(users); } public Boolean queryUserByUserName(String username) { if(userMapper.queryUserByUserName(username)!=null){ return true; }else{ return false; } } public List queryAllUser() { return userMapper.queryAllUser(); } public user login(String userName, int password) { if(userMapper.queryUserByUserName(userName)!=null){ if(password==userMapper.queryUserByUserName(userName).getPassword()){ return userMapper.queryUserByUserName(userName); } } return null; } }

4.Spring层编写

spring整合dao层 spring整合service

5.SpringMVC层编写

整合spring-mvc

6.Spring配置整合文件,applicationContext.xml

7.controller层的编写

package controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.ResponseBody; import pojo.user; import service.userService; import java.util.List; @Controller @RequestMapping("/user") @ResponseBody public class userController { @Autowired private userService userService; @RequestMapping("/allUser") public List allUser() { List list = userService.queryAllUser(); return list; } @RequestMapping("/addUser") public Boolean addUser(user user) { userService.addUser(user); return true; } //Restful风格 @RequestMapping("/del/{userName}") public Boolean deleteUser(@PathVariable("userName") String userName) { userService.deleteUserByUserName(userName); return true; } @RequestMapping("/updateUser") public Boolean updateUser(user user) { userService.updateUser(user); return true; } @RequestMapping("/findUserName/{userName}") public Boolean findUserName(@PathVariable("userName") String userName){ Boolean res = userService.queryUserByUserName(userName); return res; } @RequestMapping("/login/{userName}/{password}") public user login(@PathVariable("userName") String userName,@PathVariable("password") int password){ user res=userService.login(userName,password); return res; } }

8.*添加web框架支持

此处需要注意,需要将maven的包手动导入,才能将项目跑起来。

web.xml DispatcherServlet org.springframework.web.servlet.DispatcherServlet contextConfigLocation classpath:applicationContext.xml 1 DispatcherServlet / encodingFilter org.springframework.web.filter.CharacterEncodingFilter encoding utf-8 encodingFilter /* 15



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3