Filter过滤器,过滤后登陆界面无法正常跳转,好像一直重定向到登陆界面,就大神看看

这是我Filter的代码

public class FilterServlet extends HttpServlet implements Filter {
private FilterConfig config;
public void init(FilterConfig config) throws ServletException {
// TODO Auto-generated method stub

    this.config=config;
    System.out.print("过滤器已执行");
}

public void doFilter(ServletRequest request, ServletResponse response,
        FilterChain chain) throws IOException, ServletException {
    // TODO Auto-generated method stub
    //获取Filter的配置参数
    String loginpage= config.getInitParameter("loginpage");
    HttpServletRequest req = (HttpServletRequest) request;
    String requestPath = req.getServletPath();

    //StringBuffer fileURL = req.getRequestURL();
    // 存储上下文路径
    request.setAttribute("path", req.getContextPath());

    if(!requestPath.endsWith(loginpage)){


             // 跳转到登录页面
            request.getRequestDispatcher(loginpage)
        .forward(request, response);
    }else{
            chain.doFilter(request, response);

}
}


/**
 * Constructor of the object.
 */
public FilterServlet() {
    super();
}

/**
 * Destruction of the servlet. <br>
 */
public void destroy() {
    super.destroy(); // Just puts "destroy" string in log
    // Put your code here
    this.config = null;
}

public void init() throws ServletException {
    // TODO Auto-generated method stub

}
}

下面是我再web.xml文件中配置的Filter
pathfilter
com.personnel.filter.FilterServlet

loginpage
/login.jsp



pathfilter
<!-- struts2匹配根路径下的全部请求,拦截所以用户请求 ,在日志中简要记录请求的信息-->
/*

我只要把if的内容注释掉就能正常跳转,但是过滤功能无法实现,如上代码的过滤功能能够实现,无法点开除login.jsp以外的界面 ,但是按登录按钮无法进行正常的跳转,一直重定向为登录界面,求大神解答

3个回答

 通过你的if判断,现在把不是链接到登陆页面的链接全都换成了到登陆页面,要过滤的话通过session拦截未登录的就行了
woshicaiweina
woshicaiweina 回复lzj0327: 好的,谢谢了
3 年多之前 回复
lzj0327
lzj0327 回复woshicaiweina: 在登陆方法中session.setAttribute(“user”,xxx);在过滤器中object obj=session.getAttribute("user");然后if(obj==null){回登陆页面}else{放行}
3 年多之前 回复
woshicaiweina
woshicaiweina 回复lzj0327: 即是说我现在filter中的if判断不需要吗?先让他正常登录,然后把用户的信息存到session里面,在filter中判断师傅存在??第一次写过滤一脸懵逼,能麻烦一下具体应该改在哪里呢??
3 年多之前 回复
lzj0327
lzj0327 回复woshicaiweina: 假如是登陆链接,写个if放他过去
3 年多之前 回复
lzj0327
lzj0327 回复woshicaiweina: 只要在session放登陆的user,在过滤器中根据session看user是不是存在就行了
3 年多之前 回复
woshicaiweina
woshicaiweina 回复lzj0327: 就是过滤没有登陆的用户,防止未登录用户直接查看其它页面
3 年多之前 回复
lzj0327
lzj0327 回复woshicaiweina: 你这个过滤器想要过滤什么?
3 年多之前 回复
woshicaiweina
woshicaiweina 回复lzj0327: 那我应该怎么改呢,我在想能不能把action配置到web.xml的filter配置中去吗,然后在判断条件中加上如果跳转到action就进行正常登录
3 年多之前 回复
lzj0327
lzj0327 回复woshicaiweina: 当然不能正常登陆了,无论你干什么都是跳转到登陆页面
3 年多之前 回复
woshicaiweina
woshicaiweina 是在if判断条件里面再写上seeion.getAuttribute("jsp中用户名的id") == null是吧,可是我上面的代码的是实现了把不是链接到登陆页面的链接全都换成了到登陆页面,但是无法进行正常登录了,这是怎么回事,按登录按钮就是没有反应
3 年多之前 回复


pathfilter
com.personnel.filter.FilterServlet

loginpage
/login.jsp



pathfilter
<!-- struts2匹配根路径下的全部请求,拦截所以用户请求 ,在日志中简要记录请求的信息-->
/*

web.xml配置是这样的

一般都是登录成功后,将当前用户信息放入session,然后拦截所有url,透过判断session中的用户是否为空以及是否有权限来判断是否放行

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
怎么样用filter过滤器来选择js中的图片。
怎么样用filter过滤器来选择js中的图片。在http转到https中,我现在需要通过filter来把js中的图片过滤出来。
Filter过滤器的重定向问题
FirstFilter过滤first.jsp 和second.jsp。。。通过重定向到second.jsp... 我不明白这个死循环为什么还能执行 System.out.println("doFilter----first---end");??不是先执行 System.out.println("doFilter........first.");之后就重定向到second.jsp,然后在执行second.jsp的过滤器,即一直是输出System.out.println("doFilter........first.");。。。。。求大神们帮助。。。。。 ![![图片说明](https://img-ask.csdn.net/upload/201506/04/1433392871_948269.jpg) web.xml配置的路径如下:===== 图片说明](https://img-ask.csdn.net/upload/201506/04/1433392913_866112.jpg)
jsp添加filter过滤器,网页加载js文件时,中文显示乱码怎么解决?
jsp添加filter过滤器,网页加载js文件时,中文显示乱码怎么解决? 这两天在用eclipse改jsp网页时,加了个filter,发现加上去以后,网页加载js时,js中的内容,包括注释等,中文都成了乱码。 除了js中的内容,jsp页面上的原本的内容不受影响,去掉filter则是正常的。 已经尝试了很多方法,比如filter中控制好编码方式,或者将js重新以utf-8的方式保存等,以及引入的时候指定编码方式,都试过了,都没用。 求大神续命哈! ![图片说明](https://img-ask.csdn.net/upload/201909/21/1569032473_306110.jpg) ![图片说明](https://img-ask.csdn.net/upload/201909/21/1569032480_947873.jpg)
新手求助:filter过滤器的问题
web.xml配置 ``` <filter> <filter-name>loginInterceptor</filter-name> <filter-class>com.cbt.Interceptor.LoginInterceptor</filter-class> <init-param> <param-name>loginPage</param-name> <param-value>main_login</param-value> </init-param> </filter> <filter-mapping> <filter-name>loginInterceptor</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>loginInterceptor</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> <filter-mapping> <filter-name>loginInterceptor</filter-name> <url-pattern>*.html</url-pattern> </filter-mapping> <servlet> <servlet-name>cbtconsole</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <init-param> <param-name>contextConfigLocation</param-name> <param-value>classpath:spring/springmvc.xml</param-value> </init-param> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>cbtconsole</servlet-name> <url-pattern>/</url-pattern> </servlet-mapping> ``` springmvc配置 ``` <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver"> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean> <!-- 资源映射:因为servlet-mapping会拦截所有请求.需要过滤掉静态资源请求 --> <mvc:resources location="/WEB-INF/css/" mapping="/css/**" /> <mvc:resources location="/WEB-INF/js/" mapping="/js/**" /> ``` 过滤器代码 ``` @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest httpServletRequest = (HttpServletRequest) request; HttpServletResponse httpServletResponse = (HttpServletResponse) response; String urlPath = httpServletRequest.getRequestURL().toString(); String value = jedisClient.get("key1"); System.out.println(urlPath+"---"+value); if (value !=null) { chain.doFilter(request, response); }else{ httpServletResponse.sendRedirect(urlPath + loginPage); } } @Override public void init(FilterConfig config) throws ServletException { //context-param –> listener –> filter –> servlet loginPage = config.getInitParameter("loginPage"); ServletContext context = config.getServletContext(); ApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(context); jedisClient = (JedisClient) ctx.getBean("jedisClient"); } ``` 输入localhost:8080进入过滤器后直接死循环了. 求大神指点
filter过滤器进入死循环怎么解决?
代码如下: public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { HttpServletRequest req=(HttpServletRequest)request; HttpServletResponse res=(HttpServletResponse)response; Object user =req.getSession().getAttribute("userName"); System.out.println("过滤中"); String urlString = req.getRequestURI(); if(urlString.endsWith("login.jsp")||urlString.endsWith("LoginFilter")){ chain.doFilter(request,response); return; } else if(user==null){ res.sendRedirect("../jsp/login/login.jsp"); }else{ chain.doFilter(request, response); } } 配置如下: <filter> <filter-name>LoginFilter</filter-name> <filter-class>com.gpeight.hotel.filter.LoginFilter</filter-class> </filter> <filter-mapping> <filter-name>LoginFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping>
为什么勾选filter过滤器,fiddler运行后就会报错 提示吊销服务器已脱机,一直显示弹窗
为什么fiddler报错 吊销服务器已脱机,一直显示弹窗 ``` Session #451: The server (cm.mediav.com) presented a certificate that did not validate, due to RemoteCertificateChainErrors. 0 - 吊销功能无法检查证书是否吊销。 1 - 由于吊销服务器已脱机,吊销功能无法检查吊销。 ```
如何配置filter过滤器,如何放行而不是全部拦截
配置过滤器次次失败,比如我通过servlet验证登录,然后我允许验证登录的servlet请求通过以及注册页面,我该如何配置 web.xml ``` <filter> <filter-name>loginFilter</filter-name> <filter-class>com.lero.filter.LoginFilter</filter-class> </filter> <filter-mapping> <filter-name>loginFilter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ``` 为什么我写的拦截器跳不到login.jsp同事resister.jsp也通过不了 ``` public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) servletRequest; HttpServletResponse response = (HttpServletResponse) servletResponse; HttpSession session = request.getSession(); Object object = session.getAttribute("name"); String path = request.getServletPath(); if ( path.indexOf("register") >-1) { filterChain.doFilter(servletRequest, servletResponse); return; } else { response.sendRedirect("login.jsp"); } } ``` 然后我这样写虽然都通过了,但页面确实空白 ``` public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { HttpServletRequest request = (HttpServletRequest) servletRequest; HttpServletResponse response = (HttpServletResponse) servletResponse; HttpSession session = request.getSession(); Object object = session.getAttribute("name"); String path = request.getServletPath(); if ( path.indexOf("login") >=0) { filterChain.doFilter(request, response); return; } else if(path.indexOf("redister.jsp")>-1){ filterChain.doFilter(request, response); } } ```
Filter 过滤器 中 注入 JavaBean 属性
Filter 过滤器 中 怎么 注入 JavaBean ...用Spring 的 注入方式 好行 不行啊... <bean id="logincheackFilter" class="com.sun.business.filter.IndexJspFilter"> <property name="indexlodingDAO"> <ref bean="indexlodingDAO" /> </property> </bean> 在 web.xml 中 配置 <init-param> <param-name>indexlodingDAO</param-name> <param-value>${indexlodingDAO}</param-value> </init-param> 我现在 需要 在 IndexJspFilter 注入 indexlodingDAO 怎么解决...请教
JSP过滤器无法跳转,tomcat的本地测试
我的JSP没有前台只有包里写好的java类,用web.xml进行跳转 web.xml如下: <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" version="2.5" metadata-complete="true"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <listener> <listener-class>(此处省略包名).StatisticsContextListener</listener-class> </listener> <filter> <filter-name>charsetfileter</filter-name> <filter-class>(此处省略包名).CharSetFilter</filter-class> </filter> <filter-mapping> <filter-name>charsetfileter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app> charsetfileter.java: public class CharSetFilter implements Filter { public void destroy() { } 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); } public void init(FilterConfig arg0) throws ServletException { System.out.println("init"); } } 问一下 chain.doFilter(request, response);这个方法怎么才能跳转到src文件下的包里的java方法?
Filter 过滤器 中 注入属性 ...
web.xml <filter> <filter-name>IndexJSPFilter</filter-name> <filter-class> com.sun.business.filter.IndexJspFilter </filter-class> <init-param> <param-name>indexlodingDAO</param-name> <param-value>${indexlodingDAO}</param-value> </init-param> </filter> <filter-mapping> <filter-name>IndexJSPFilter</filter-name> <url-pattern>/index.jsp</url-pattern> </filter-mapping> application.xml <bean id="indexlodingDAO" class="com.sun.system.dao.IndexJSPLoDingDAO"> web.xml 中 配置 过滤器 中在 IndexJspFilter 中 注入一个 Spring 的 dao bean ... 请问怎样 把 这个 indexlodingDAO 注入到 IndexJSPFilter 中 去 ...
web.xml过滤器中执行顺序的问题
<filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter> <filter-name>closeSession</filter-name> <filter-class>com.oracle.xiaomi.filter.SessionCloseFilter</filter-class> </filter> <filter-mapping> <filter-name>closeSession</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> ``` ``` 我在做struts2和hibernate整合的时候写了一个商品更新功能。更新完以后返回商品列表商品,发现商品更新后的数据不正常,但是数据库里的数据正常,刷新商品页面更新的商品数据会一直发生变化,再次更新会报a different object with the same identifier value was already associated with the session这个异常。 我感觉是更新后session没关闭,所以显示数据混乱,拿到的有session缓存中的数据,但是过滤器中session我已经关闭了。后来我把关闭session的过滤器写在了struts2核心过滤器的上面,就好了,也不会出现数据混乱和报异常了。现在很纠结,这和过滤器的执行顺序有关吗,同学的就不会出现问题。求大牛解答
各位大侠,帮我看一下程序,stm32 CAN过滤器功能,过滤器组大于4就没有作用了,为什么?
GPIO_InitTypeDef GPIO_InitStructure; CAN_InitTypeDef CAN_InitStructure; CAN_FilterInitTypeDef CAN_FilterInitStructure1,CAN_FilterInitStructure2,CAN_FilterInitStructure3,CAN_FilterInitStructure4; CAN_FilterInitTypeDef CAN_FilterInitStructure5,CAN_FilterInitStructure6; NVIC_InitTypeDef NVIC_InitStructure; unsigned short mask; unsigned short filter_data1[] = {0x500, 0x501, 0x502, 0x503, 0x504, 0x505, 0x506, 0x507, 0x508, 0x509, 0x50A, 0x50B, 0x50C, 0x50D, 0x50E, 0x50F}; unsigned short filter_data2[] = {0x510, 0x511, 0x512, 0x513, 0x514, 0x515, 0x516, 0x517, 0x518, 0x519, 0x51A, 0x51B, 0x51C, 0x51D, 0x51E, 0x51F}; unsigned short filter_data3[] = {0x520, 0x521, 0x522, 0x523, 0x524, 0x525, 0x526, 0x527, 0x528, 0x529, 0x52A, 0x52B, 0x52C, 0x52D, 0x52E, 0x52F}; unsigned short filter_data4[] = {0x530, 0x531, 0x532, 0x533, 0x534, 0x535, 0x536, 0x537, 0x538, 0x539, 0x53A, 0x53B, 0x53C, 0x53D, 0x53E, 0x53F}; unsigned short filter_data5[] = {0x4E0,0x4E3,0x5E8,0x540}; //使能相关时钟 RCC_AHB1PeriphClockCmd(RCC_AHB1Periph_GPIOA, ENABLE);//使能PORTA时钟 RCC_APB1PeriphClockCmd(RCC_APB1Periph_CAN1, ENABLE);//使能CAN1时钟 //初始化GPIO GPIO_InitStructure.GPIO_Pin = GPIO_Pin_11| GPIO_Pin_12; GPIO_InitStructure.GPIO_Mode = GPIO_Mode_AF;//复用功能 GPIO_InitStructure.GPIO_OType = GPIO_OType_PP;//推挽输出 GPIO_InitStructure.GPIO_Speed = GPIO_Speed_100MHz;//100MHz GPIO_InitStructure.GPIO_PuPd = GPIO_PuPd_UP;//上拉 GPIO_Init(GPIOA, &GPIO_InitStructure);//初始化PA11,PA12 //引脚复用映射配置 GPIO_PinAFConfig(GPIOA,GPIO_PinSource11,GPIO_AF_CAN1); //GPIOA11复用为CAN1 GPIO_PinAFConfig(GPIOA,GPIO_PinSource12,GPIO_AF_CAN1); //GPIOA12复用为CAN1 //CAN单元设置 CAN_InitStructure.CAN_TTCM=DISABLE; //非时间触发通信模式 CAN_InitStructure.CAN_ABOM=DISABLE; //软件自动离线管理 CAN_InitStructure.CAN_AWUM=DISABLE;//睡眠模式通过软件唤醒(清除CAN->MCR的SLEEP位) CAN_InitStructure.CAN_NART=ENABLE; //禁止报文自动传送 CAN_InitStructure.CAN_RFLM=DISABLE; //报文不锁定,新的覆盖旧的 CAN_InitStructure.CAN_TXFP=DISABLE; //优先级由报文标识符决定 CAN_InitStructure.CAN_Mode= CAN_Mode_Normal; //模式设置 CAN_InitStructure.CAN_SJW=CAN_SJW_1tq; //重新同步跳跃宽度(Tsjw)为tsjw+1个时间单位 CAN_SJW_1tq~CAN_SJW_4tq CAN_InitStructure.CAN_BS1=CAN_BS1_7tq; //Tbs1范围CAN_BS1_1tq ~CAN_BS1_16tq CAN_InitStructure.CAN_BS2=CAN_BS2_6tq;//Tbs2范围CAN_BS2_1tq ~ CAN_BS2_8tq CAN_InitStructure.CAN_Prescaler=6; //分频系数(Fdiv)为brp+1 CAN_Init(CAN1, &CAN_InitStructure); // 初始化CAN1 //配置过滤器 CAN_FilterInitStructure1.CAN_FilterNumber=0; //过滤器0 CAN_FilterInitStructure1.CAN_FilterMode=CAN_FilterMode_IdMask; CAN_FilterInitStructure1.CAN_FilterScale=CAN_FilterScale_32bit; //32位 CAN_FilterInitStructure1.CAN_FilterIdHigh=filter_data1[0] << 5;////32位ID CAN_FilterInitStructure1.CAN_FilterIdLow=0x0000; mask =0xff0; // CAN_FilterInitStructure1.CAN_FilterMaskIdHigh= (mask << 5);//32位MASK CAN_FilterInitStructure1.CAN_FilterMaskIdLow=0x0000 | 0x02; CAN_FilterInitStructure1.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure1.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure1);//滤波器初始化 //配置过滤器 CAN_FilterInitStructure2.CAN_FilterNumber=1; //过滤器1 CAN_FilterInitStructure2.CAN_FilterMode=CAN_FilterMode_IdMask; CAN_FilterInitStructure2.CAN_FilterScale=CAN_FilterScale_32bit; //32位 CAN_FilterInitStructure2.CAN_FilterIdHigh=filter_data2[0] << 5;////32位ID CAN_FilterInitStructure2.CAN_FilterIdLow=0x0000; mask =0xff0; // CAN_FilterInitStructure2.CAN_FilterMaskIdHigh= (mask << 5);//32位MASK CAN_FilterInitStructure2.CAN_FilterMaskIdLow=0x0000 | 0x02; CAN_FilterInitStructure2.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure2.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure2);//滤波器初始化 //配置过滤器 CAN_FilterInitStructure3.CAN_FilterNumber=2; //过滤器2 CAN_FilterInitStructure3.CAN_FilterMode=CAN_FilterMode_IdMask; CAN_FilterInitStructure3.CAN_FilterScale=CAN_FilterScale_32bit; //32位 CAN_FilterInitStructure3.CAN_FilterIdHigh=filter_data3[0] << 5;////32位ID CAN_FilterInitStructure3.CAN_FilterIdLow=0x0000; mask =0xff0; // CAN_FilterInitStructure3.CAN_FilterMaskIdHigh= (mask << 5);//32位MASK CAN_FilterInitStructure3.CAN_FilterMaskIdLow=0x0000 | 0x02; CAN_FilterInitStructure3.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure3.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure3);//滤波器初始化 //配置过滤器 CAN_FilterInitStructure4.CAN_FilterNumber=3; //过滤器3 CAN_FilterInitStructure4.CAN_FilterMode=CAN_FilterMode_IdMask; CAN_FilterInitStructure4.CAN_FilterScale=CAN_FilterScale_32bit; //32位 CAN_FilterInitStructure4.CAN_FilterIdHigh=filter_data4[0] << 5;////32位ID CAN_FilterInitStructure4.CAN_FilterIdLow=0x0000; mask =0xff0; // CAN_FilterInitStructure4.CAN_FilterMaskIdHigh= (mask << 5);//32位MASK CAN_FilterInitStructure4.CAN_FilterMaskIdLow=0x0000 | 0x02; CAN_FilterInitStructure4.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure4.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure4);//滤波器初始化 // //配置过滤器 CAN_FilterInitStructure5.CAN_FilterNumber=4; //过滤器4 CAN_FilterInitStructure5.CAN_FilterMode=CAN_FilterMode_IdList; CAN_FilterInitStructure5.CAN_FilterScale=CAN_FilterScale_16bit; //32位 CAN_FilterInitStructure5.CAN_FilterIdHigh=filter_data5[0] << 5;////32位ID CAN_FilterInitStructure5.CAN_FilterIdLow=0x0000 | CAN_ID_STD; CAN_FilterInitStructure5.CAN_FilterMaskIdHigh= (filter_data5[2] << 5);//32位MASK CAN_FilterInitStructure5.CAN_FilterMaskIdLow=0x0000 | CAN_ID_STD; CAN_FilterInitStructure5.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure5.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure5);//滤波器初始化 //配置过滤器 CAN_FilterInitStructure6.CAN_FilterNumber=5; //过滤器5 只要过滤器组大于4,次滤波器组就没有作用了 ????????????? CAN_FilterInitStructure6.CAN_FilterMode=CAN_FilterMode_IdList; CAN_FilterInitStructure6.CAN_FilterScale=CAN_FilterScale_32bit; //32位 CAN_FilterInitStructure6.CAN_FilterIdHigh=filter_data5[2] << 5;////32位ID CAN_FilterInitStructure6.CAN_FilterIdLow=0x0000 | CAN_ID_STD; CAN_FilterInitStructure6.CAN_FilterMaskIdHigh= (filter_data5[3] << 5);//32位MASK CAN_FilterInitStructure6.CAN_FilterMaskIdLow=0x0000 | CAN_ID_STD; CAN_FilterInitStructure6.CAN_FilterFIFOAssignment=CAN_Filter_FIFO0;//过滤器0关联到FIFO0 CAN_FilterInitStructure6.CAN_FilterActivation=ENABLE; //激活过滤器0 CAN_FilterInit(&CAN_FilterInitStructure6);//滤波器初始化 CAN_ITConfig(CAN1,CAN_IT_FMP0,ENABLE);//FIFO0消息挂号中断允许. NVIC_InitStructure.NVIC_IRQChannel = CAN1_RX0_IRQn; NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 0; // 主优先级为1 NVIC_InitStructure.NVIC_IRQChannelSubPriority = 3; // 次优先级为0 NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; NVIC_Init(&NVIC_InitStructure);
为什么shiro使用session过期时间在chrome浏览器设置无效,timeout一直是-1000,火狐浏览器则可以设置
**为什么shiro使用session过期时间在chrome浏览器设置无效,timeout一直是-1000,火狐浏览器则可以设置** ``` <!-- 配置shiro的过滤器工厂类,id- shiroFilter要和我们在web.xml中配置的过滤器一致 --> <bean id="shiroFilter" class="org.apache.shiro.spring.web.ShiroFilterFactoryBean"> <!-- 调用我们配置的权限管理器 --> <property name="securityManager" ref="securityManager" /> <!-- 配置我们的登录请求地址 --> <property name="loginUrl" value="/login" /> <!-- 如果您请求的资源不再您的权限范围,则跳转到/403请求地址 --> <property name="unauthorizedUrl" value="/unauthorized" /> <!-- 退出 --> <property name="filters"> <util:map> <entry key="logout" value-ref="logoutFilter" /> </util:map> </property> <!-- 权限配置 --> <property name="filterChainDefinitions"> <value> <!-- anon表示此地址不需要任何权限即可访问 --> /login=anon /index=anon /static/**=anon <!-- 只对业务功能进行权限管理,权限配置本身不需要没有做权限要求,这样做是为了不让初学者混淆 --> /config/**=anon /doLogout=logout <!--所有的请求(除去配置的静态资源请求或请求地址为anon的请求)都要通过登录验证,如果未登录则跳到/login --> /** = authc </value> </property> </bean> <!-- 退出过滤器 --> <bean id="logoutFilter" class="org.apache.shiro.web.filter.authc.LogoutFilter"> <property name="redirectUrl" value="/index" /> </bean> <!-- 会话ID生成器 --> <bean id="sessionIdGenerator" class="org.apache.shiro.session.mgt.eis.JavaUuidSessionIdGenerator" /> <!-- 会话Cookie模板 关闭浏览器立即失效 --> <bean id="sessionIdCookie" class="org.apache.shiro.web.servlet.SimpleCookie"> <constructor-arg value="sid" /> <property name="httpOnly" value="true" /> <property name="maxAge" value="-1" /> </bean> <!-- 会话DAO --> <bean id="sessionDAO" class="org.apache.shiro.session.mgt.eis.EnterpriseCacheSessionDAO"> <property name="sessionIdGenerator" ref="sessionIdGenerator" /> </bean> <!-- 会话验证调度器,每30分钟执行一次验证 ,设定会话超时及保存 --> <bean name="sessionValidationScheduler" class="org.apache.shiro.session.mgt.ExecutorServiceSessionValidationScheduler"> <property name="interval" value="1800000" /> <property name="sessionManager" ref="sessionManager" /> </bean> <!-- 会话管理器 --> <bean id="sessionManager" class="org.apache.shiro.web.session.mgt.DefaultWebSessionManager"> <!-- 全局会话超时时间(单位毫秒),默认30分钟 --> <property name="globalSessionTimeout" value="1800000" /> <property name="deleteInvalidSessions" value="true" /> <property name="sessionValidationSchedulerEnabled" value="true" /> <property name="sessionValidationScheduler" ref="sessionValidationScheduler" /> <property name="sessionDAO" ref="sessionDAO" /> <property name="sessionIdCookieEnabled" value="true" /> <property name="sessionIdCookie" ref="sessionIdCookie" /> </bean> <!-- 安全管理器 --> <bean id="securityManager" class="org.apache.shiro.web.mgt.DefaultWebSecurityManager"> <property name="realm" ref="databaseRealm" /> <property name="sessionManager" ref="sessionManager" /> </bean> ``` globalSessionTimeout设置为10000(10秒过期)在chrome无效,在火狐就可以,进入AbstractValidatingSessionManager源码中查看,获取到的invalidCount一直是0,并且timeout一直是-1000,所以session一直不会过期,不知道怎么解决
java springcloud项目在微服务中,在filter过滤器使用RedisTemplate,报错,请大佬帮我看下?
java.lang.ClassCastException: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext cannot be cast to org.springframework.web.context.support.XmlWebApplicationContext at com.knowind.inteBPM.config.AddAuthFilter.init(AddAuthFilter.java:30) ~[classes/:na] at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279) ~[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:109) ~[tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4590) [tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5233) [tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) [tomcat-embed-core-8.5.14.jar:8.5.14] at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) [tomcat-embed-core-8.5.14.jar:8.5.14] at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) [na:1.8.0_192] at java.util.concurrent.FutureTask.run(FutureTask.java) [na:1.8.0_192] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_192] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_192] at java.lang.Thread.run(Thread.java:748) [na:1.8.0_192] 在filter的init方法中加入了下面代码,启动就报错了 ``` public class AddAuthFilter implements Filter { RedisTemplate redisTemplate; @Override public void init(FilterConfig filterConfig) throws ServletException { ServletContext sc = filterConfig.getServletContext(); XmlWebApplicationContext ctx = (XmlWebApplicationContext) WebApplicationContextUtils.getWebApplicationContext(sc); if (ctx != null && ctx.getBean("redisTemplate") != null && redisTemplate == null) { redisTemplate = (RedisTemplate) ctx.getBean("redisTemplate"); } } } ```
javax.servlet.Filter 过滤器使用的疑问
<p>import javax.servlet.Filter;<br>//已经登录 或 或文件上传<br> public void doFilter(ServletRequest request, ServletResponse response,<br> FilterChain fc) throws IOException, ServletException {</p> <p>        HttpServletRequest hreq = (HttpServletRequest) request;<br>        HttpSession session = hreq.getSession();</p> <p>        String toUrl = hreq.getRequestURL().toString();<br>        int result  = toUrl.indexOf("!upload");</p> <p> </p> <p>         if (( result==-1) {</p> <p>              request.getRequestDispatcher("/login.jsp").forward(request, response);</p> <p>        }else{<br>            //已经登录 或 或文件上传<br>          <span style="color: #ff0000;">  fc.doFilter(request, response);</span><br>        }<br>    }</p> <p> </p> <p> </p> <p>请问下<span style="color: #ff0000;">fc.doFilter(request, response);  是调用过滤器执行接下来的其他过滤器吗<br></span></p> <p> </p>
filter过滤器的奇怪问题
配置了一个filter,代码: public class ThreadFilter implements Filter{ public void init(FilterConfig filterConfig) throws ServletException { } public void destroy() { } public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)throws IOException, ServletException { HttpServletRequest req=(HttpServletRequest)request; System.out.println(req.getSession().getId()); Threadbean.getInstance().setContext(req.getSession().getId()); System.out.println("开始了..."); chain.doFilter(request, response); } } 一开始启动tomcat到主页的时候filter会拦截两次,输出了两次信息,我的主页并没有使用action转发,后面就碰到有时候拦截不到的问题,信息没有输出,配置如下: <filter> <filter-name>threadfilter </filter-name> <filter-class>com.shop.util.ThreadFilter </filter-class> </filter> <filter-mapping> <filter-name>threadfilter </filter-name> <url-pattern>/* </url-pattern> </filter-mapping> 是代码出错了还是配置出错了,filter要注意哪些细节上的问题?
禁止浏览器缓存的过滤器问题
刚入门,写了一个禁止浏览器缓存的过滤器 以下是代码: ``` public void doFilter(ServletRequest req, ServletResponse resp, FilterChain chain) throws IOException, ServletException { HttpServletRequest request=(HttpServletRequest) req; HttpServletResponse response=(HttpServletResponse) resp; response.setDateHeader("Expires", -1); response.setHeader("Cache-Control", "no-cache"); response.setHeader("Pragma", "no-cache"); chain.doFilter(request, response); } ``` ``` <filter> <filter-name>NoCacheFilter</filter-name> <filter-class>cn.my.web.filter.NoCacheFilter</filter-class> </filter> <filter-mapping> <filter-name>NoCacheFilter</filter-name> <url-pattern>*.jsp</url-pattern> </filter-mapping> ``` 但是过滤器没反应,求解。代码测过访问jsp时有进入过滤器,但是依旧有缓存,是我写错了么?
springboot+shiro认证成功后无法跳转successUrl
这是Filter ``` @Bean(name = "shiroFilter") public ShiroFilterFactoryBean shiroFilterFactoryBean() { ShiroFilterFactoryBean shiroFilterFactoryBean = new ShiroFilterFactoryBean(); shiroFilterFactoryBean.setSecurityManager(securityManager()); Map<String, Filter> filters = new LinkedHashMap<>(); //自定义Filter filters.put("authc", new ShiroFormAuthenticationFilter()); shiroFilterFactoryBean.setFilters(filters); Map<String, String> filterChainDefinitionManager = new LinkedHashMap<String, String>(); filterChainDefinitionManager.put("/","authc"); shiroFilterFactoryBean.setLoginUrl("/"); shiroFilterFactoryBean.setFilterChainDefinitionMap(filterChainDefinitionManager); shiroFilterFactoryBean.setSuccessUrl("/Success.do"); shiroFilterFactoryBean.setUnauthorizedUrl("/403"); return shiroFilterFactoryBean; } ``` 这个是我的自定义继承FormAuthenticationFilter ``` public class ShiroFormAuthenticationFilter extends FormAuthenticationFilter { @Override protected boolean onLoginSuccess(AuthenticationToken token, Subject subject, ServletRequest request, ServletResponse response) throws Exception { System.out.println("------------------------"); String successUrl = "/admin/access/index.html";//我是直接写死了跳转链接 WebUtils.issueRedirect(request,response,successUrl); return false;//返回false表示执行链结束 } } ``` 现在问题是我看了网上的教程,说是要继承重新onLoginSuccess方法,但是我的这个自定义的Filter始终没有被执行,SuccessUrl也一直没有跳转 各位大佬 求帮助。。。
ajax向servlet请求时,filter拦截后进行字符过滤后不能跳转到servlet中
RT,代码如下: js: ``` <script> $(function() { $('#login_button').unbind("click").bind("click",function() { $.ajax({ type : 'POST', url : '${pageContext.request.contextPath}/userBiz?action=login', data : $('#login_form').serialize(), success : function(data) { if(data==1){ alert("登陆成功"); location.reload(); } if (data== 2) { alert("用户名或密码错误,请重新登录"); } }, error :function(XMLHttpRequest, textStatus, errorThrown,dataType){ alert(XMLHttpRequest.responseText); alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); alert(errorThrown); alert(dataType); } }) }) }) </script> ``` filter: ``` package com.nun.ha.web.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; import javax.servlet.annotation.WebInitParam; import javax.servlet.http.HttpServlet; @WebFilter(filterName="EncodingFilter",value="/*",initParams={@WebInitParam(name="encoding",value="utf-8")}) public class EncodingFilter extends HttpServlet implements Filter{ private static final long serialVersionUID = 1L; private String encoding; public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { request.setCharacterEncoding(this.encoding); response.setCharacterEncoding(this.encoding); chain.doFilter(request, response); } public void init(FilterConfig config) throws ServletException { this.encoding = config.getInitParameter("encoding"); } } ```
Java学习的正确打开方式
在博主认为,对于入门级学习java的最佳学习方法莫过于视频+博客+书籍+总结,前三者博主将淋漓尽致地挥毫于这篇博客文章中,至于总结在于个人,实际上越到后面你会发现学习的最好方式就是阅读参考官方文档其次就是国内的书籍,博客次之,这又是一个层次了,这里暂时不提后面再谈。博主将为各位入门java保驾护航,各位只管冲鸭!!!上天是公平的,只要不辜负时间,时间自然不会辜负你。 何谓学习?博主所理解的学习,它是一个过程,是一个不断累积、不断沉淀、不断总结、善于传达自己的个人见解以及乐于分享的过程。
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
有哪些让程序员受益终生的建议
从业五年多,辗转两个大厂,出过书,创过业,从技术小白成长为基层管理,联合几个业内大牛回答下这个问题,希望能帮到大家,记得帮我点赞哦。 敲黑板!!!读了这篇文章,你将知道如何才能进大厂,如何实现财务自由,如何在工作中游刃有余,这篇文章很长,但绝对是精品,记得帮我点赞哦!!!! 一腔肺腑之言,能看进去多少,就看你自己了!!! 目录: 在校生篇: 为什么要尽量进大厂? 如何选择语言及方...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
linux系列之常用运维命令整理笔录
本博客记录工作中需要的linux运维命令,大学时候开始接触linux,会一些基本操作,可是都没有整理起来,加上是做开发,不做运维,有些命令忘记了,所以现在整理成博客,当然vi,文件操作等就不介绍了,慢慢积累一些其它拓展的命令,博客不定时更新 free -m 其中:m表示兆,也可以用g,注意都要小写 Men:表示物理内存统计 total:表示物理内存总数(total=used+free) use...
比特币原理详解
一、什么是比特币 比特币是一种电子货币,是一种基于密码学的货币,在2008年11月1日由中本聪发表比特币白皮书,文中提出了一种去中心化的电子记账系统,我们平时的电子现金是银行来记账,因为银行的背后是国家信用。去中心化电子记账系统是参与者共同记账。比特币可以防止主权危机、信用风险。其好处不多做赘述,这一层面介绍的文章很多,本文主要从更深层的技术原理角度进行介绍。 二、问题引入 假设现有4个人...
程序员接私活怎样防止做完了不给钱?
首先跟大家说明一点,我们做 IT 类的外包开发,是非标品开发,所以很有可能在开发过程中会有这样那样的需求修改,而这种需求修改很容易造成扯皮,进而影响到费用支付,甚至出现做完了项目收不到钱的情况。 那么,怎么保证自己的薪酬安全呢? 我们在开工前,一定要做好一些证据方面的准备(也就是“讨薪”的理论依据),这其中最重要的就是需求文档和验收标准。一定要让需求方提供这两个文档资料作为开发的基础。之后开发...
网页实现一个简单的音乐播放器(大佬别看。(⊙﹏⊙))
今天闲着无事,就想写点东西。然后听了下歌,就打算写个播放器。 于是乎用h5 audio的加上js简单的播放器完工了。 演示地点演示 html代码如下` music 这个年纪 七月的风 音乐 ` 然后就是css`*{ margin: 0; padding: 0; text-decoration: none; list-...
Python十大装B语法
Python 是一种代表简单思想的语言,其语法相对简单,很容易上手。不过,如果就此小视 Python 语法的精妙和深邃,那就大错特错了。本文精心筛选了最能展现 Python 语法之精妙的十个知识点,并附上详细的实例代码。如能在实战中融会贯通、灵活使用,必将使代码更为精炼、高效,同时也会极大提升代码B格,使之看上去更老练,读起来更优雅。
数据库优化 - SQL优化
以实际SQL入手,带你一步一步走上SQL优化之路!
2019年11月中国大陆编程语言排行榜
2019年11月2日,我统计了某招聘网站,获得有效程序员招聘数据9万条。针对招聘信息,提取编程语言关键字,并统计如下: 编程语言比例 rank pl_ percentage 1 java 33.62% 2 cpp 16.42% 3 c_sharp 12.82% 4 javascript 12.31% 5 python 7.93% 6 go 7.25% 7 p...
通俗易懂地给女朋友讲:线程池的内部原理
餐盘在灯光的照耀下格外晶莹洁白,女朋友拿起红酒杯轻轻地抿了一小口,对我说:“经常听你说线程池,到底线程池到底是个什么原理?”
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小型人工智障。 知识可以运用在不同地方,不一定非是天气预报。
经典算法(5)杨辉三角
杨辉三角 是经典算法,这篇博客对它的算法思想进行了讲解,并有完整的代码实现。
英特尔不为人知的 B 面
从 PC 时代至今,众人只知在 CPU、GPU、XPU、制程、工艺等战场中,英特尔在与同行硬件芯片制造商们的竞争中杀出重围,且在不断的成长进化中,成为全球知名的半导体公司。殊不知,在「刚硬」的背后,英特尔「柔性」的软件早已经做到了全方位的支持与支撑,并持续发挥独特的生态价值,推动产业合作共赢。 而对于这一不知人知的 B 面,很多人将其称之为英特尔隐形的翅膀,虽低调,但是影响力却不容小觑。 那么,在...
腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹?
昨天,有网友私信我,说去阿里面试,彻底的被打击到了。问了为什么网上大量使用ThreadLocal的源码都会加上private static?他被难住了,因为他从来都没有考虑过这个问题。无独有偶,今天笔者又发现有网友吐槽了一道腾讯的面试题,我们一起来看看。 腾讯算法面试题:64匹马8个跑道需要多少轮才能选出最快的四匹? 在互联网职场论坛,一名程序员发帖求助到。二面腾讯,其中一个算法题:64匹...
面试官:你连RESTful都不知道我怎么敢要你?
干货,2019 RESTful最贱实践
为啥国人偏爱Mybatis,而老外喜欢Hibernate/JPA呢?
关于SQL和ORM的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行了一番讨论,感触还是有一些,于是就有了今天这篇文。 声明:本文不会下关于Mybatis和JPA两个持久层框架哪个更好这样的结论。只是摆事实,讲道理,所以,请各位看官勿喷。 一、事件起因 关于Mybatis和JPA孰优孰劣的问题,争论已经很多年了。一直也没有结论,毕竟每个人的喜好和习惯是大不相同的。我也看...
白话阿里巴巴Java开发手册高级篇
不久前,阿里巴巴发布了《阿里巴巴Java开发手册》,总结了阿里巴巴内部实际项目开发过程中开发人员应该遵守的研发流程规范,这些流程规范在一定程度上能够保证最终的项目交付质量,通过在时间中总结模式,并推广给广大开发人员,来避免研发人员在实践中容易犯的错误,确保最终在大规模协作的项目中达成既定目标。 无独有偶,笔者去年在公司里负责升级和制定研发流程、设计模板、设计标准、代码标准等规范,并在实际工作中进行...
SQL-小白最佳入门sql查询一
不要偷偷的查询我的个人资料,即使你再喜欢我,也不要这样,真的不好;
redis分布式锁,面试官请随便问,我都会
文章有点长并且绕,先来个图片缓冲下! 前言 现在的业务场景越来越复杂,使用的架构也就越来越复杂,分布式、高并发已经是业务要求的常态。像腾讯系的不少服务,还有CDN优化、异地多备份等处理。 说到分布式,就必然涉及到分布式锁的概念,如何保证不同机器不同线程的分布式锁同步呢? 实现要点 互斥性,同一时刻,智能有一个客户端持有锁。 防止死锁发生,如果持有锁的客户端崩溃没有主动释放锁,也要保证锁可以正常释...
项目中的if else太多了,该怎么重构?
介绍 最近跟着公司的大佬开发了一款IM系统,类似QQ和微信哈,就是聊天软件。我们有一部分业务逻辑是这样的 if (msgType = "文本") { // dosomething } else if(msgType = "图片") { // doshomething } else if(msgType = "视频") { // doshomething } else { // doshom...
Nginx 原理和架构
Nginx 是一个免费的,开源的,高性能的 HTTP 服务器和反向代理,以及 IMAP / POP3 代理服务器。Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。 Nginx 的整体架构 Nginx 里有一个 master 进程和多个 worker 进程。master 进程并不处理网络请求,主要负责调度工作进程:加载配置、启动工作进程及非停升级。worker 进程负责处...
Python 编程开发 实用经验和技巧
Python是一门很灵活的语言,也有很多实用的方法,有时候实现一个功能可以用多种方法实现,我这里总结了一些常用的方法和技巧,包括小数保留指定位小数、判断变量的数据类型、类方法@classmethod、制表符中文对齐、遍历字典、datetime.timedelta的使用等,会持续更新......
YouTube排名第一的励志英文演讲《Dream(梦想)》
Idon’t know what that dream is that you have, I don't care how disappointing it might have been as you've been working toward that dream,but that dream that you’re holding in your mind, that it’s po...
“狗屁不通文章生成器”登顶GitHub热榜,分分钟写出万字形式主义大作
一、垃圾文字生成器介绍 最近在浏览GitHub的时候,发现了这样一个骨骼清奇的雷人项目,而且热度还特别高。 项目中文名:狗屁不通文章生成器 项目英文名:BullshitGenerator 根据作者的介绍,他是偶尔需要一些中文文字用于GUI开发时测试文本渲染,因此开发了这个废话生成器。但由于生成的废话实在是太过富于哲理,所以最近已经被小伙伴们给玩坏了。 他的文风可能是这样的: 你发现,...
程序员:我终于知道post和get的区别
是一个老生常谈的话题,然而随着不断的学习,对于以前的认识有很多误区,所以还是需要不断地总结的,学而时习之,不亦说乎
《程序人生》系列-这个程序员只用了20行代码就拿了冠军
你知道的越多,你不知道的越多 点赞再看,养成习惯GitHub上已经开源https://github.com/JavaFamily,有一线大厂面试点脑图,欢迎Star和完善 前言 这一期不算《吊打面试官》系列的,所有没前言我直接开始。 絮叨 本来应该是没有这期的,看过我上期的小伙伴应该是知道的嘛,双十一比较忙嘛,要值班又要去帮忙拍摄年会的视频素材,还得搞个程序员一天的Vlog,还要写BU...
加快推动区块链技术和产业创新发展,2019可信区块链峰会在京召开
11月8日,由中国信息通信研究院、中国通信标准化协会、中国互联网协会、可信区块链推进计划联合主办,科技行者协办的2019可信区块链峰会将在北京悠唐皇冠假日酒店开幕。   区块链技术被认为是继蒸汽机、电力、互联网之后,下一代颠覆性的核心技术。如果说蒸汽机释放了人类的生产力,电力解决了人类基本的生活需求,互联网彻底改变了信息传递的方式,区块链作为构造信任的技术有重要的价值。   1...
Java世界最常用的工具类库
Apache Commons Apache Commons有很多子项目 Google Guava 参考博客
相关热词 c# 图片上传 c# gdi 占用内存 c#中遍历字典 c#控制台模拟dos c# 斜率 最小二乘法 c#进程延迟 c# mysql完整项目 c# grid 总行数 c# web浏览器插件 c# xml 生成xsd
立即提问