记一次Springboot+vue项目增加功能

1、拿到别人的springboot+vue项目,首先自己有idea,springboot好导入,是一个多模块依赖项目,这个时候如果要导包,首先要搞懂模块之间的依赖,导出最后没有任何依赖的那个modole。

导出为jar包过程中也遇到了几个问题,首先是在父项目pom文件中添加了

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.22.2</version>
                <configuration>
                    <skipTests>true</skipTests>
                </configuration>
            </plugin>
        </plugins>
    </build>

然后在需要导出jar的module的pom里添加,指定全局唯一入口

 <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <!-- 指定该Main Class为全局的唯一入口 -->
                    <mainClass>com.teacher.evaluate.api.EvaluateApiApplication</mainClass>
                    <layout>ZIP</layout>
                </configuration>
                <executions>
                    <execution>
                        <goals>
                            <goal>repackage</goal><!--可以把依赖的包都打包到生成的Jar包中-->
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

拿到别人的项目,要注意数据库连接ip地址,数据库名字和密码在application.yml中修改。

利用maven打包,idea右侧maven中找到module的lifecycle-clean-compile-package即可。

有次遇到打包时一个模块找不到另一个模块的依赖,后来好像通过在父项目lifecycle中install成功了。

后端大概项目发布就这么多。

2、接下来是vue,vue实际可以完成的功能很多,比如这次实现的页面pdf下载以及网页二维码下载。

PDF下载用的html2canvas,二维码用的vue-qr。

刚开始找的下载pdf老是只能导出屏幕大小的,经过一位师兄指导可以全部导出,好像他也就在原来的div里又添加了一个div。

经过这次的两个功能实现,其实最主要是要搞清楚vue框架的结构,一般在.vue文件里<template>标签里就是网页显示内容,然后是<script>里正常import导入外部的包或者自己写的js,导入的格式也有一定规则,还可导入另一个.vue文件。然后是export default里一般加一些方法返回值,methods里加入一些方法。

像生成二维码除了有div标签,导入包,我们将二维码div标签隐藏掉,加了一个浏览器可下载的功能

downloadImg(){
            var oQrcode = document.querySelector('#qrcode img')
            var url = oQrcode.src
            var a = document.createElement('a')
            var event = new MouseEvent('click')
            // 下载图名字
            a.download = '二维码'
            //url
            a.href = url
            //合成函数,执行下载
            a.dispatchEvent(event)
        },

直接加了这个方法,搞定

vue导包用npm run build-online.这个命令应该是根据package.json中的命令来的。

3、然后发布在windows服务器上

用的ngnix,后端直接运行jar就可以,其实跨域问题我没想清楚,不知道啥时候要跨域,还有ngnix配置问题,现在只有一个项目放在html下,但是还有其它项目呢,

现在ngix配置也很简单,只是提供了一个端口转到vue中,vue中env.producton中配好了后端ip和端口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值