SpringBoot入门与SpringBoot整合servlet

本文介绍如何在SpringBoot中实现文件上传功能,并详细讲解了两种整合Servlet的方法,包括使用注解和Bean注册的方式,为读者提供全面的SpringBoot应用开发指南。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

springBoot框架的直接使用

一.springBoot框架的Helloworder
web页面显示helloworld!
1.先写一个controller类,这样可以在页面上进行访问。

package com.dsd.controller;

import java.io.File;
import java.io.IOException;
import java.util.HashMap;
import java.util.Map;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;

//@Controller   //这是我们以前常用的controller注解
@RestController   //springboot里的controller的注解,推荐使用,这个注解可以将页面上返回的Jason字符串自动转换。
public class fileupcontroller {
	
	
	@RequestMapping("/fileupController")
	public Map<String, Object> fileup(MultipartFile filename) throws IllegalStateException, IOException{
		
		System.out.println(filename.getOriginalFilename()); //显示文件名称
		filename.transferTo(new File("e:/imgs/"+filename.getOriginalFilename())); //将文件保存
		Map<String, Object> map = new HashMap<>();
		map.put("msg", "OK");
		return map;
		
	}

}

2.在编写一个启动类,相当于是一个主函数。

package com.dsd;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication  //这是启动springboot服务的主要注解
public class HellowServlet011Application {

	public static void main(String[] args) {
		SpringApplication.run(HellowServlet011Application.class, args);  //调用springBoot里的方法。
	}

}

3.在启动类里调试,springBoot自带的Tomcat会自动启动,只需在浏览器里访问,访问方式如下,端口号后跟你写的controller的访问名。
localhost:8080/fileupController

二.SpringBoot整合servlet
springBoot整合servlet有两种方法。

第一种:
1.编写一个servlet类。

package com.dsd.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@WebServlet(name = "fastServlets",urlPatterns = "/fast")  //该注解说明该类是一个servlet类,name是该类的名称,urlpatterns表示该类的访问地址
public class fastServlet extends HttpServlet{   //继承HTTPServlet
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		
		System.out.println("欢迎进入servlet........");
		
	}

}

2.编写一个启动类

package com.dsd;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication  //这是启动springBoot必备
@ServletComponentScan  //通过该注解会自动扫描servlet类
public class HellowServlet011Application {

	public static void main(String[] args) {
		SpringApplication.run(HellowServlet011Application.class, args);
	}

}

3.通过在浏览器上访问即可。

第二种方法:
1.编写一个servlet但是该类不需要添加注解。

package com.dsd.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class towServlet  extends HttpServlet{
	
	@Override
	protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
		System.out.println("我没有被过滤");
	}

}

2.编写启动类,在启动类里需添加一个Bean方法来访问servlet

package com.dsd;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletListenerRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;

import com.dsd.filter.towFilter;
import com.dsd.servlet.towServlet;

@SpringBootApplication   // 启动springBoot必备
public class App {  //该方法是springBoot启动的主方法。
	public static void main(String[] args) throws Exception {
		SpringApplication.run(App.class, args);
	}

	@Bean          //该注解相当于配置文件中的Bean方法。 
	public ServletRegistrationBean towsservlet() {  //通过返回一个ServletRegistrationBean来访问该注解
		
		ServletRegistrationBean bean = new ServletRegistrationBean(new towServlet()); //new 一个类名来指定是那个servlet
		bean.addUrlMappings("/tows");  //指定它的访问地址名
		return bean;
	}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值