java post xmll,SpringBoot(L)详解

1.创建springboot项目(war)

2.添加tomcat和jstl依赖(pom.xml)

org.apache.tomcat.embed

tomcat-embed-jasper

provided

javax.servlet

jstl

3.配置springmvc前缀和后缀(application.properties)

# 前缀

spring.mvc.view.prefix=/WEB-INF/jsp/

# 后缀

spring.mvc.view.suffix=.jsp

4.日志配置(logback.xml)

%d %p (%file:%line\) - %m%n

UTF-8

class="ch.qos.logback.core.rolling.RollingFileAppender">

log/base.log

log/base.log.%d.%i

64 MB

%d %p (%file:%line\)- %m%n

UTF-8

5.中文乱码过滤器MyFilter.java

方法一

package cn.wuyang.springboot.filter;

import java.io.IOException;

import javax.servlet.Filter;

import javax.servlet.FilterChain;

import javax.servlet.FilterConfig;

import javax.servlet.ServletException;

import javax.servlet.ServletRequest;

import javax.servlet.ServletResponse;

import javax.servlet.annotation.WebFilter;

/**

* 使用注解标注过滤器

*@WebFilter将一个实现了javax.servlet.Filter接口的类定义为过滤器

* 属性filterName声明过滤器的名称,可选

* 属性urlPatterns指定要过滤 的URL模式,也可使用属性value来声明.(指定要过滤的URL模式是必选属性)

*

*/

@WebFilter(filterName="myFilter",urlPatterns="/*")

public class MyFilter implements Filter {

@Override

public void destroy() {

}

@Override

public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)

throws IOException, ServletException {

request.setCharacterEncoding("UTF-8");

response.setCharacterEncoding("UTF-8");

response.setContentType("text/html;charset=utf-8");

chain.doFilter(request, response);

}

@Override

public void init(FilterConfig arg0) throws ServletException {

}

}

方法二

application.properties添加

spring.http.encoding.charset=UTF-8

spring.http.encoding.enabled=true

spring.http.encoding.force=true

6.配置默认启动页 (MyWebAppConfigurer .java)

package cn.wuyang.springboot.config;

import org.springframework.context.annotation.Configuration;

import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;

import org.springframework.web.servlet.config.annotation.WebMvcConfigurerAdapter;

/**

* 1.拦截器:继承WebMvcConfigurerAdapter,并重写 addInterceptors 方法。

* 2.自定义资源映射:继承 WebMvcConfigurerAdapter 并重写方法 addResourceHandlers方法

* 3.默认启动方法重写addViewControllers

*@author wuyang

*

*/

@Configuration

public class MyWebAppConfigurer extends WebMvcConfigurerAdapter {

@Override

public void addViewControllers(ViewControllerRegistry registry) {

registry.addViewController("/").setViewName("admin/index");

super.addViewControllers(registry);

}

}

7.配置热启动pom.xml

首先集成jar包

org.springframework.boot

spring-boot-devtools

true

其次在

org.springframework.boot

spring-boot-maven-plugin

org.springframework

springloaded

1.2.5.RELEASE

8.spring boot banner设置(可选)

_______ _ _______

|\ /||\ /||\ /|( ___ )( ( /|( ____ \ | ) ( || ) ( |( \ / )| ( ) || \ ( || ( \/

| | _ | || | | | \(_) / | (___) || \| || |

| |( )| || | | | \ / | ___ || (\\) || | ____

| || || || | | | ) ( | ( ) || | \ || | \_ )

| () () || (___) | | | | ) ( || ) \ || (___) |

(_______)(_______) \_/ |/ \||/ )_)(_______)

${AnsiColor.BRIGHT_RED}:设置控制台中输出内容的颜色

${application.version}:用来获取MANIFEST.MF文件中的版本号

${application.formatted-version}:格式化后的${application.version}版本信息

${spring-boot.version}:Spring Boot的版本号

${spring-boot.formatted-version}:格式化后的${spring-boot.version}版本信息

9.引入版本号统一

首先在pom.xml 中添加依赖:

org.webjars

webjars-locator

然后增加一个WebJarsController:

package cn.wuyang.springboot.controller.base;

import javax.servlet.http.HttpServletRequest;

import org.springframework.core.io.ClassPathResource;

import org.springframework.http.HttpStatus;

import org.springframework.http.ResponseEntity;

import org.springframework.stereotype.Controller;

import org.springframework.web.bind.annotation.PathVariable;

import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.ResponseBody;

import org.springframework.web.servlet.HandlerMapping;

import org.webjars.WebJarAssetLocator;

/**

* 处理WebJars,自动读取版本号

*

*/

@Controller

public class WebJarsController {

private final WebJarAssetLocator assetLocator = new WebJarAssetLocator();

@ResponseBody

@RequestMapping("/webjarslocator/{webjar}/**")

public ResponseEntity locateWebjarAsset(@PathVariable String webjar, HttpServletRequest request) {

try {

String mvcPrefix = "/webjarslocator/" + webjar + "/"; // This prefix must match the mapping path!

String mvcPath = (String) request.getAttribute(HandlerMapping.PATH_WITHIN_HANDLER_MAPPING_ATTRIBUTE);

String fullPath = assetLocator.getFullPath(webjar, mvcPath.substring(mvcPrefix.length()));

return new ResponseEntity<>(new ClassPathResource(fullPath), HttpStatus.OK);

} catch (Exception e) {

return new ResponseEntity<>(HttpStatus.NOT_FOUND);

}

}

}

10.资源名称md5方式

添加 application.properties 配置文件(或.yml)

spring.resources.chain.strategy.content.enabled=true

spring.resources.chain.strategy.content.paths=/**

所有 /** 请求的静态资源都会被处理。

创建 ResourceUrlProviderController 文件

package cn.wuyang.springboot.controller.base;

import org.springframework.beans.factory.annotation.Autowired;

import org.springframework.web.bind.annotation.ControllerAdvice;

import org.springframework.web.bind.annotation.ModelAttribute;

import org.springframework.web.servlet.resource.ResourceUrlProvider;

/**

* 处理静态资源URL

*

*/

@ControllerAdvice

public class ResourceUrlProviderController {

@Autowired

private ResourceUrlProvider resourceUrlProvider;

@ModelAttribute("urls")

public ResourceUrlProvider urls() {

return this.resourceUrlProvider;

}

}

11.集成jquery

我们只需要在pom.xml 文件中添加jquery的webjars 依赖即可,如下

org.webjars

jquery

3.1.0

未完待续。。。。。。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值