java登录页面,java登录页面系统设计总结

本文目录一览:

用java怎样编写登录页面,可以达到成功登录后跳转到下一个页面?

1、直接从web.xml中配置,直接跳转到login.jsp登录界面。

2、从index.jsp界面进行JS跳转。

如何用JAVA编写一个简单用户登陆界面?

什么都不说了 直接给你代码吧\x0d\x0apackage com.moliying.ui;\x0d\x0aimport java.awt.BorderLayout;\x0d\x0aimport java.awt.Container;\x0d\x0aimport java.awt.FlowLayout;\x0d\x0aimport java.awt.List;\x0d\x0aimport java.awt.event.ActionEvent;\x0d\x0aimport java.awt.event.ActionListener;\x0d\x0aimport java.io.BufferedWriter;\x0d\x0aimport java.io.FileOutputStream;\x0d\x0aimport java.io.OutputStreamWriter;\x0d\x0aimport java.util.ArrayList;\x0d\x0aimport java.util.Arrays;\x0d\x0aimport javax.swing.JButton;\x0d\x0aimport javax.swing.JFrame;\x0d\x0aimport javax.swing.JLabel;\x0d\x0aimport javax.swing.JPanel;\x0d\x0aimport javax.swing.JPasswordField;\x0d\x0aimport javax.swing.JTextField;\x0d\x0apublic class Login {\x0d\x0aprivate JFrame frame = new JFrame(“登录”);\x0d\x0aprivate Container c = frame.getContentPane();\x0d\x0aprivate JTextField username = new JTextField();\x0d\x0aprivate JPasswordField password = new JPasswordField();\x0d\x0aprivate JButton ok = new JButton(“确定”);\x0d\x0aprivate JButton cancel = new JButton(“取消”);\x0d\x0apublic Login() {\x0d\x0aframe.setSize(300, 200);\x0d\x0aframe.setBounds(450, 300, 300, 200);\x0d\x0ac.setLayout(new BorderLayout());\x0d\x0ainitFrame();\x0d\x0aframe.setVisible(true);\x0d\x0a}\x0d\x0aprivate void initFrame() {\x0d\x0a// 顶部\x0d\x0aJPanel titlePanel = new JPanel();\x0d\x0atitlePanel.setLayout(new FlowLayout());\x0d\x0atitlePanel.add(new JLabel(“系统管理员登录”));\x0d\x0ac.add(titlePanel, “North”);\x0d\x0a// 中部表单\x0d\x0aJPanel fieldPanel = new JPanel();\x0d\x0afieldPanel.setLayout(null);\x0d\x0aJLabel a1 = new JLabel(“用户名:”);\x0d\x0aa1.setBounds(50, 20, 50, 20);\x0d\x0aJLabel a2 = new JLabel(“密 码:”);\x0d\x0aa2.setBounds(50, 60, 50, 20);\x0d\x0afieldPanel.add(a1);\x0d\x0afieldPanel.add(a2);\x0d\x0ausername.setBounds(110, 20, 120, 20);\x0d\x0apassword.setBounds(110, 60, 120, 20);\x0d\x0afieldPanel.add(username);\x0d\x0afieldPanel.add(password);\x0d\x0ac.add(fieldPanel, “Center”);\x0d\x0a// 底部按钮\x0d\x0aJPanel buttonPanel = new JPanel();\x0d\x0abuttonPanel.setLayout(new FlowLayout());\x0d\x0abuttonPanel.add(ok);\x0d\x0abuttonPanel.add(cancel);\x0d\x0ac.add(buttonPanel, “South”);\x0d\x0a\x0d\x0aok.addActionListener(new ActionListener() {\x0d\x0a\x0d\x0a@Override\x0d\x0apublic void actionPerformed(ActionEvent e) {\x0d\x0aSystem.out.println(username.getText().toString());\x0d\x0a}\x0d\x0a});\x0d\x0a\x0d\x0acancel.addActionListener(new ActionListener() {\x0d\x0a\x0d\x0a@Override\x0d\x0apublic void actionPerformed(ActionEvent e) {\x0d\x0aframe.setVisible(false);\x0d\x0a}\x0d\x0a});\x0d\x0a}\x0d\x0apublic static void main(String[] args) {\x0d\x0a//new Login();\x0d\x0a\x0d\x0aString ss = “abbabbbaabbbccba”;\x0d\x0a\x0d\x0aSystem.out.println(ss.split(“b”).length);\x0d\x0a\x0d\x0a}\x0d\x0a}

求用java编登录页面,可以连接MySql 数据库

第一步:创建一个查询过程,因为在登录时要根据用户名查询用户密码

此步要用到pl/sql编程知识,代码如下:

create or replace procedure sel_user(uname in varchar2,pass out varchar2) is

begin

select users.password into pass from users where users.username=uname and rownum = 1;

end;

第二步:编写登录页面(login.java)(采用纯java+servlet编写)

//login.java如下

package cn.hnu;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

public class testhtml extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

resp.setContentType(“text/html;charset=gbk”);

try {

PrintWriter pw = resp.getWriter();

pw.println(“html”);

pw.println(“head”);

pw.println(“title”);

pw.println(“用户登录”);

pw.println(“/title”);

pw.println(“/head”);

pw.println(“body”);

pw.println(“h1用户登录/h1”);

pw.println(“hr”);

pw.println(“form method=post action=loginCl”);

pw.println(“用户名:input type=text name=userNamebr”);

pw.println(“密nbspnbsp码:input type=password name=passwordbr”);

pw.println(“input type=submit value=登录”);

pw.println(“input type=reset value=重置”);

pw.println(“/form”);

pw.println(“/body”);

pw.println(“/html”);

} catch (Exception e) {

e.printStackTrace();

// TODO: handle exception

}

}

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

this.doGet(req, resp);

}

}

第三步:编程成功登录页面(wel.java) //wel.java如下,它主要用于用户正常登录后显示信息给用户

package cn.hnu;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

public class Wel extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

//防止用户非法登录

HttpSession hs = req.getSession();

String s = (String)hs.getAttribute(“pass”);

if(s == null){

resp.sendRedirect(“login”);

}

PrintWriter pw = resp.getWriter();

pw.write(“welcome,hello”);

}

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

this.doGet(req, resp);

}

}

第四步:编写login处理页面(loginCl.java)

package cn.hnu;

import java.io.IOException;

import java.sql.*;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import javax.servlet.http.HttpSession;

public class loginCl extends HttpServlet {

@Override

protected void doGet(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

String u = req.getParameter(“userName”);

String p = req.getParameter(“password”);

//查询数据库

String pa=null;

Connection ct = null;

CallableStatement cs = null;

try {

Class.forName(“oracle.jdbc.driver.OracleDriver”);

ct = DriverManager.getConnection(“jdbc:oracle:thin:@localhost:1521:oracle”,

“scott”, “tiger”);

cs = ct.prepareCall(“{call sel_user(?,?)}”);

cs.setString(1, u);

cs.registerOutParameter(2, oracle.jdbc.OracleTypes.VARCHAR);

cs.execute();

pa = cs.getString(2);

System.out.println(“u=” + u + ” p=” + pa);

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

} finally {

try {

if (cs != null) {

cs.close();

}

if (ct != null) {

ct.close();

}

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

//验证用户信息是否合法

if (p.equals(pa)) {

HttpSession hs = req.getSession(true);//防止用户非法登录

hs.setAttribute(“pass”, “OK”);

resp.sendRedirect(“wel”);

} else {

resp.sendRedirect(“login”);

}

}

@Override

protected void doPost(HttpServletRequest req, HttpServletResponse resp)

throws ServletException, IOException {

// TODO Auto-generated method stub

this.doGet(req, resp);

}

}

亲,sql可以换成MySQL

这个没关系的,别的都可以照搬来用

用java怎么实现QQ登录界面?

用java做QQ登录界面的写法如下:

package ch10;

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

1、//定义该类继承自JFrame,实现ActionListener接口

public class LoginTest extends JFrame implements ActionListener

{

2、//创建JPanel对象

private JPanel jp=new JPanel();

3、//创建3个标并加入数组

JLabel name = new JLabel(“请输入用户名”);

JLabel password = new JLabel(“请输入密码”);

JLabel show = new JLabel(“”);

private JLabel[] jl={name,password,show};

4、//创建登陆和重置按扭并加入数组

JButton login = new JButton(“登陆”);

JButton reset = new JButton(“重置”);

private JButton[] jb={login,reset};

5、//创建文本框以及密码框

private JTextField jName=new JTextField();

private JPasswordField jPassword =new JPasswordField();

public LoginTest()

{

6、//设置布局管理器为空布局,这里自己摆放按钮、标签和文本框

jp.setLayout(null);

for(int i=0;i2;i++)

{

7、//设置标签和按扭的位置与大小

jl[i].setBounds(30,20+40*i,180,20);

jb[i].setBounds(30+110*i,100,80,20);

8、//添加标签和按扭到JPanel容器中

jp.add(jl[i]);

jp.add(jb[i]);

//为2个按钮注册动作事件监听器

jb[i].addActionListener(this);

}

9、//设置文本框的位置和大小,注意满足美观并足够用户名的长度

jName.setBounds(130,15,100,20);

10、//添加文本框到JPanel容器中

jp.add(jName);

11、//为文本框注册动作事件监听器

jName.addActionListener(this);

12、//设置密码框的位置和大小,注意满足美观和足够密码的长度

jPassword.setBounds(130,60,100,20);

13、//添加密码框到JPanel容器中

jp.add(jPassword);

14、//设置密码框中的回显字符,这里设置美元符号

jPassword.setEchoChar(‘$’);

15、//为密码框注册动作事件监听器

jPassword.addActionListener(this);

16、//设置用于显示登陆状态的标签大小位置,并将其添加进JPanel容器

jl[2].setBounds(10,180,270,20);

jp.add(jl[2]);

17、//添加JPanel容器到窗体中

this.add(jp);

18、//设置窗体的标题、位置、大小、可见性及关闭动作

this.setTitle(“登陆窗口”);

this.setBounds(200,200,270,250);

this.setVisible(true);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

19、//实现动作监听器接口中的方法actionPerformed

public void actionPerformed(ActionEvent e)

{

20、//如果事件源为文本框

if(e.getSource()==jName)

{

21、//切换输入焦点到密码框

jPassword.requestFocus();

}

22、//如果事件源为重置按扭

else if(e.getSource()==jb[1])

{

23、//清空姓名文本框、密码框和show标签中的所有信息

jl[2].setText(“”);

jName.setText(“”);

jPassword.setText(“”);

24、//让输入焦点回到文本框

jName.requestFocus();

}

25、//如果事件源为登陆按钮,则判断登录名和密码是否正确

else

{

26、//判断用户名和密码是否匹配

if(jName.getText().equals(“lixiangguo”)

String.valueOf(jPassword.getPassword()).equals(“19801001”))

{

27、jl[2].setText(“登陆成功,欢迎您的到来!”);

}

else

{

28、jl[2].setText(“对不起,您的用户名或密码错误!”);

}

}

}

public static void main(String[] args)

{

29、//创建LoginTest窗体对象

new LoginTest();

}

}

用java写一个登陆界面代码。

概述

具体框架使用jframe,文本框组件:JTextField;密码框组件:JPasswordField;标签组件:JLabel;复选框组件:JCheckBox;单选框组件:JRadioButton;按钮组件JButton。

登录界面:

代码实例

import javax.swing.*;

import java.awt.*;   //导入必要的包

public class denglu extends JFrame{

JTextField jTextField ;//定义文本框组件

JPasswordField jPasswordField;//定义密码框组件

JLabel jLabel1,jLabel2;

JPanel jp1,jp2,jp3;

JButton jb1,jb2; //创建按钮

public denglu(){

jTextField = new JTextField(12);

jPasswordField = new JPasswordField(13);

jLabel1 = new JLabel(“用户名”);

jLabel2 = new JLabel(“密码”);

jb1 = new JButton(“确认”);

jb2 = new JButton(“取消”);

jp1 = new JPanel();

jp2 = new JPanel();

jp3 = new JPanel();

//设置布局

this.setLayout(new GridLayout(3,1));

jp1.add(jLabel1);

jp1.add(jTextField);//第一块面板添加用户名和文本框

jp2.add(jLabel2);

jp2.add(jPasswordField);//第二块面板添加密码和密码输入框

jp3.add(jb1);

jp3.add(jb2); //第三块面板添加确认和取消

//        jp3.setLayout(new FlowLayout());  //因为JPanel默认布局方式为FlowLayout,所以可以注销这段代码.

this.add(jp1);

this.add(jp2);

this.add(jp3);  //将三块面板添加到登陆框上面

//设置显示

this.setSize(300, 200);

//this.pack();

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

this.setVisible(true);

this.setTitle(“登陆”);

}

public static void main(String[] args){

new denglu();

}

}

拓展内容

java swing包

Swing 是一个为Java设计的GUI工具包。

Swing是JAVA基础类的一部分。

Swing包括了图形用户界面(GUI)器件如:文本框,按钮,分隔窗格和表。

Swing提供许多比AWT更好的屏幕显示元素。它们用纯Java写成,所以同Java本身一样可以跨平台运行,这一点不像AWT。它们是JFC的一部分。它们支持可更换的面板和主题(各种操作系统默认的特有主题),然而不是真的使用原生平台提供的设备,而是仅仅在表面上模仿它们。这意味着你可以在任意平台上使用JAVA支持的任意面板。轻量级组件的缺点则是执行速度较慢,优点就是可以在所有平台上采用统一的行为。

概念解析:

JFrame – java的GUI程序的基本思路是以JFrame为基础,它是屏幕上window的对象,能够最大化、最小化、关闭。

JPanel – Java图形用户界面(GUI)工具包swing中的面板容器类,包含在javax.swing 包中,可以进行嵌套,功能是对窗体中具有相同逻辑功能的组件进行组合,是一种轻量级容器,可以加入到JFrame窗体中。。

JLabel – JLabel 对象可以显示文本、图像或同时显示二者。可以通过设置垂直和水平对齐方式,指定标签显示区中标签内容在何处对齐。默认情况下,标签在其显示区内垂直居中对齐。默认情况下,只显示文本的标签是开始边对齐;而只显示图像的标签则水平居中对齐。

JTextField –一个轻量级组件,它允许编辑单行文本。

JPasswordField – 允许我们输入了一行字像输入框,但隐藏星号(*) 或点创建密码(密码)

JButton – JButton 类的实例。用于创建按钮类似实例中的 “Login”。

用java做好的登陆界面,当登陆成功后跳转到下个页面的代码是什么?

用java做好的登陆界面,当登陆成功后跳转到下个页面的代码如下:

如果登陆验证是在jsp中,那么跳转可以写成

1.response.sendRedirct(“跳转到页面”);

2.jsp:forward page=”跳转页面”/

3.response.setHeader(“Location”,””);

如果是登陆验证是在servlet中,那么中转可以写成

1.response.sendRedirect(“/a.jsp”);

2.RequestDispatcher dispatcher = request.getRequestDispatcher(“/a.jsp”);

dispatcher .forward(request, response);

也可以使用js代码实现:

script

function validate(){

window.location.href=”/index.jsp”;

}

/script

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/306505.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2025-01-02 12:01
下一篇 2025-01-02 12:01

相关推荐

  • java client.getacsresponse 编译报错解决方法

    java client.getacsresponse 编译报错是Java编程过程中常见的错误,常见的原因是代码的语法错误、类库依赖问题和编译环境的配置问题。下面将从多个方面进行分析…

    编程 2025-04-29
  • Java JsonPath 效率优化指南

    本篇文章将深入探讨Java JsonPath的效率问题,并提供一些优化方案。 一、JsonPath 简介 JsonPath是一个可用于从JSON数据中获取信息的库。它提供了一种DS…

    编程 2025-04-29
  • Java Bean加载过程

    Java Bean加载过程涉及到类加载器、反射机制和Java虚拟机的执行过程。在本文中,将从这三个方面详细阐述Java Bean加载的过程。 一、类加载器 类加载器是Java虚拟机…

    编程 2025-04-29
  • Java腾讯云音视频对接

    本文旨在从多个方面详细阐述Java腾讯云音视频对接,提供完整的代码示例。 一、腾讯云音视频介绍 腾讯云音视频服务(Cloud Tencent Real-Time Communica…

    编程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介绍

    本文将详细介绍Java Milvus SearchParam withoutFields的相关知识和用法。 一、什么是Java Milvus SearchParam without…

    编程 2025-04-29
  • Deepin系统分区设置教程

    本教程将会详细介绍Deepin系统如何进行分区设置,分享多种方式让您了解如何规划您的硬盘。 一、分区的基本知识 在进行Deepin系统分区设置之前,我们需要了解一些基本分区概念。 …

    编程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java语言中的一个版本,于2014年3月18日发布。本文将从多个方面对Java 8中某一周的周一进行详细的阐述。 一、数组处理 Java 8新特性之一是Stream…

    编程 2025-04-29
  • Java判断字符串是否存在多个

    本文将从以下几个方面详细阐述如何使用Java判断一个字符串中是否存在多个指定字符: 一、字符串遍历 字符串是Java编程中非常重要的一种数据类型。要判断字符串中是否存在多个指定字符…

    编程 2025-04-29
  • VSCode为什么无法运行Java

    解答:VSCode无法运行Java是因为默认情况下,VSCode并没有集成Java运行环境,需要手动添加Java运行环境或安装相关插件才能实现Java代码的编写、调试和运行。 一、…

    编程 2025-04-29
  • 如何在树莓派上安装Windows 7系统?

    随着树莓派的普及,许多用户想在树莓派上安装Windows 7操作系统。 一、准备工作 在开始之前,需要准备以下材料: 1.树莓派4B一台; 2.一张8GB以上的SD卡; 3.下载并…

    编程 2025-04-29

发表回复

登录后才能评论