如何在春天实施会话管理,时间为30分钟

时间:2017-10-30 10:31:35

标签: spring-mvc session

在我的帖子中,我尝试了简单的登录功能,无论用户是否有效。如果用户有效,我必须实施会话功能30分钟, 如果用户在30分钟内没有做任何事情让他退出,他必须使用用户名和密码登录。任何人都可以解释我如何在春季mvc中实现会话管理,并且上述要求会话时间为30分钟?

AppConfig

import asyncio
import websockets

async def connect_ws():

    print("websockets.client module defines a simple WebSocket client API::::::")        
    async with websockets.client.connect(full_url,extra_headers=headers_conn1) as websocket:

        print ("starting")
        webSoc_Received = await websocket.recv()
        print ("Ending")
        Decode_data = zlib.decompress(webSoc_Received)      
        print(Decode_data)

asyncio.get_event_loop().run_until_complete(connect_ws())

AppInitializer

from flask import Flask,render_template,json,jsonify
import schedule
import time
import requests,json
from pathlib import Path
import multiprocessing
import time
import sys
import schedule,wget,requests,json,os,errno,shutil,time,config

def get_videos():
	response = requests.get('my api here')
	data = response.json() 
	files =list() # collecting my list of video files 
	l = len(data)
	for i in range(l):
		files.append(data[i]['filename'])
	return files

def checkfor_file(myfiles):
	for i in range(len(myfiles)):
		url = 'http://website.com/static/Video/'+myfiles[i] # checking file exists are not in my folder
		if url:
			os.remove(url)
		else:
			pass
def get_newfiles(myfiles):
	for i in range(len(myfiles)):
		url = config.videos+myfiles[i] 
		filename= wget.download(url)# downloading video files here
def move_files(myfiles):
	for i in range(len(myfiles)):
		file = myfiles[i]
		shutil.move(config.source_files+file,config.destinatin) # moving download folder to another folder
def videos():
	files = set(get_videos()) # getting only unique file only 
	myfiles = list(files)
	checkfor_file(myfiles)
	get_newfiles(myfiles)
	move_files(myfiles)
def job():
	videos()

schedule.every(10).minutes.do(job) # running for every ten minutes
while True:
	schedule.run_pending()
	time.sleep(1)



pi =Flask(__name__)
@pi.route('/')
def index():
	response = requests.get('myapi')
	data = response.json()
	return render_template('main.html',data=data)

位指示

@Configuration
@PropertySource("classpath:spring.properties")    
@EnableWebMvc
@ComponentScan(basePackages = "com.spring")
public class AppConfig extends WebMvcConfigurerAdapter {
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("/resources/**").addResourceLocations("/resources/");
    }

    @Bean
    public ViewResolver viewResolver() {
        InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
        viewResolver.setViewClass(JstlView.class);
        viewResolver.setPrefix("/WEB-INF/views/");
        viewResolver.setSuffix(".jsp");    
        return viewResolver;
    }
    @Bean
    public ResourceBundleMessageSource messageSource() {
        ResourceBundleMessageSource rb = new ResourceBundleMessageSource();
        rb.setBasenames(new String[] { "messages/messages", "messages/validation" });
        return rb;
    }    
    @Override
    public void configureDefaultServletHandling(DefaultServletHandlerConfigurer configurer) {
        configurer.enable();
    }    
}

1 个答案:

答案 0 :(得分:0)

this回答中,它解释了如何通过java配置或xml配置来完成。