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

冰心商城项目实战 springcloud+springboot+redis+vue+mysql+jdk1.8+git+swagger

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

冰心商城项目实战 springcloud+springboot+redis+vue+mysql+jdk1.8+git+swagger

1.创建项目

1级项目

kmall2109

2级项目

kmall2109-common(公共资源)

kmall2109-registry(注册中心)

kmall2109-user-service(服务消费)

3. kmall2109添加依赖 删除src目录

pom


    Hoxton.SR12
    1.0-SNAPSHOT



    org.springframework.boot
    spring-boot-starter-parent
    2.3.12.RELEASE


    
        
            org.springframework.cloud
            spring-cloud-dependencies
            ${cloud.version}
            pom
            import
        
        
            cn.kgc
            kmall2109-common
            ${common.version}
        
    

4.kmall2109-registry添加依赖


    
    
        org.springframework.cloud
        spring-cloud-starter-netflix-eureka-server
    

4.1 yml配置

server:
  port: 7001

spring:
  application:
    name: kmall-registry

eureka:
  client:
    service-url:
      defaultZone: http://localhost:7001/eureka/
    register-with-eureka: true
    fetch-registry: false

4.2 启动类

@SpringBootApplication @EnableEurekaServer

5. kmall2109-user-service 添加依赖


    
    
        cn.kgc
        kmall2109-common
    
    
    
        org.springframework.boot
        spring-boot-starter-web
    
    
    
        org.springframework.cloud
        spring-cloud-starter-netflix-eureka-client
    
    
    
        mysql
        mysql-connector-java
    
    
    
        com.baomidou
        mybatis-plus-boot-starter
        3.5.1
    
    
    
        org.springframework.boot
        spring-boot-starter-test
        
        test
    
    
    
        com.baomidou
        mybatis-plus-generator
        3.5.2
    
    
    
        org.freemarker
        freemarker
    

5.2 yml配置

server:
  port: 10000

spring:
  application:
    name: kmall-user-service
  datasource:
    username: root
    password: 1234
    url: jdbc:mysql:///kmalldb
  jackson:
    date-format: yyyy-MM-dd
    time-zone: GMT+8
eureka:
  client:
    service-url:
      defaultZone: http://localhost:7001/eureka/
    register-with-eureka: true
    fetch-registry: true #服务列表获取别的服务列表
logging:
  level:
    cn.kgc: debug

5.3 启动类

@SpringBootApplication
@EnableEurekaClient
@MapperScan("cn.kgc.*.mapper")

5.4 mybatis-plus代码生成类

String url = "jdbc:mysql:///kmalldb";
String username = "root";
String password = "1234";
String author = "kgc";
String outputDir = "D:\java2109springclound\kmall2109\kmall2109-user-service\src\main\java";
String parent = "cn.kgc";
String moduleName = "user";
String outputFile = "D:\java2109springclound\kmall2109\kmall2109-user-service\src\main\resources\mapper\" + moduleName;
List tables = Arrays.asList("kmall_user","kmall_role","kmall_menu","kmall_role_menu");
String prefix = "kmall_";
FastAutoGenerator.create(url, username, password)
        .globalConfig(builder -> {
            builder.author(author) // 设置作者
                    //.enableSwagger() // 开启 swagger 模式
                    //.fileOverride() // 覆盖已生成文件
                    .outputDir(outputDir); // 指定输出目录
        })
        .packageConfig(builder -> {
            builder.parent(parent) // 设置父包名
                    .moduleName(moduleName) // 设置父包模块名
                    .pathInfo(Collections.singletonMap(OutputFile.xml, outputFile)); // 设置mapperXml生成路径
        })
        .strategyConfig(builder -> {
            builder.addInclude(tables) // 设置需要生成的表名
                    .addTablePrefix(prefix); // 设置过滤表前缀
        })
        .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
        .execute();

5.5 UserController层

@RestController
@Slf4j
@RequestMapping("/user")
public class UserController {

    @Autowired
    private IUserService userService;
    @GetMapping("/list")
    public Result> getUserList(){
        List list = userService.list();
        return Result.success(list);
    }
    @PostMapping("/login")
    public Result> login(@RequestBody User param){
        return userService.login(param);
    }
    @GetMapping("/info")
    public Result> getUserInfoByToken(@RequestParam String token){
        Map data = new HashMap<>();
        data.put("roles", Arrays.asList("admin"));
        data.put("avatar","https://wpimg.wallstcn.com/f778738c-e4f8-4870-b634-56703b4acafe.gif");
        data.put("name","admin");
        return Result.success(data);
    }
    @PostMapping("/logout")
    public Result logout(){
        // 非前后端的传统项目,这里需要清空session
        return Result.success();
    }
}

5.6 UserServiceImpl实现类

QueryWrapper wrapper = new QueryWrapper<>();
wrapper.eq("username",param.getUsername());
wrapper.eq("password",param.getPassword());
User user = this.baseMapper.selectOne(wrapper);
if(user == null){
    return Result.fail(20002,"用户名或密码错误");
}
Map data = new HashMap<>();
data.put("token", "user:"+UUID.randomUUID()+"");//先随机产生一个字符串
return Result.success(data);

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

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

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