SpringBoot框架的复合父子项目(SSM)下打jar和war包,前后端开发环境分离用

1、后台打war包运行

①在启动main所在项目(子项目)的pom.xml中添加或修改为此项:<packaging>jar</packaging>

②然后在父项目的pom.xml中添加以下依赖:

<!-- 加入tomcat支持,打war包使用-->
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-tomcat</artifactId>
        <scope>provided</scope>
    </dependency>

③子项目的pom.xml中添加maven支持:

<!-- 添加maven依赖 -->
<build>
    <finalName>${project.artifactId}</finalName>
	<plugins>
		<plugin>
			<groupId>org.apache.maven.plugins</groupId>
			<artifactId>maven-war-plugin</artifactId>
			<configuration>
				<failOnMissingWebXml>false</failOnMissingWebXml>
			</configuration>
		</plugin>
	</plugins>
</build>

④在启动类application.java中重写配置:

@SpringBootApplication
public class Application extends SpringBootServletInitializer{    
    public static void main(String[] args) {
		SpringApplication app = new SpringApplication(Application.class);
		app.run(args);
	}
    
    @Override
	protected SpringApplicationBuilder configure(SpringApplicationBuilder builder) {
		// 指向用main方法所在的Application启动类
		return builder.sources(Application.class);
	}
}

⑤右键启动类application.java所在项目run as  ->  maven install即可在target目录下(打包的存储路径)找到war包

 

2、后台打jar包运行

①修改启动main所在项目(子项目)的pom.xml中属性为:<packaging>jar</packaging>

②移除项目pom.xml的tomcat依赖,并添加maven插件

<!--  这个是要删除的  -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-tomcat</artifactId>
    <scope>provided</scope>
</dependency>

<!--  这个是打jar包要添加的  -->
<build>
    <finalName>jshrssb-jgzl</finalName>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
        </plugin>
    </plugins>
</build>

③去掉启动类application.java中的configuration重写配置,最终如下:

@SpringBootApplication
public class Application extends SpringBootServletInitializer{

	public static void main(String[] args) {
		SpringApplication app = new SpringApplication(Application.class);
		app.run(args);
	}

//    这个是要移除的
//    @Override
//    protected SpringApplicationBuilder configure(SpringApplicationBuilder application) {
//        return application.sources(Application.class);
//    }
}

④右键启动类application.java所在项目run as  ->  maven install即可在target目录下(打包的存储路径)找到jar包

 

3、前端通过批处理命令(*.bat)的方式快速启动后台

①首先前端开发人员本地需要搭建一个JDK的基础环境,(版本需与后台一致CMD命令执行java -version有输出正确版本值即成功,具体步骤见:https://jingyan.baidu.com/article/4e5b3e19fb0f2991911e246a.html

②在本地工作空间新建一个*.bat命令,编辑、输入如下、保存,单击打开,正常运行即可

title=jshrssb-jgzl
java -jar "D:\workspace\jar_compile\jarName.jar"       (jar包在本机的绝对路径)

#电脑配置不高的情况或多jar运行时,可加上如下配置:
java -jar  -Xms200m -Xmx200m -Xmn100m "D:\workspace\jar_compile\jarName.jar"

③可能遇到的问题:

1)unable to access jarfile,一般来说jar包的路径不对,这里需要写电脑的绝对路径。

2)jar包运行出错,一般来说都是后台给的jar包有问题,确认后台打包前程序无问题即可。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于前后端分离SSM框架项目,可以使用传统的表单提交方式进行数据请求和返回处理。其中,前端可以通过HTML页面中的<form>标签来提交请求,后端则接收请求参数,并返回相应的数据结果。具体实现方式如下: 1.前端页面使用<form>标签定义需要提交的请求参数,例如: <form action="/login" method="post"> <label for="username">用户名:</label> <input type="text" id="username" name="username" /> <br /> <label for="password">密码:</label> <input type="password" id="password" name="password" /> <br /> <button type="submit">登录</button> </form> 2.在后端控制器中定义处理请求方法,例如: @RequestMapping(value = "/login", method = RequestMethod.POST) @ResponseBody public Map<String, Object> login(@RequestParam("username") String username, @RequestParam("password") String password) { // 处理登录逻辑 // 返回结果 Map<String, Object> result = new HashMap<String, Object>(); result.put("code", 200); result.put("msg", "登录成功"); return result; } 3.在前端页面中,可以通过AJAX技术来异步提交表单请求,例如: $(function(){ $("form").submit(function(event){ event.preventDefault(); $.ajax({ url: "/login", type: "post", data: { username: $("#username").val(), password: $("#password").val() }, dataType: "json", success: function(data){ if(data.code === 200){ alert(data.msg); } } }); }); }); 使用以上方式可以实现前后端数据请求和返回处理,并且可以在前端页面中实时展示后端处理结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值