‘壹’ 在java web项目登录界面中,用java程序怎样让浏览器记住你上一次的登录名
常看到在登录的时候,有是否记住这个选项,其实它就是把用户名和密码,做了下处理,存入到了cookie(及你本地的机器磁盘,具体是否能存储上,要看你浏览器的安全设置的级别,默认是可以存储的),这样,当你浏览器发现再次登录这个网站的时候,会将cookie中的内容添加到请求信息中,服务器会验证是否有cookie信息,如果有的话,会自动登录。
总之,大致思想可以这样理解,当你登录成功后,放一个信息值在你那,下次你直接可以拿这个值到我这做验证。而不用再次验证!
‘贰’ android与javaweb交互,怎么记住登录状态
用这个:SharedPreference
给个例子吧
import assets.webkit.*;
import android.R.raw;
import android.app.Activity;
import android.content.Intent;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.text.Editable;
import android.text.InputType;
import android.text.TextWatcher;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast;
public class LoginActivity extends Activity {
AutoCompleteTextView cardNumAuto;
EditText passwordET;
Button logBT;
CheckBox savePasswordCB;
SharedPreferences sp;
String cardNumStr;
String passwordStr;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.login);
cardNumAuto = (AutoCompleteTextView) findViewById(R.id.cardNumAuto);
passwordET = (EditText) findViewById(R.id.passwordET);
logBT = (Button) findViewById(R.id.logBT);
sp = this.getSharedPreferences("passwordFile", MODE_PRIVATE);
savePasswordCB = (CheckBox) findViewById(R.id.savePasswordCB);
savePasswordCB.setChecked(true);// 默认为记住密码
cardNumAuto.setThreshold(1);// 输入1个字母就开始自动提示
passwordET.setInputType(InputType.TYPE_CLASS_TEXT
| InputType.TYPE_TEXT_VARIATION_PASSWORD);
// 隐藏密码为InputType.TYPE_TEXT_VARIATION_PASSWORD,也就是0x81
// 显示密码为InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD,也就是0x91
cardNumAuto.addTextChangedListener(new TextWatcher() {
public void onTextChanged(CharSequence s, int start, int before,
int count) {
String[] allUserName = new String[sp.getAll().size()];// sp.getAll().size()返回的是有多少个键值对
allUserName = sp.getAll().keySet().toArray(new String[0]);
// sp.getAll()返回一张hash map
// keySet()得到的是a set of the keys.
// hash map是由key-value组成的
ArrayAdapter<String> adapter = new ArrayAdapter<String>(
LoginActivity.this,
android.R.layout.simple_dropdown_item_1line,
allUserName);
cardNumAuto.setAdapter(adapter);// 设置数据适配器
}
public void beforeTextChanged(CharSequence s, int start, int count,
int after) {
//
}
public void afterTextChanged(Editable s) {
passwordET.setText(sp.getString(cardNumAuto.getText()
.toString(), ""));// 自动输入密码
}
});
// 登陆
logBT.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
cardNumStr = cardNumAuto.getText().toString();
passwordStr = passwordET.getText().toString();
boolean islogin = q.isLogin();
if (条件,错误条件) {
Toast.makeText(LoginActivity.this, "密码错误,请重新输入",
Toast.LENGTH_SHORT).show();
} else {
if (savePasswordCB.isChecked()) {// 登陆成功才保存密码
sp.edit().putString(cardNumStr, passwordStr).commit();
}
Toast.makeText(LoginActivity.this, "登陆成功,正在获取用户数据……",
Toast.LENGTH_SHORT).show();
// 跳转到另一个Activity
Intent intent = new Intent(LoginActivity.this, UIADemoActivity.class);
startActivity(intent);
// do something
}
}catch(Exception ex)
{
System.out.println(ex.toString());
}
}
});
}
}
之前做的一个登陆效果,应该能帮到你,按自己需求稍微改改就能用
效果是:第一次输入正确的用户名和密码后,用户名和密码被存储,然后在以后输入的时候,当输入用户名的第一个字母时开始监听,有,则在输入上方提示完整的用户名,点击后自动补全用户名和密码。。
‘叁’ 如何在JavaEE中使用cookie实现记住用户明名密码下次自动登录
例如:在用户提交用户名和密码之后,进入到loginServlet后,通过获取页面上checkbox的值来判断用户是否需要记住密码,如果需要的话,使用:Cookie cookie = new Cookie("testkey","testvalue");cookie.setMaxAge(3600);// 有效时间,单位是秒cookie.setPath("abc");response.addCookie(cookie);如上几句来保存cookie。在登录页面的时候,需要使用:Cookie[] cookies = request.getCookies();for (int i = 0; cookies != null && i < cookies.length; i++) { System.out.println(cookies[i].getName() + "=" + cookies[i].getValue());}来获取cookie的值判断用户曾经是否已经记住密码,如果是的话,则直接调用cookie的值来进行登录,如果不是,则正常登录
‘肆’ java的用户登录怎样记住上次登录的用户名和密码
java的用户登录记住上次登录的用户名和密码的方式是使用cookie来保存在本地,并且需要加密保存,实例如下:
HttpServletRequestrequest=ServletActionContext.getRequest();
Cookiecookies[]=request.getCookies();//声明一个cookie对象
Stringlogin=null;//登录的用户名
Stringpassword=null;//登录的密码
for(inti=0;i<cookies.length;i++){//取最后一次保存的用户名和密码
if(cookies[i].getName().equals("userName")){
login=cookies[i].getValue();
}
if(cookies[i].getName().equals("password")){
password=cookies[i].getValue();
break;
}
}
if(!AssertUtil.isEmpty(login)&&!login.equals("JSESSIONID")){
request.setAttribute("login",login);
request.setAttribute("password",password);
}
‘伍’ Java 保存登录用户信息
首先登陆的时候,有一个checkbox
如:
<tr>
<td colspan="2" align="center"><input type="checkbox" name="checked" id="checked"/> 记住登陆状态</td>
</tr>
验证提交表单的时候:
var checked = document.getElementByIdx_x_x("checked").checked;
//alert(checked.checked);
if (username == "") {
alert("请输入用户名!");
return false;
}
if (pwd == "") {
alert("请输入密码!");
return false;
}
document.getElementByIdx_x_x("myForm").submit();
在servlet中的代码
if ("on".equals(checked)) {//这里判断的是,如果复选框被选中的,值就为on,否就为null
Cookie cookieuser = new Cookie("user",userName+"-"+pwd);
//设定有效时间 以秒(s)为单位
cookieuser.setMaxAge(60);
//设置Cookie路径和域名
cookieuser.setPath("/") ;
cookieuser.setDomain(".zl.org") ; //域名要以“.”开头
response.addCookie(cookieuser);
}
url = "/main.jsp";
然后登陆页面中代码:在最login.jsp最上面实现的
String name = ""; //用户名
String passward = ""; //密码
Cookie[] cookies=request.getCookies();
if(cookies!=null){
for(int i=0;i
if(cookies[i].getName().equals("user")){
name=cookies[i].getValue().split("-")[0];
passward=cookies[i].getValue().split("-")[1];
request.setAttribute("name",name); //存用户名
request.setAttribute("pass",passward); //存密码
}
}
}
//通过el表达式来显示,如果没有就不会显示了,有就会显示了
<tr>
<th
colspan="2"
align="center">用户登录</th>
</tr>
<tr>
<td>用户名:</td>
<td><input
type="text" name="userName" value="${name }" id="userName"
/></td>
</tr>
<tr>
<td>密
码:</td>
<td><input
type="password" value="${pass }" name="pwd"
id="pwd"/></td>
</tr>
‘陆’ java swing工程 登录记住密码如何做
md5加密是不可逆的,像记住密码的话是不用md5加密来在本地保存用户的用户名和密码的,而是可以通过像DES这种可逆的加密方式来在本地保存数据。如果想在本地也用md5加密,那么你登录的时候必然会对加密字符串再做一次加密处理,无解。而用DES的话,从文件中读取的时候就可以进行一次解密,然后再通过md5加密验证其用户名密码的正确性,不仅可以解决安全问题,多次加密的麻烦也就可以解决了。
‘柒’ java用户注册后登录页面怎么记住用户名和密码
这个不用在后台写的,只在js里面用cookie操作就可以。
//添加cookie
function setCookie(name,value,expires){
var cookieName = encodeURIComponent(name)+"="+encodeURIComponent(value);
if(expires && expires instanceof Date){
cookieName+=";expires="+expires; //cookie有效期
}
document.cookie = cookieName;
}
//得到cookie
function getcookie(name){
var cookieName = encodeURIComponent(name)+"=";
var start = document.cookie.indexOf(cookieName);
var value= null;
if(start>-1){
var end = document.cookie.indexOf(";",start);
if(end == -1){
end = document.cookie.length;
}
value= document.cookie.substring(start+cookieName.length,end);
}
return value;
}
这两个方法可以作为参考 具体一些细节判断什么的还要自己写
‘捌’ 怎样用Java 如何实现“记住密码”功能
把你的密码写到文件中(一般是:.properties文件),用键值对(set或map)的方式去读取文件;
文件内容是这样的:
用户名1=密码1
用户名2=密码2
···
//根据key读取value
public static String readValue(String filePath,String key) {
Properties props = new Properties();
Property property=new Property();
try{
key=new String(key.getBytes("GB2312"),"ISO-8859-1");
key= Entropy.encrypt(key, "123");
}catch (UnsupportedEncodingException ex){}
try {
InputStream in = new BufferedInputStream (new FileInputStream(filePath));
props.load(in);
String value = new String(props.getProperty (key).getBytes("ISO-8859-1"),"GB2312");
value= Entropy.decrypt(value, "123");
return value;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
为了密码安全,还要用到加密算法,把加密处理的数据写到文件中,你网络DES或者AES加密算法,都有现成的例子。
还不懂的话群里找我:咖啡编程——57914814
‘玖’ java的用户登录怎样记住上次登录的用户名和密码
java的用户登录记住上次登录的用户名和密码的方式是使用cookie来保存在本地,并且需要加密保存,实例如下:
HttpServletRequest request = ServletActionContext.getRequest();
Cookie cookies[]=request.getCookies();//声明一个cookie对象
String login=null;//登录的用户名
String password=null; //登录的密码
for (int i = 0; i < cookies.length; i++){ //取最后一次保存的用户名和密码
if(cookies[i].getName().equals("userName")){
login = cookies[i].getValue();
}
if (cookies[i].getName().equals("password")){
password = cookies[i].getValue();
break;
}
}
if(!AssertUtil.isEmpty(login)&&!login.equals("JSESSIONID")){
request.setAttribute("login", login);
request.setAttribute("password", password);
}
‘拾’ java 登录状态保存
用servlet么?还是JSP中?
HttpSession session=request.getSession();
session.setAttribute("user",username);//username存入的是用户名字符串
JSP中可以用 EL取出
<input type="text" value="${sessionScope.user}">
这样进去时候默认账号就是登陆值了。
同样用COOKIE更简单一些
Cookie cookie=new Cookie("user",username);//同上
cookie.setPath("/");//路径
cookie.setMax***(60*60*3600*14)//存储毫秒数这样存储周期是一周。
JSP取出一样
<input type="text" value="${cookie.user}">
鉴于你补充的问题说一点。session的作用域是会话范围,只要网页不关,
session中存储的值不丢失。一般登陆成功后,session一般用来存放用户类的对象。
你会JSP 你的java也应该有一定的基础,
最简单的办法,就是在JSP页面里面直接嵌入JAVA代码,当然这样对与开发JSP方便不少,如果你暂时没有找到替代方法的话直接使用<% %>嵌入java代码就可以了。用上面的方法一样可以实现。
然后我给你简单讲一下JSP页面的四个范围
page 页面相应范围 ,页面的的值。
request 请求相应范围,这个值可以保留到下一个页面。
session 回话相应范围,这个是对于用户发起的临时会话范围,就是你打开页面就会在服务器内存中开辟这样一个容器。
application 应用相应范围,也可以看做服务器相应范围,只要服务器运行这个值就一直存在。
上面的相应都有setAttribute("标签名",内容)这个方法,通过这个方法就可以存放用户需要的值,前面的STRING可以看做这个内容的标签,我们就是通过这个标签来取出应用范围内存的值。