存在:隐藏登录界面,显示登录用户信息界面
不存在:隐藏登录用户信息界面,显示登录界面
================
struts1.x做JSP的例子,<div>是css你不用管
================
<div id="left">
<logic:notPresent name="tbuser" scope="session"><!-- 判断session里是否有用户信息,不存在就显示 -->
<div id="login">
<form action="<%=request.getContextPath()%>/login.do" method="post">
<p>用户: <input type="text" name="username" class="text"></p>
<!--
<p><html:errors property="username"/></p>
-->
<p>密码: <input type="password" name="password" class="text"></p>
<!--
<p><html:errors property="password"/></p>
-->
<p>
<input type="submit" class="btn" value="登录">
<input type="button" class="btn" value="注册" onclick="window.location.href='<%=request.getContextPath()%>/addUser.jsp'">
</p>
</form>
</div>
</logic:notPresent>
<logic:present name="tbuser" scope="session">"><!-- 判断session里是否有用户信息,存在就显示 -->
<%
TbUser tu=(TbUser)request.getSession().getAttribute("tbuser")
%>
<div id="login">
<form action="<%=request.getContextPath()%>/manage.do?method=logout" method="post">
<p>欢迎用户
<%=tu.getUname() %></p>
<p><img src="<%=tu.getUpicture() %>"></p>
<p>
<input type="submit" class="btn" value="登出">
</p>
</form>
</div>
</logic:present>
<div id="category">
这里主要是用户名与密码的判断:
先用sharedpreferences方式存储数据,包含用户名和密码:username,password
然后在登录的时候进行判断:代码如下:
String name = et_username.getText().toString()String password = et_password.getText().toString()
if (name.length()<=0 && password.length()<=0) {
Toast.makeText(LoginActivity.this, "用户名或密码为空", 0).show()
} else if (name.length()<=0) {
Toast.makeText(LoginActivity.this, "用户名不能为空", 0).show()
} else if (password.length()<=0) {
Toast.makeText(LoginActivity.this, "密码不能为空", 0).show()
} else if (name != null && password != null) {
// 获取存储的数据
SharedPreferences sp = getSharedPreferences("config", MODE_PRIVATE)
String savename = sp.getString("username", "")
int savepassword = sp.getInt("password", 0)
//判断用户名与密码是否和保存的数据一致,进行提醒或者登录
if (savename.equals(name)&& savepassword == Integer.parseInt(password)) {
//实现界面的跳转
Intent intent = new Intent(LoginActivity.this,HomeActivity.class)
startActivity(intent)
//关闭当前界面
finish()
}else{
Toast.makeText(LoginActivity.this, "用户名或密码错误", 0).show()
}
扩展:其中判断用户名或密码是否为空时还可以使用name.isEmpty()判断是否为空,但是这个方法好像在JDK1.5以下版本是不能用的
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)