当前位置: 编程技术>移动开发
本页文章导读:
▪深入懂得wifi direct 深入理解wifi direct
wifi direct 又称 wifi peer-to-peer,优势为直连,无需通过无线局域网。
wifi direct和蓝牙类似,但传输距离、速度都优于蓝牙,但耗电量较大。
wifi dierect本机有效传输距离可.........
▪ spring security3用户登录有关 spring security3用户登录相关
package com.security;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.sec.........
▪ java获取socket发送过来的数据并回来数据 java获取socket发送过来的数据并返回数据
<r><i>
<a><![CDATA["
+ username +
"]]></a>"
+ "<b><![CDATA["
+ password +
"]]></b>"
+ "<d><![CDATA["
+ .........
[1]深入懂得wifi direct
来源: 互联网 发布时间: 2014-02-18
深入理解wifi direct
wifi direct 又称 wifi peer-to-peer,优势为直连,无需通过无线局域网。
wifi direct和蓝牙类似,但传输距离、速度都优于蓝牙,但耗电量较大。
wifi dierect本机有效传输距离可达十米
----------------------------------------
SSID,本机作为wifi热点的时候显示给其他设备的网络名称。
MAC地址,网卡的物理地址,具有全球唯一性,当然也可以修改。当给机器安装操作系统时,会将MAC地址读到注册表中,之后每次需要这个值的时候都默认从注册表中读取,所以可以通过修改注册表的MAC值来修改本机MAC地址。
[2] spring security3用户登录有关
来源: 互联网 发布时间: 2014-02-18
spring security3用户登录相关
spring-security.xml配置中的修改
以上配置中authentication-failure-handler-ref="onLoginFaild"
表示登录失败时候跳转到anLoginFaild这个bean中
<http pattern="/login.jsp" security="none"/>这个配置当请求/login.jsp时,security不会去拦截,也就不过org.springframework.security.access.intercept.AbstractSecurityInterceptor
拦截器,所以在/login.jsp页面用org.springframework.security.core.context.SecurityContextHolder.getContext().getAuthentication()
也就获得不了用户信息
package com.security;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.security.core.AuthenticationException;
import org.springframework.security.web.authentication.AuthenticationFailureHandler;
public class OnLoginFaild implements AuthenticationFailureHandler {
@Override
public void onAuthenticationFailure(HttpServletRequest request,
HttpServletResponse response, AuthenticationException exception)
throws IOException, ServletException {
String errorMSG=exception.getMessage();//User is disabled
//Bad credentials
System.out.println("errorMSG:"+exception.getMessage());
if(!("".equals(errorMSG)))response.sendRedirect(request.getContextPath()+"/others_handler/login_faild/"+errorMSG);
}
}
spring-security.xml配置中的修改
<http pattern="/login.jsp" security="none"/>
<http access-denied-page="/others_handler/no_power_access"><!-- 当访问被拒绝时,会转到403.jsp -->
<form-login login-page="/login.jsp"
authentication-failure-handler-ref="onLoginFaild"
authentication-failure-url="/others_handler/login_faild/*"
default-target-url="/others_handler/login_success" /><!-- 登录成功跳转到index.jsp -->
<logout logout-success-url="/login.jsp" />
<custom-filter before="FILTER_SECURITY_INTERCEPTOR" ref="myFilter" />
</http>
以上配置中authentication-failure-handler-ref="onLoginFaild"
表示登录失败时候跳转到anLoginFaild这个bean中
<http pattern="/login.jsp" security="none"/>这个配置当请求/login.jsp时,security不会去拦截,也就不过org.springframework.security.access.intercept.AbstractSecurityInterceptor
拦截器,所以在/login.jsp页面用org.springframework.security.core.context.SecurityContextHolder.getContext().getAuthentication()
也就获得不了用户信息
[3] java获取socket发送过来的数据并回来数据
来源: 互联网 发布时间: 2014-02-18
java获取socket发送过来的数据并返回数据
<r><i>
<a><![CDATA["
+ username +
"]]></a>"
+ "<b><![CDATA["
+ password +
"]]></b>"
+ "<d><![CDATA["
+ presentUsername +
"]]></d>"
+ "<c>"
+ makeListToXML(presentGoodsList) +
"</c>"
</i></r>"
import org.dom4j.Document;
import org.dom4j.Element;
import org.dom4j.io.SAXReader;
InputStream tempIS = null;
try{
tempIS = request.getInputStream();
}catch(IOException ex){
logger.info(ex);
}
SAXReader reader = new SAXReader(false);
Document doc = reader.read(tempIS);
tempIS.close();
Element rootElement = doc.getRootElement();//r节点
Element children = rootElement.element("i");//r节点的子节点i
userName = children.element("a").getText();//i节点的子节点a
password = children.element("b").getText();//i节点的子节点b
presentUsername = children.element("d").getText();//i节点的子节点d
Element goodsChildren = children.element("c");//i节点的子节点c
String xml = "";
String xmlHead = "<r>";
String xmlFoot = "</r>";
StringBuffer xmlCenter = new StringBuffer();
//用户金钱信息
xmlCenter.append("<a>" + resFlg + "</a>\n");
if(resFlg == Constant.BUY_SUCCESS){
xmlCenter.append("<b>" + "x" + "</b>\n");
xmlCenter.append("<c>" + "y"+ "</c>\n");
xmlCenter.append("<d>" + "z" + "</d>\n");
}
xml = xmlHead + xmlCenter.toString() + xmlFoot;
request.setAttribute("xmlResult", xml);
return actionMapping.findForward("returnData");
<%@ page contentType="text/html; charset=utf-8" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<logic:present name="xmlResult">
<bean:write filter="false" name="xmlResult" />
</logic:present>
最新技术文章: