大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
Java写提示注册成功的方法如下:
成都创新互联专注于企业成都全网营销、网站重做改版、秀峰网站定制设计、自适应品牌网站建设、H5建站、商城开发、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为秀峰等各大城市提供网站开发制作服务。
1、首先用户注册完成后,返回一个boolean值的变量;
2、利用Servlet类判断这个变量,如果为true,跳转到提示界面,提示用户注册成功,如果为false,跳转到提示界面,提示用户注册失败;
3、具体代码如下所示:
public class DemoServlet extends HttpServlet {
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String usepwd= request.getParameter("usepwd");
boolean flag = Dao.register(username,usepwd);//注册方法
if(flag){
//提示注册成功
request.getRequestDispatcher("/success.jsp").forward(request, response);
}else{
//提示注册失败
request.getRequestDispatcher("/success.jsp").forward(request, response);
}
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
doGet(request, response);
}
}
4、至此,就完成了提示注册成功的功能。
首先,我们得明白用户登录使用什么登陆的,即用户在线的原理。这只是将用户的对象存放在了session中而已,然后再frame中进行调用,其他特定页面也进行直接引用就行。那么实现“挤下来”的功能就是让新生成的session有效,让原来存放用户的session失效就行。到此,大体思路已经有了。那怎么实现呢?
想要知道怎么实现,就必须要明白session存放用户对象的过程了。在用户登录之后,我们可以得到用户的对象user,而存放到session中需要执行session.setAttribute(key,value); 我们将用户的userId或是其他的唯一标识存为key,将用户对象存为值。这样就能随时随地调用唯一用户了。user存放的问题解决了,那相同 登录 时session废除的问题呢?

这个其实也不难,我们可以更具session的特性一样,用map进行存贮,将用户的标识存为key,而将其所对应的session存为value,那么当重复用户登录时,只需要取出对应的session,将其invalidate就行了。
至此,实现思路已经明了,聒噪了这么久,大家都急不可耐地想看代码了吧?以下是代码:
前置准备,jsp界面
界面很简单,只是一个简单的登录界面
form action ="%=request.getContextPath()%/UserWXPServlet" method = "post"
用户名šinput type = "text" name = "username"/br/
密码šinput type = "text" name = "password"/br/
input type = "submit" value ="提交"/
/form
成功后跳转页面
欢迎:${sessionScope.user.username}登陆!br/
我这没有写失败页面,大家可以自己写,失败页面也没什么好说的了
entity和登录的实现
user的javabean
private String username;
private String password;
public User() {
}
public User(String user, String password) {
super();
this.username = user;
this.password = password;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
登录user的service实现方法,这里就不写dao和接口了,一切以简单为
public boolean dologin(User user){
Properties pro = new Properties();
InputStream is = UserWXPServlet.class.getClassLoader().getResourceAsStream("user_wxp.properties");
String password = null;
System.out.println(is+"---------"+pro);
if(user==null){
return false;
}
try {
pro.load(is);
password = pro.getProperty(user.getUsername());
if(user.getPassword()!=nulluser.getPassword().equals(password)){
System.out.println("登陆成功");
return true;
}
} catch (IOException e) {
e.printStackTrace();
}finally{
if(is!=null){
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return false;
}
登录成功返回true,失败则返回false。
不要复杂化,代码要简单化,需求是什么就写什么。参考如下:
//用于保存用户帐户信息的数组
Scanner scanner = new Scanner(System.in);
String[] user = new String[2];
while (true) {
//银行主界面
System.out.println("------------------------------欢迎来到银行------------------------------");
System.out.println("请选择编号:\n1:注册\n2:登录\n3退出");
int num = scanner.nextInt();
switch (num) {
case 1:
//注册
System.out.println("请输入您的账户名:");
String name = scanner.next();
user[0] = name;
System.out.println("请输入您的密码:");
String password = scanner.next();
user[1] = password;
System.out.println("注册成功!");
//返回主界面
break;
case 2:
while (true) {
//登录
System.out.println("请输入您的帐户名:");
String userName = scanner.next();
System.out.println("请输入您的密码:");
String userPwd = scanner.next();
//判断输入的用户名是否在数组中存在(判断该用户是否注册)
if(user[0].equals(userName)user[1].equals(userPwd)){
System.out.println("-----------登录成功,请选择您要办理的业务------------");
break;
}else{
System.out.println("-----------用户名或密码错误,请重新输入------------");//返回到登录界面
continue;
}
}
break;
case 3:
//退出系统 程序结束
System.out.println("退出成功,欢迎再次使用");
System.exit(0);
break;
default:
break;
}
}
最传统的jdbc方式,我就略写一些代码:
"select * from xxx where username="+username;得到一个ResultSet rs
if(!rs.next())/*把结果!运算*/{
//如果没有
//实行增加
}else{
//已有此用户名
//前台返回错误
}