9.9

CORS跨域

CORS (Cross-Origin Resource Sharing)是由 W3C 制定的一种跨域资源共享技术标准,其目的 就是为了解决前端的跨域请求。在 Java EE 开发中,最常见的前端跨域请求解决方案是 JSONP,但 是 JSONP 只支持 GET 请求,这是一个很大的缺陷,而 CORS 则支持多种 HTTP 请求方法。

跨域配置。

1:直接在相应的请求方法上加注解
2:全局配置
(ps:毫无卵用,姑且放着,有缘再看)
———————————————————

redis

启动redis服务:

1cd进入redis目录:

redis-server.exe redis.windows.conf
(cmd窗口关闭,意味着服务关闭)

2使用redis:

新开一个cmd窗口,cd进入redis目录,设置客户端:
redis-cli.exe -h 127.0.0.1 -p 6379
auth password

整合springboot

Redis的Java客户端有很多,例如Jedis、JRedis、Spring Data Redis等,Spring Boot借助于Spring Data Redis为Redis提供了开箱即用自动化配置,开发者只需要添加相关依赖并配置Redis连接信息即可,具体整合步骤如下:

1创建springboot项目,引入如下依赖:

    <dependency>    
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>

2配置redis

在application.properties中配置redis连接信息

3自定义序列化器(也可以使用已有的)

4set,get操作

开发者工具与单元测试

devtools实现热部署

1引入依赖

2idea设置

3自定义监控资源

默认情况下,/META-INF /maven, /MET A-INF /resources、/resources、/static、/public 以及/temp!ates 位置下资源的变化并不会触发重启,开发者想要对这些位置进行重定义,在application.properties 中添加如下配置即可:
devtools:
restart:
exclude: static/**

(但是最终还是使用了手动启动的方式2333,ctrl+f9启动)

单元测试

1service测试:
直接@autowired
2controller测试
(略,感觉有点麻烦,以后需要的时候再看)

springboot缓存

Ehcache 2.x 缓存

1添加依赖

org.springframework.boot spring-boot-starter-cache net.sf.ehcache ehcache ####2添加缓存配置文件ehcahe.xml ####3开启缓存 在项目的入口类上添加@EnableCaching 注解开启缓存 ####4创建实例 @Repository @CacheConfig(cacheNames = "book_cache") public class BookDao {
@Cacheable
public Book getBookById(Integer id){
    System.out.println("getBookById");
    Book book =new Book();
    book.setId(id);
    book.setName("三国演义");
    book.setAuthor("罗贯中");
    return book;
}

@CachePut(key = "#book.id")
public Book updateBookById(Book book){
    System.out.println("updateBookById");
    book.setName("三国演义第二部");
    return book;
}

@CacheEvict(key = "#id")
public void deleteBookById(Integer id){
    System.out.println("deleteBookById");
}

}

5测试

@RunWith(SpringRunner.class)
@SpringBootTest
public class CacheTest {

@Autowired
BookDao bookDao;

@Test
public void cacheTest(){
    bookDao.getBookById(999);
    bookDao.getBookById(999);
    bookDao.deleteBookById(999);
    Book b1 =bookDao.getBookById(999);
    System.out.println("b1:"+b1);
    Book b2 =new Book();
    b2.setName("三国演义");
    b2.setAuthor("罗贯中");
    b2.setId(999);
    bookDao.updateBookById(b2);
    Book b3 =bookDao.getBookById(999);
    System.out.println("b3:"+b3);
}

}

redis单机缓存

1添加依赖

redis+cache

2配置

直接在application.properties中配置
spring.cache.cache-names=c1,c2
spring.cache.redis.time-to-live=1800s
spring.redis.database=0
spring.redis.host=127.0.0.1
spring.redis.port=6379
spring.redis.password=123456
spring.redis.jedis.pool.max-active=8
spring.redis.jedis.pool.min-idle=8
spring.redis.jedis.pool.max-wait=-1ms

3开启缓存

在项目的入口类上添加@EnableCaching 注解开启缓存

posted @ 2019-09-09 11:34  django0  阅读(338)  评论(0编辑  收藏  举报