yeb后端

创建父工程

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<modules>
		<module>yeb-server</module>
		<module>yeb-generator</module>
	</modules>
	<parent>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-starter-parent</artifactId>
		<version>2.6.1</version>
		<relativePath/> <!-- lookup parent from repository -->
	</parent>
<!--	父工程做透明依赖管理-->
	<groupId>org.mubai</groupId>
	<artifactId>yeb</artifactId>
	<version>0.0.1-SNAPSHOT</version>
	<packaging>pom</packaging>
	<name>yeb</name>
	<description>Demo project for Spring Boot</description>
	<properties>
		<java.version>1.8</java.version>
	</properties>
</project>

业务层

        <!--web 依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--mybatis-plus 依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.3.1.tmp</version>
        </dependency>
        <!--引入插件lombok 自动的set/get/构造方法插件  -->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        <!--mysql 依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
<!--        swagger2依赖-->
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.7.0</version>
        </dependency>

        <dependency>
            <groupId>com.github.xiaoymin</groupId>
            <artifactId>swagger-bootstrap-ui</artifactId>
            <version>1.9.6</version>
        </dependency>

创建逆向工厂生成代码

        <!--web 依赖-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--mybatis-plus 依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.4.3.4</version>
        </dependency>

        <!--mybatis-plus 代码生成器依赖-->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.1</version>
        </dependency>
        <!--freemarker 依赖-->
        <dependency>
            <groupId>org.freemarker</groupId>
            <artifactId>freemarker</artifactId>
        </dependency>
        <!--mysql 依赖-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>

官网上的生成代码

public class CodeGenerator {

//    /**
//     * <p>
//     * 读取控制台内容
//     * </p>
//     */
//    public static String scanner(String tip) {
//        Scanner scanner = new Scanner(System.in);
//        StringBuilder help = new StringBuilder();
//        help.append("请输入" + tip + ":");
//        System.out.println(help.toString());
//        if (scanner.hasNext()) {
//            String ipt = scanner.next();
//            if (StringUtils.isNotEmpty(ipt)) {
//                return ipt;
//            }
//        }
//        throw new MybatisPlusException("请输入正确的" + tip + "!");
//    }

    public static void main(String[] args) {
        FastAutoGenerator.create("jdbc:mysql://localhost:3306/yeb?useUnicode=true&characterEncoding=UTF-8&serverTimezone=Asia/Shanghai"
                , "root", "123456")
                .globalConfig(builder -> {
                    builder.author("mubai") // 设置作者
                            .enableSwagger() // 开启 swagger 模式
                            .fileOverride() // 覆盖已生成文件
                            .outputDir("C:/Users/zhwang49/Desktop/work/YEB/YebJava/yeb-generator/src/main/java/com/mubai"); // 指定输出目录
                })
                .packageConfig(builder -> {
                    builder.parent("com.mubai.generator") // 设置父包名
//                            .moduleName("system") // 设置父包模块名
                            .pathInfo(Collections.singletonMap(OutputFile.mapperXml, "C:/Users/zhwang49/Desktop/work/YEB/YebJava/yeb-server/src/main/resources/mapper")); // 设置mapperXml生成路径
                })
                .strategyConfig(builder -> {
                    builder// 设置需要生成的表名
                            .addTablePrefix("cloud_"); // 设置过滤表前缀
                })
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                .execute();

    }
}

在这里插入图片描述
如果用户直接在url输入本身权限没有的url,使用需要用rbac做权限管理
在这里插入图片描述动态权限设置

  1. 需要在CustomFilter中对请求的url进行拦截,查询该url资源需要什么角色才能访问,如果查询不到,说明该资源是只要登录就能访问
  2. 在CustomUrlDecisionManager中判断当前用户的角色是否包含该角色
  3. 在SecurityConfig中配置拦截过滤

alt+f8:调出evlaue

WebSocket

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
YEB数据库脚本执行失败可能出现的原因有多种。下面是一些常见的问题和可能的解决方案: 1. 脚本语法错误:请仔细检查脚本中的语法错误,比如拼写错误、缺少分号等。确保SQL语句正确无误。 2. 数据库连接问题:脚本执行失败可能是由于数据库连接问题所致。请检查数据库的连接信息,包括用户名、密码、主机地址和端口号等。 3. 数据库权限问题:脚本可能包含一些需要特定权限才能执行的SQL语句。请确保数据库用户具备执行这些语句的权限。 4. 数据库已满:如果数据库已满,可能无法执行脚本中的插入语句或更新语句。请清理数据库或增加数据库的存储容量。 5. 数据表不存在:脚本中的语句可能引用了不存在的数据表。请检查脚本中的表名是否正确,并确保这些表已在数据库中创建。 6. 数据冲突:脚本中的插入语句可能引起数据冲突,比如违反了唯一约束。请检查脚本中的数据是否与数据库中已存在的数据冲突。 7. 脚本执行时间过长:脚本执行时间过长可能导致执行失败。请检查脚本的性能,优化SQL语句或拆分长时间运行的脚本。 8. 网络问题:如果脚本执行失败是由于网络问题引起的,可以尝试重新执行脚本或者检查网络连接是否正常。 在解决YEB数据库脚本执行失败的问题时,可以根据出错信息,逐个排查可能的原因,并结合数据库的状况进行调查和修复。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值