utf8mb4和utf8的不同、若依框架,代码生成器,gitee,前端vue的下载、修复和启动(寻求大佬帮助若依框架三、2.3)

2024.7.9

  • 一、数据库的排序和统一问题。utf8mb4和utf8的不同
  • 1.1 发现问题
    • 1.2 解决问题-在idea中用sql生成器,生成sql语句,然后在里面修改
    • 1.3 utf8和utf8mb4的区别
  • 二、若依前后端框架。代码生成器(还没研究懂,但有三个方案)
    • 2.1 若依框架的优缺点(十分片面)
    • 2.2 若依框架的下载,安装和运行:
    • 2.3 遇到的问题(希望有人能帮到我)
      • 2.3.1 pom
      • 2.3.2 mapper.xml能和mapper用mybatis连接上跳转。
      • 2.3.3 报的错误
    • 2.4 解决了的问题
      • 2.4.1 xml中 type=、parameterType=报错,见图(这是修改过的了)
      • 2.4.2 在我们的实体类上面增加一个注解@Alias("TmsTb01"):
      • 2.4.3 @Alias(我的理解是别名)
    • 2.5 使用mybatis-generator (没咋看懂,还有git上的代码生成器,和若依差不多。)
  • 三、gitee
    • 1 为什么使用到gitee了
    • 2 gitee的登录和创建仓库以及邀请组员
      • 2.1 gitee官网:[https://gitee.com/](https://gitee.com/)
      • 2.2 然后创建仓库:
      • 2.3 邀请组员
      • 2.4 推拉数据
  • 四、前端vue的下载修复和启动
    • 1 运行和下载npm run dev、npm install
    • 2 下载完进行修复npm audit fix(好习惯!)
    • 3 npm audit和npm audit fix的不同:

一、数据库的排序和统一问题。utf8mb4和utf8的不同

1.1 发现问题

在我们小组的分工合作完,建好数据库表之后,合并的时候,发现有冲突。因为三个组员使用的Navicat,没有utf8,用的是默认的utf8mb4和utf8mb4_general_ci这两个字符集和排序规则。导致我们总和数据库的时候,发现问题。
在这里插入图片描述
在这里插入图片描述

1.2 解决问题-在idea中用sql生成器,生成sql语句,然后在里面修改

在这里插入图片描述
把每个表最后的utf8mb4修改为utf8后,保存,重新执行。

1.3 utf8和utf8mb4的区别

utf8 是 Mysql 中的一种字符集,只支持最长三个字节的 UTF-8字符,也就是 Unicode 中的基本多文本平面。要在 Mysql 中保存 4 字节长度的 UTF-8 字符,需要使用 utf8mb4 字符集,但只有 5.5.3 版本以后的才支持。
如果遇到 4 字节的字符就会出现错误了。三个字节的 UTF-8 最大能编码的 Unicode 字符是 0xFFFF,也就是 Unicode 中的基本多文平面(BMP)。也就是说,任何不在基本多文平面的 Unicode字符,都无法使用MySQL原有的 utf8 字符集存储。这些不在BMP中的字符包括哪些呢?最常见的就是Emoji 表情(Emoji 是一种特殊的 Unicode 编码,常见于 ios 和 android 手机上),和一些不常用的汉字,以及任何新增的 Unicode 字符等等。

二、若依前后端框架。代码生成器(还没研究懂,但有三个方案)

2.1 若依框架的优缺点(十分片面)

对于我来说,这是一个没有深入研究过的东西,是小组成员商讨然后使用。对于若依的前后端分离框架:
优点是:数据库的字段超级多,我们也需要相应的元素,和一些重复的代码开发,使用若依可以直接专注于代码的开发,前后端都已经是较为完善的了。
缺点是:对于刚接触若依框架的我们来说,很多模块,功能有点找不清,而且我们需要开发的话,固定在rouyi-system里面来写,需要花大量时间去继续研究代码的含义,以及如何去重新开一个模块,写自己的代码。(我知道,还是我业务能力低,大佬早就解决了,接触时间太少了,后续多接触,再回来改)。

2.2 若依框架的下载,安装和运行:

直接看大佬的吧:https://blog.csdn.net/moran_3346/article/details/131803190

2.3 遇到的问题(希望有人能帮到我)

我想独立出一个模块来写自己的代码,所以我创建了一个空模块,然后去重新写所有的配置
代码太多了,我只粘出部分重要的代码:

2.3.1 pom

<?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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>com.ruoyi</groupId>
        <artifactId>ruoyi</artifactId>
        <version>3.8.8</version>
    </parent>
    <groupId>com.fst</groupId>
    <version>3.8.8</version>


    <artifactId>Shipping_lists</artifactId>
    <properties>
        <maven.compiler.source>17</maven.compiler.source>
        <maven.compiler.target>17</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>
    <dependencies>

        <!-- 通用工具-->
        <dependency>
            <groupId>com.ruoyi</groupId>
            <artifactId>ruoyi-common</artifactId>
        </dependency>

    </dependencies>

</project>

2.3.2 mapper.xml能和mapper用mybatis连接上跳转。

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.fst.mapper.ShipInfoChangeMapper">
    <resultMap type="TmsTb01" id="ShipInfoChangeResult">
        <result property="omTermInfoId"    column="om_term_info_id"    />
        <result property="newOutRegionId"    column="new_out_region_id"    />
        <result property="oldOutRegionId"    column="old_out_region_id"    />
        <result property="newTakeAddress"    column="new_take_address"    />
        <result property="oldTakeAddress"    column="old_take_address"    />
        <result property="newBranchName"    column="new_branch_name"    />
        <result property="oldBranchName"    column="old_branch_name"    />
        <result property="newBankContacts"    column="new_bank_contacts"    />
        <result property="oldBankContacts"    column="old_bank_contacts"    />
        <result property="newBankTel"    column="new_bank_tel"    />
        <result property="oldBankTel"    column="old_bank_tel"    />
        <result property="newOutLogisticsProviderInfoId"    column="new_out_logistics_provider_info_id"    />
        <result property="oldOutLogisticsProviderInfoId"    column="old_out_logistics_provider_info_id"    />
    </resultMap>

    <sql id="selectShipInfoChangeVo">
        select om_term_info_id, new_out_region_id, old_out_region_id, new_take_address, old_take_address, new_branch_name, old_branch_name, new_bank_contacts, old_bank_contacts, new_bank_tel, old_bank_tel, new_out_logistics_provider_info_id, old_out_logistics_provider_info_id from ship_info_change
    </sql>

    <select id="selectShipInfoChangeList" parameterType="TmsTb01" resultMap="ShipInfoChangeResult">
        <include refid="selectShipInfoChangeVo"/>
        <where>
            <if test="newOutRegionId != null "> and new_out_region_id = #{newOutRegionId}</if>
            <if test="oldOutRegionId != null "> and old_out_region_id = #{oldOutRegionId}</if>
            <if test="newTakeAddress != null  and newTakeAddress != ''"> and new_take_address = #{newTakeAddress}</if>
            <if test="oldTakeAddress != null  and oldTakeAddress != ''"> and old_take_address = #{oldTakeAddress}</if>
            <if test="newBranchName != null  and newBranchName != ''"> and new_branch_name like concat('%', #{newBranchName}, '%')</if>
            <if test="oldBranchName != null  and oldBranchName != ''"> and old_branch_name like concat('%', #{oldBranchName}, '%')</if>
            <if test="newBankContacts != null  and newBankContacts != ''"> and new_bank_contacts = #{newBankContacts}</if>
            <if test="oldBankContacts != null  and oldBankContacts != ''"> and old_bank_contacts = #{oldBankContacts}</if>
            <if test="newBankTel != null  and newBankTel != ''"> and new_bank_tel = #{newBankTel}</if>
            <if test="oldBankTel != null  and oldBankTel != ''"> and old_bank_tel = #{oldBankTel}</if>
            <if test="newOutLogisticsProviderInfoId != null "> and new_out_logistics_provider_info_id = #{newOutLogisticsProviderInfoId}</if>
            <if test="oldOutLogisticsProviderInfoId != null "> and old_out_logistics_provider_info_id = #{oldOutLogisticsProviderInfoId}</if>
        </where>
    </select>

    <select id="selectShipInfoChangeByOmTermInfoId" parameterType="Long" resultMap="ShipInfoChangeResult">
        <include refid="selectShipInfoChangeVo"/>
        where om_term_info_id = #{omTermInfoId}
    </select>

    <insert id="insertShipInfoChange" parameterType="TmsTb01">
        insert into ship_info_change
        <trim prefix="(" suffix=")" suffixOverrides=",">
            <if test="omTermInfoId != null">om_term_info_id,</if>
            <if test="newOutRegionId != null">new_out_region_id,</if>
            <if test="oldOutRegionId != null">old_out_region_id,</if>
            <if test="newTakeAddress != null">new_take_address,</if>
            <if test="oldTakeAddress != null">old_take_address,</if>
            <if test="newBranchName != null">new_branch_name,</if>
            <if test="oldBranchName != null">old_branch_name,</if>
            <if test="newBankContacts != null">new_bank_contacts,</if>
            <if test="oldBankContacts != null">old_bank_contacts,</if>
            <if test="newBankTel != null">new_bank_tel,</if>
            <if test="oldBankTel != null">old_bank_tel,</if>
            <if test="newOutLogisticsProviderInfoId != null">new_out_logistics_provider_info_id,</if>
            <if test="oldOutLogisticsProviderInfoId != null">old_out_logistics_provider_info_id,</if>
        </trim>
        <trim prefix="values (" suffix=")" suffixOverrides=",">
            <if test="omTermInfoId != null">#{omTermInfoId},</if>
            <if test="newOutRegionId != null">#{newOutRegionId},</if>
            <if test="oldOutRegionId != null">#{oldOutRegionId},</if>
            <if test="newTakeAddress != null">#{newTakeAddress},</if>
            <if test="oldTakeAddress != null">#{oldTakeAddress},</if>
            <if test="newBranchName != null">#{newBranchName},</if>
            <if test="oldBranchName != null">#{oldBranchName},</if>
            <if test="newBankContacts != null">#{newBankContacts},</if>
            <if test="oldBankContacts != null">#{oldBankContacts},</if>
            <if test="newBankTel != null">#{newBankTel},</if>
            <if test="oldBankTel != null">#{oldBankTel},</if>
            <if test="newOutLogisticsProviderInfoId != null">#{newOutLogisticsProviderInfoId},</if>
            <if test="oldOutLogisticsProviderInfoId != null">#{oldOutLogisticsProviderInfoId},</if>
        </trim>
    </insert>

    <update id="updateShipInfoChange" parameterType="TmsTb01">
        update ship_info_change
        <trim prefix="SET" suffixOverrides=",">
            <if test="newOutRegionId != null">new_out_region_id = #{newOutRegionId},</if>
            <if test="oldOutRegionId != null">old_out_region_id = #{oldOutRegionId},</if>
            <if test="newTakeAddress != null">new_take_address = #{newTakeAddress},</if>
            <if test="oldTakeAddress != null">old_take_address = #{oldTakeAddress},</if>
            <if test="newBranchName != null">new_branch_name = #{newBranchName},</if>
            <if test="oldBranchName != null">old_branch_name = #{oldBranchName},</if>
            <if test="newBankContacts != null">new_bank_contacts = #{newBankContacts},</if>
            <if test="oldBankContacts != null">old_bank_contacts = #{oldBankContacts},</if>
            <if test="newBankTel != null">new_bank_tel = #{newBankTel},</if>
            <if test="oldBankTel != null">old_bank_tel = #{oldBankTel},</if>
            <if test="newOutLogisticsProviderInfoId != null">new_out_logistics_provider_info_id = #{newOutLogisticsProviderInfoId},</if>
            <if test="oldOutLogisticsProviderInfoId != null">old_out_logistics_provider_info_id = #{oldOutLogisticsProviderInfoId},</if>
        </trim>
        where om_term_info_id = #{omTermInfoId}
    </update>

    <delete id="deleteShipInfoChangeByOmTermInfoId" parameterType="Long">
        delete from ship_info_change where om_term_info_id = #{omTermInfoId}
    </delete>

    <delete id="deleteShipInfoChangeByOmTermInfoIds" parameterType="String">
        delete from ship_info_change where om_term_info_id in
        <foreach item="omTermInfoId" collection="array" open="(" separator="," close=")">
            #{omTermInfoId}
        </foreach>
    </delete>
</mapper>

2.3.3 报的错误

19:38:33.049 [restartedMain] INFO  c.r.RuoYiApplication - [logStarting,55] - Starting RuoYiApplication using Java 21.0.1 on fst with PID 1456 (E:\project1\mybatis-generator-gui-master\production-system\production-system-master\ruoyi-admin\target\classes started by feng in E:\project1\mybatis-generator-gui-master\production-system)
19:38:33.052 [restartedMain] DEBUG c.r.RuoYiApplication - [logStarting,56] - Running with Spring Boot v2.5.15, Spring v5.3.33
19:38:33.052 [restartedMain] INFO  c.r.RuoYiApplication - [logStartupProfileInfo,686] - The following 1 profile is active: "druid"
19:38:33.053 [background-preinit] INFO  o.h.v.i.util.Version - [<clinit>,21] - HV000001: Hibernate Validator 6.2.5.Final
19:38:35.560 [restartedMain] INFO  o.a.c.c.AprLifecycleListener - [log,173] - Loaded Apache Tomcat Native library [1.2.39] using APR version [1.7.4].
19:38:35.561 [restartedMain] INFO  o.a.c.c.AprLifecycleListener - [log,173] - APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true].
19:38:35.561 [restartedMain] INFO  o.a.c.c.AprLifecycleListener - [log,173] - APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
19:38:35.582 [restartedMain] INFO  o.a.c.c.AprLifecycleListener - [log,173] - OpenSSL successfully initialized [OpenSSL 3.0.11 19 Sep 2023]
19:38:35.595 [restartedMain] INFO  o.a.c.h.Http11NioProtocol - [log,173] - Initializing ProtocolHandler ["http-nio-8080"]
19:38:35.595 [restartedMain] INFO  o.a.c.c.StandardService - [log,173] - Starting service [Tomcat]
19:38:35.596 [restartedMain] INFO  o.a.c.c.StandardEngine - [log,173] - Starting Servlet engine: [Apache Tomcat/9.0.75]
19:38:35.779 [restartedMain] INFO  o.a.c.c.C.[.[.[/] - [log,173] - Initializing Spring embedded WebApplicationContext
19:38:36.364 [restartedMain] DEBUG c.r.f.s.f.JwtAuthenticationTokenFilter - [init,242] - Filter 'jwtAuthenticationTokenFilter' configured for use
19:38:38.517 [restartedMain] INFO  c.a.d.p.DruidDataSource - [init,1002] - {dataSource-1} inited
19:38:39.011 [restartedMain] WARN  o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - [refresh,599] - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'captchaController': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigServiceImpl': Unsatisfied dependency expressed through field 'configMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigMapper' defined in file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\ruoyi-system\target\classes\com\ruoyi\system\mapper\SysConfigMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ruoyi/framework/config/MyBatisConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
19:38:39.011 [restartedMain] INFO  c.a.d.p.DruidDataSource - [close,2204] - {dataSource-1} closing ...
19:38:39.015 [restartedMain] INFO  c.a.d.p.DruidDataSource - [close,2277] - {dataSource-1} closed
19:38:39.033 [restartedMain] INFO  o.a.c.c.StandardService - [log,173] - Stopping service [Tomcat]
19:38:39.066 [restartedMain] ERROR o.s.b.SpringApplication - [reportFailure,870] - Application run failed
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'captchaController': Unsatisfied dependency expressed through field 'configService'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigServiceImpl': Unsatisfied dependency expressed through field 'configMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigMapper' defined in file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\ruoyi-system\target\classes\com\ruoyi\system\mapper\SysConfigMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ruoyi/framework/config/MyBatisConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693)
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:955)
	at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)
	at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:591)
	at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:145)
	at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:780)
	at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:453)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:343)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1370)
	at org.springframework.boot.SpringApplication.run(SpringApplication.java:1359)
	at com.ruoyi.RuoYiApplication.main(RuoYiApplication.java:18)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigServiceImpl': Unsatisfied dependency expressed through field 'configMapper'; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigMapper' defined in file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\ruoyi-system\target\classes\com\ruoyi\system\mapper\SysConfigMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ruoyi/framework/config/MyBatisConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:713)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:693)
	at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:119)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:408)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1431)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710)
	... 23 common frames omitted
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'sysConfigMapper' defined in file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\ruoyi-system\target\classes\com\ruoyi\system\mapper\SysConfigMapper.class]: Unsatisfied dependency expressed through bean property 'sqlSessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ruoyi/framework/config/MyBatisConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1534)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1417)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:619)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
	at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:710)
	... 37 common frames omitted
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [com/ruoyi/framework/config/MyBatisConfig.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:646)
	at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:626)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1352)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1195)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:582)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:542)
	at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:336)
	at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234)
	at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:334)
	at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:209)
	at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:276)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1391)
	at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1311)
	at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1519)
	... 48 common frames omitted
Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.apache.ibatis.session.SqlSessionFactory]: Factory method 'sqlSessionFactory' threw exception; nested exception is java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:185)
	at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java:641)
	... 61 common frames omitted
Caused by: java.io.IOException: Failed to parse mapping resource: 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'
	at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:700)
	at org.mybatis.spring.SqlSessionFactoryBean.afterPropertiesSet(SqlSessionFactoryBean.java:577)
	at org.mybatis.spring.SqlSessionFactoryBean.getObject(SqlSessionFactoryBean.java:720)
	at com.ruoyi.framework.config.MyBatisConfig.sqlSessionFactory(MyBatisConfig.java:130)
	at com.ruoyi.framework.config.MyBatisConfig$$EnhancerBySpringCGLIB$$ebba123a.CGLIB$sqlSessionFactory$0(<generated>)
	at com.ruoyi.framework.config.MyBatisConfig$$EnhancerBySpringCGLIB$$ebba123a$$FastClassBySpringCGLIB$$74fc26c.invoke(<generated>)
	at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:244)
	at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:331)
	at com.ruoyi.framework.config.MyBatisConfig$$EnhancerBySpringCGLIB$$ebba123a.sqlSessionFactory(<generated>)
	at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103)
	at java.base/java.lang.reflect.Method.invoke(Method.java:580)
	at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:154)
	... 62 common frames omitted
Caused by: org.apache.ibatis.builder.BuilderException: Error parsing Mapper XML. The XML location is 'file [E:\project1\mybatis-generator-gui-master\production-system\production-system-master\Shipping_lists\target\classes\mapper\list\ShipInfoChangeMapper.xml]'. Cause: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'TmsTb01'.  Cause: java.lang.ClassNotFoundException: Cannot find class: TmsTb01
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:128)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.parse(XMLMapperBuilder.java:100)
	at org.mybatis.spring.SqlSessionFactoryBean.buildSqlSessionFactory(SqlSessionFactoryBean.java:698)
	... 73 common frames omitted
Caused by: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'TmsTb01'.  Cause: java.lang.ClassNotFoundException: Cannot find class: TmsTb01
	at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:118)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:270)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElement(XMLMapperBuilder.java:262)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.resultMapElements(XMLMapperBuilder.java:254)
	at org.apache.ibatis.builder.xml.XMLMapperBuilder.configurationElement(XMLMapperBuilder.java:124)
	... 75 common frames omitted
Caused by: org.apache.ibatis.type.TypeException: Could not resolve type alias 'TmsTb01'.  Cause: java.lang.ClassNotFoundException: Cannot find class: TmsTb01
	at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:128)
	at org.apache.ibatis.builder.BaseBuilder.resolveAlias(BaseBuilder.java:150)
	at org.apache.ibatis.builder.BaseBuilder.resolveClass(BaseBuilder.java:116)
	... 79 common frames omitted
Caused by: java.lang.ClassNotFoundException: Cannot find class: TmsTb01
	at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:226)
	at org.apache.ibatis.io.ClassLoaderWrapper.classForName(ClassLoaderWrapper.java:103)
	at org.apache.ibatis.io.Resources.classForName(Resources.java:322)
	at org.apache.ibatis.type.TypeAliasRegistry.resolveAlias(TypeAliasRegistry.java:124)
	... 81 common frames omitted

进程已结束,退出代码为 1

2.4 解决了的问题

2.4.1 xml中 type=、parameterType=报错,见图(这是修改过的了)

在这里插入图片描述
在这里插入图片描述

2.4.2 在我们的实体类上面增加一个注解@Alias(“TmsTb01”):

在这里插入图片描述

2.4.3 @Alias(我的理解是别名)

使用前提
在配置文件中配置 type-aliases-package 告诉spring boot (项目)你改别名的包是哪里
如:type-aliases-package: com.ye.test.pojo

实体类使用方法

@Alias("oppo")
public class Teacher {
    private Integer id;
    private String name;

mapper.xml 使用方法
mapper.xml 文件中可以直接使用 oppo,代替 com.ye.test.pojo.Teacher
如:javaType=“oppo” resultType=“oppo” parameterType=“oppo”

注意:使用@Alias 起别名之后,mapper.xml 文件 不能再使用 Teacher/teacher,但可以使用全类名 com.ye.test.pojo.Teacher

2.5 使用mybatis-generator (没咋看懂,还有git上的代码生成器,和若依差不多。)

大佬的:
https://blog.csdn.net/qq_43813351/article/details/119913372
https://developer.aliyun.com/article/1463287

三、gitee

1 为什么使用到gitee了

因为我们小组开发,还使用到了gitee来进行代码的整理和下放,很久之前在黑马的视频里面使用过gitee对自己的代码进行推,拉,合并,今天重温一下。主要的使用场景还是在idea里面。

2 gitee的登录和创建仓库以及邀请组员

2.1 gitee官网:https://gitee.com/

2.2 然后创建仓库:

在这里插入图片描述
根据需求进行创建
在这里插入图片描述

2.3 邀请组员

打开自己的仓库,点击管理,然后仓库成员管理

在这里插入图片描述
然后就可以根据链接和二维码进行分享和邀请了!!!

2.4 推拉数据

推数据:
在这里插入图片描述
拉数据
在这里插入图片描述
从头拉项目
在这里插入图片描述
在这里插入图片描述

四、前端vue的下载修复和启动

被组员吐槽了,是一点前端不会啊哈哈哈

1 运行和下载npm run dev、npm install

在这里插入图片描述

2 下载完进行修复npm audit fix(好习惯!)

在这里插入图片描述

3 npm audit和npm audit fix的不同:

npm audit安全漏洞的扫描器
npm audit fix:自动修复漏洞的利器
npm audit fix要慎重使用,这个命令可能会引发依赖问题,比如A包依赖B包,结果B包强制更新后,A包的依赖找不到了。
所以,搭配使用:
我们来看一个具体的例子。假设你的项目中有一个名为“express”的依赖包,但是这个包存在一个已知的安全漏洞。当你运行npm audit时,它会报告这个漏洞并给出相应的警告信息。接下来,你就可以查看升级之后,是否会造成其他冲突,然后尝试运行npm audit fix来自动修复这个问题。系统会自动更新“express”依赖包的版本,将其升级到一个没有安全漏洞的版本。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/788096.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024前端面试真题【JS篇】

DOM DOM&#xff1a;文本对象模型&#xff0c;是HTML和XML文档的编程接口。提供了对文档的结构化的表述&#xff0c;并定义可一种方式可以使从程序中对该结构进行访问&#xff0c;从而改变文档的结构、样式和内容。 DOM操作 创建节点&#xff1a;document.createElement()、do…

ER模型理论和三范式

ER模型理论和三范式 各种关系多对一一对一一对多多对多 三范式理论函数依赖完全函数依赖部分函数依赖传递&#xff08;间接&#xff09;函数依赖 第一范式&#xff1a;属性&#xff08;表字段&#xff09;不可切割第二范式&#xff1a;不能存在 部分函数依赖(都存在完全函数依赖…

最全windows提权总结(建议收藏)

当以低权用户进去一个陌生的windows机器后&#xff0c;无论是提权还是后续做什么&#xff0c;第一步肯定要尽可能的搜集信息。知己知彼&#xff0c;才百战不殆。 常规信息搜集 systeminfo 查询系统信息hostname 主机名net user 查看用户信息netstat -ano|find "3389&quo…

充电宝哪个牌子公认质量好?哪家充电宝好用?4款口碑好充电宝

在如今这个电子设备不离手的时代&#xff0c;充电宝成为了我们生活中的必备品。然而&#xff0c;面对市场上琳琅满目的充电宝品牌和型号&#xff0c;选择一款质量可靠、性能出色的充电宝并非易事。大家都在问&#xff1a;充电宝哪个牌子公认质量好&#xff1f;哪家充电宝好用&a…

【鸿蒙学习笔记】UIAbility组件概述

官方文档&#xff1a;UIAbility组件 目录标题 UIAbility组件概述 [Q&A] 什么是UIAbility&#xff1f;声明周期UIAbility组件-启动模式UIAbility组件-与UI的数据同步 UIAbility组件概述 [Q&A] 什么是UIAbility&#xff1f; UIAbility组件是一种包含UI界面的应用组件&a…

红酒知识百科:从入门到精通

红酒&#xff0c;这个深邃而迷人的世界&#xff0c;充满了无尽的知识与奥秘。从葡萄的选择、酿造工艺&#xff0c;到品鉴技巧&#xff0c;每一步都蕴藏着深厚的文化底蕴和精细的技艺。今天&#xff0c;就让我们一起踏上这场红酒知识之旅&#xff0c;从入门开始&#xff0c;逐步…

量产工具一一UI系统(四)

目录 前言 一、按钮数据结构抽象 1.ui.h 二、按键处理 1.button.c 2.disp_manager.c 3.disp_manager.h 三、单元测试 1.ui_test.c 2.上机测试 前言 前面我们实现了显示系统框架&#xff0c;输入系统框架和文字系统框架&#xff0c;链接&#xff1a; 量产工具一一显…

docker笔记1

docker笔记1 一、为什么要学docker?二、docker是什么三、docker安装 一、为什么要学docker? 在过去&#xff0c;开发人员编写的代码在不同的环境中运行时常常面临一些问题&#xff0c;例如“在我的机器上可以运行&#xff0c;但在你的机器上却不行”的情况。这种问题部分原因…

如何在 CentOS 上配置本地 YUM 源

引言 CentOS 作为一个流行的企业级 Linux 发行版&#xff0c;依赖 YUM&#xff08;Yellowdog Updater, Modified&#xff09;来管理软件包。YUM 源&#xff08;Repository&#xff09;是软件包存储和分发的中心&#xff0c;它们通常位于互联网上。然而&#xff0c;在某些情况下…

六、数据可视化—flask框架入门(爬虫及数据可视化)

六、数据可视化—flask框架入门&#xff08;爬虫及数据可视化&#xff09; 1&#xff0c;数据可视化简介2&#xff0c;flask&#xff08;1&#xff09;创建flask项目&#xff08;2&#xff09;开启debug模式&#xff08;3&#xff09;通过访问路径传递参数&#xff08;4&#x…

实时温湿度监测系统:Micropython编码ESP32与DHT22模块的无线数据传输与PC端接收项目

实时温湿度监测系统 前言项目目的项目材料项目步骤模拟ESP32接线连接测试搭建PC端ESP32拷录环境对ESP32进行拷录PC端搭建桌面组件本地数据接收桌面小组件部分 实验总结 前言 人生苦短&#xff0c;我用Python。 由于我在日常工作中经常使用Python&#xff0c;因此在进行该项目…

核密度估计KDE和概率密度函数PDF(深入浅出)

目录 1. 和密度估计&#xff08;KDE&#xff09;核密度估计的基本原理核密度估计的公式核密度估计的应用Python中的KDE实现示例代码 结果解释解释结果 总结 2. 概率密度函数&#xff08;PDF&#xff09;概率密度函数&#xff08;PDF&#xff09;是怎么工作的&#xff1a;用图画…

澳大利亚TikTok直播为什么需要海外直播专线?

近年来&#xff0c;许多卖家为了解决澳大利亚TikTok直播中的卡顿和高延迟问题&#xff0c;纷纷选择使用海外直播专线。这种专线服务是一种高效、低延迟的数据传输解决方案&#xff0c;专为需要高质量网络连接的场合设计。 与公共互联网相比&#xff0c;海外直播专线提供更稳定、…

在Linux下直接修改磁盘镜像文件的内容

背景 嵌入式Linux系统通常在调试稳定后&#xff0c;会对磁盘&#xff08;SSD、NVME、SD卡、TF卡&#xff09;做个镜像&#xff0c;通常是.img后缀的文件&#xff0c;以后组装新设备时&#xff0c;就将镜像文件烧录到新磁盘即可&#xff0c;非常简单。 这种方法有个不便之处&a…

99%的人忽视了这一点:活着本身就是人生的意义,别让抑郁和内耗成为你的枷锁!

人没必要抑郁和精神内耗&#xff0c;不结婚&#xff0c;不生子&#xff0c;赚不到钱&#xff0c;没考上名牌大学&#xff0c;没有好工作等等&#xff0c;其实都没什么关系。 因为大多数人生是没有什么意义&#xff0c;或者说&#xff0c;活着就是最大的意义。 抑郁和精神内耗…

接口测试(2)

单接口测试 CtrlD 复制 因为单接口的时候主要改变测试用例数据 自动判定响应结果 postman断言 //断言响应状态码为200 pm.test("Status code is 200", function () {pm.response.to.have.status(200); }); //断言返回数据中包括&#xff08;成功&#xff09; //预期结…

14.x86游戏实战-汇编指令cmp test

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 工具下载&#xff1a; 链接&#xff1a;https://pan.baidu.com/s/1rEEJnt85npn7N38Ai0_F2Q?pwd6tw3 提…

移除元素的讲解,看这篇就够了!

一&#xff1a;题目 博主本文将用指向来形象的表示下标位的移动。 二&#xff1a;思路 1&#xff1a;两个整形&#xff0c;一个start&#xff0c;一个end&#xff0c;在一开始都 0&#xff0c;即这里都指向第一个元素。 2&#xff1a;在查到val之前&#xff0c;查一个&…

策略路由和路由策略的区别详解

先说策略路由也就是 PBR&#xff1a; 它不会影响路由表的生成&#xff0c;设备的路由表是已经存在而且稳定的。 举个例子&#xff1a; 用 TCP/IP 路由技术一书的表述就是&#xff1a;策略路由就是一个复杂的静态路由。 总结&#xff1a;策略路由是一个基于路由表的影响特定数…

Linux | 安装lb-toolkits 1.2.4库

Linux | 安装 lb-toolkits 最近又需要下载葵花的数据&#xff0c;之前分享过一次代码。今天发现之前的环境不小心被我删了&#xff0c;而运行相关的代码需要安装lb-toolkits这个库&#xff0c;今天正好记录了一下安装lb-toolkits的过程。 这里安装的版本是1.2.4&#xff0c;别…