栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

使用layui编写登录功能。

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

使用layui编写登录功能。

目录

一、使用layui编写登录功能。

二、使用步骤

2.1.新建项目加依赖

2.2.使用mybatics-plus自动生成代码

       2.2.1配置pom.xml

        2.2.2加入自动生成的代码

  3.配置yml文件

4.编写Service层

5.编写controller层

6.配置启动类(必须指定mapper)

7.导入前端所需js&css文件&md5.js(js.文件私聊提供)

​编辑8.编写ftl

9.测试

总结


一、使用layui编写登录功能。

layui 是一套开源的 Web UI 解决方案,其内部采用的是自身经典的模块化规范,并遵循原生 HTML/CSS/JS 的开发方式,极易上手,拿来即用。

二、使用步骤

2.1.新建项目加依赖

如下(示例):

 

 

2.2.使用mybatics-plus自动生成代码

       2.2.1配置pom.xml

代码如下(示例):

 
            com.baomidou
            mybatis-plus-generator
            3.5.2
        
        
            com.baomidou
            mybatis-plus-boot-starter
            3.5.2
        

        2.2.2加入自动生成的代码
  •  新建包-----    generator
  •  新建类 ------ MybatisPlusGenerator
    package com.zking.layui01.generator;
    
    import com.baomidou.mybatisplus.annotation.FieldFill;
    import com.baomidou.mybatisplus.generator.FastAutoGenerator;
    import com.baomidou.mybatisplus.generator.config.DataSourceConfig;
    import com.baomidou.mybatisplus.generator.config.OutputFile;
    import com.baomidou.mybatisplus.generator.config.rules.DateType;
    import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
    import com.baomidou.mybatisplus.generator.fill.Column;
    import lombok.Data;
    import lombok.extern.slf4j.Slf4j;
    
    import java.util.Arrays;
    import java.util.Collections;
    import java.util.List;
    
    @SuppressWarnings("all")
    @Slf4j
    @Data
    public class MybatisPlusGenerator {
    
        protected static String URL = "jdbc:mysql://localhost:3306/t271?useEncoding=utf8mb4&serverTimezone=Asia/Shanghai&useSSL=false";
        protected static String USERNAME = "root";
        protected static String PASSWORD = "123";
    
        protected static DataSourceConfig.Builder DATA_SOURCE_CONFIG = new DataSourceConfig.Builder(URL, USERNAME, PASSWORD);
    
        public static void main(String[] args) {
            FastAutoGenerator.create(DATA_SOURCE_CONFIG)
                    .globalConfig(
                            (scanner, builder) ->
                                    builder.author(scanner.apply("请输入作者名称?"))
                                            .fileOverride()
                                            .outputDir(System.getProperty("user.dir") + "\src\main\java")
                                            .commentDate("yyyy-MM-dd")
                                            .dateType(DateType.TIME_PACK)
                    )
                    .packageConfig((builder) ->
                            builder.parent("com.zking.layui01")
                                    .entity("pojo")
                                    .service("service")
                                    .serviceImpl("service.impl")
                                    .mapper("mapper")
                                    .xml("mapper.xml")
                                    .pathInfo(Collections.singletonMap(OutputFile.xml, System.getProperty("user.dir") + "\src\main\resources\mapper"))
                    )
                    .injectionConfig((builder) ->
                            builder.beforeOutputFile(
                                    (a, b) -> log.warn("tableInfo: " + a.getEntityName())
                            )
                    )
                    .strategyConfig((scanner, builder) ->
                            builder.addInclude(getTables(scanner.apply("请输入表名,多个英文逗号分隔?所有输入 all")))
                                    .addTablePrefix("tb_", "t_","lay_")
                                    .entityBuilder()
                                    .enableChainModel()
                                    .enableLombok()
                                    .enableTableFieldAnnotation()
                                    .controllerBuilder()
                                    .enableRestStyle()
                                    .enableHyphenStyle()
                                    .build())
                    .templateEngine(new FreemarkerTemplateEngine())
                    .execute();
        }
    
        protected static List getTables(String tables) {
            return "all".equals(tables) ? Collections.emptyList() : Arrays.asList(tables.split(","));
        }
    
    }
    
               执行如图:

        3.配置yml文件
spring:
  application:
    name: layui
  freemarker:
    request-context-attribute: req
    cache: false
    charset: utf-8
    allow-request-override: false
    check-template-location: true
    content-type: text/html
    expose-request-attributes: true
    expose-session-attributes: true
    suffix: .ftl
    template-loader-path: classpath:/templates/
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    username: root
    password: 123
    url: jdbc:mysql://localhost:3306/t271?useUnicode=true&serverTimezone=Asia/Shanghai&useSSL=false&characterEncoding=utf-8
server:
  port: 8080

4.编写Service层
package com.zking.layui01.service.impl;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.zking.layui01.pojo.User;
import com.zking.layui01.mapper.UserMapper;
import com.zking.layui01.service.IUserService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.DigestUtils;

import java.nio.charset.StandardCharsets;


@Service
public class UserServiceImpl extends ServiceImpl implements IUserService {

   @Autowired
    private  UserMapper userMapper;

    @Override
    public String login(User user) {
        User one = userMapper.selectOne(new QueryWrapper().eq("account", user.getAccount()));


    if (one==null){
    return "用户名不存在";
    }
//    加密前端密码
        String pwd = DigestUtils.md5DigestAsHex(user.getPassword().getBytes(StandardCharsets.UTF_8));
//比较密码
        if (!pwd.equals(one.getPassword())){
            return "密码错误";
    }

        return "登录成功";
    }
}

5.编写controller层
@RestController
@RequestMapping("/user")
public class UserController {
    @Autowired
    private IUserService userService;

    @PostMapping("/login")
    public String  login(User user){
     return userService.login(user);

    }

}

6.配置启动类(必须指定mapper)
@SpringBootApplication
@MapperScan("com.zking.layui01.mapper")
public class Layui01Application {

    public static void main(String[] args) {
        SpringApplication.run(Layui01Application.class, args);
    }

}

7.导入前端所需js&css文件&md5.js(js.文件私聊提供)



8.编写ftl



    
    
    
    
    
    
    
    



    
        
    
    
  • 新用户注册

  • 忘记密码

 

9.测试


 

总结
  • md5加密不只是在后端使用,前端也需要。这样才能有效防止隐私泄露。
  • framework非常不稳定容易引起js文件错误(求指导)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/969965.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号