java swing做的登陆界面,怎样判断数据库中用户名和密码?

问题描述

javaswing做的登陆界面,怎样判断数据库中用户名和密码?之前代码用户名和密码是定死的,现在想改成从数据库的表中读出Name和Password字段与文本框里输入的比较。。在网上差了很多,说要查询数据库,遍历第一个字段。。请问代码应该怎么改啊,本人基础差。。还请各位帮帮忙原来的代码是:packagecom.finance.ui;importjava.awt.*;importjavax.swing.*;importjava.awt.Rectangle;importjavax.swing.BorderFactory;importcom.finance.dao.*;importcom.finance.ui.LoginFrame;importcom.finance.ui.LoginFrame.LoginFrame_btnOK_actionAdapter;importcom.finance.ui.MainUiFrame;importjava.awt.Font;importjava.awt.event.ActionEvent;importjava.awt.event.ActionListener;importjava.sql.*;publicclassLoginFrameextendsJFrame{publicstaticvoidmain(String[]args){LoginFramemainFrame=newLoginFrame();mainFrame.setVisible(true);}publicLoginFrame(){try{this.setDefaultCloseOperation(EXIT_ON_CLOSE);jbInit();DimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();this.setResizable(false);this.setTitle("家庭理财-用户登录");this.setSize(400,220);DimensionframeSize=this.getSize();if(frameSize.height>screenSize.height){frameSize.height=screenSize.height;}if(frameSize.width>screenSize.width){frameSize.width=screenSize.width;}this.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);this.setVisible(true);}catch(Exceptionexception){exception.printStackTrace();}}privatevoidjbInit()throwsException{getContentPane().setLayout(null);pnlContainer.setBounds(newRectangle(0,0,400,220));pnlContainer.setLayout(null);lblUserName.setText("用户名:");lblUserName.setBounds(newRectangle(105,81,55,18));txtUserName.setBounds(newRectangle(173,81,120,18));lblPWD.setText("密 码:");lblPWD.setBounds(newRectangle(105,119,55,18));txtPWD.setBounds(newRectangle(173,119,120,18));jLabel1.setFont(newjava.awt.Font("宋体",Font.BOLD,18));jLabel1.setBorder(BorderFactory.createEtchedBorder());jLabel1.setHorizontalAlignment(SwingConstants.CENTER);jLabel1.setText("欢迎使用家庭理财小秘书");jLabel1.setBounds(newRectangle(77,20,235,45));btnOK.setBounds(newRectangle(91,157,81,23));btnOK.setText("确定");btnOK.addActionListener(newLoginFrame_btnOK_actionAdapter(this));btnCancel.setBounds(newRectangle(197,157,81,23));btnCancel.setText("取消");this.getContentPane().add(pnlContainer);pnlContainer.add(jLabel1);pnlContainer.add(lblUserName);pnlContainer.add(lblPWD);pnlContainer.add(btnOK);pnlContainer.add(btnCancel);pnlContainer.add(txtUserName);pnlContainer.add(txtPWD);}publicbooleangetFlag(){returnthis.flag;}JPanelpnlContainer=newJPanel();JLabellblUserName=newJLabel();JTextFieldtxtUserName=newJTextField();JLabellblPWD=newJLabel();JPasswordFieldtxtPWD=newJPasswordField();JLabeljLabel1=newJLabel();JButtonbtnOK=newJButton();JButtonbtnCancel=newJButton();privatebooleanflag=false;publicvoidbtnOK_actionPerformed(ActionEvente){if("jyf".equals(this.txtUserName.getText())&&"123".equals(newString(this.txtPWD.getPassword()))){System.out.println(this.txtUserName.getText()+this.txtPWD.getPassword());this.setFlag(true);booleanpackFrame=false;MainUiFrameframe=newMainUiFrame();//Validateframesthathavepresetsizes//Packframesthathaveusefulpreferredsizeinfo,e.g.fromtheirlayoutif(packFrame){frame.pack();}else{frame.validate();}//CenterthewindowDimensionscreenSize=Toolkit.getDefaultToolkit().getScreenSize();DimensionframeSize=frame.getSize();if(frameSize.height>screenSize.height){frameSize.height=screenSize.height;}if(frameSize.width>screenSize.width){frameSize.width=screenSize.width;}frame.setLocation((screenSize.width-frameSize.width)/2,(screenSize.height-frameSize.height)/2);System.out.println(this.getFlag());if(this.getFlag()){frame.setVisible(true);}else{}}else{System.out.println("密码错误!"+this.txtUserName.getText()+this.txtPWD.getPassword());this.flag=false;JOptionPane.showMessageDialog(this,"用户名或密码错误","登录失败",JOptionPane.ERROR_MESSAGE);this.txtUserName.requestFocus();this.txtUserName.selectAll();}}publicvoidsetFlag(booleanflag){this.flag=flag;}classLoginFrame_btnOK_actionAdapterimplementsActionListener{privateLoginFrameadaptee;LoginFrame_btnOK_actionAdapter(LoginFrameadaptee){this.adaptee=adaptee;}publicvoidactionPerformed(ActionEvente){adaptee.btnOK_actionPerformed(e);}}}数据库链接文件写好的packagecom.finance.dao;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.*;importjava.sql.*;publicclassDataBase{privatestaticConnectioncon=null;publicstaticConnectiongetCon(){try{if(con==null){Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");con=DriverManager.getConnection("jdbc:odbc:finance","sa","sa");}}catch(SQLExceptionex){ex.printStackTrace();}catch(ClassNotFoundExceptionex){ex.printStackTrace();}returncon;}}

解决方案

解决方案二:
你先要写一个查询是SQL语句查找用户名和密码,然后在去获得窗体中的用户名和密码,最后在进行判断。。。
解决方案三:
能不能说的具体点,在哪里添加代码?publicbooleanloginByNameAndPassword(Stringname,Stringpassword){Stringsql="select*fromtbl_userwhereName='"+name+"'andPassword='"+password+"'";try{Connectionconnection=this.getCon();PreparedStatementpstat=connection.prepareStatement(sql);ResultSetrs=pstat.executeQuery();if(rs.next()){returntrue;}}catch(Exceptione){System.out.println(e.getMessage());returnfalse;}returnfalse;}这个类添加到DataBase类里,然后if判断后要怎么改?具体代码是什么?
解决方案四:
LZ,还是去看看基础的java视频教程吧。
解决方案五:
MainFrame类在哪啊?
解决方案六:
你应该朝着这种思路去写:客户端:就是一个用户名,密码的输入框。然后用一个类去封装。然后用objecOutputStrem将这个对象发送到服务器端,得到那个类的用户名,密码,调用你的数据库语句,在进行判断。。。

解决方案七:
谢谢你的提示

时间: 2024-09-20 21:05:58

java swing做的登陆界面,怎样判断数据库中用户名和密码?的相关文章

代码-ASP.NET登陆页面时如何查询SQL Sever数据库中用户名和密码是否相匹配

问题描述 ASP.NET登陆页面时如何查询SQL Sever数据库中用户名和密码是否相匹配 小弟是个新手,想请教下ASP.NET中如何通过TextBox控件去查询SQL Sever数据库中用户名和密码是否相匹配.求完整的代码,谢谢各位前辈! 解决方案 string connect = ""Provider=Microsoft.Jet.OleDb.4.0;Data Source=|DataDirectory|contacts.mdb"";string query =

java swing 做预览界面

问题描述 就是通过按"预览",能够对一个EXCEL文件进行预览,列名固定,数据从该EXCEL中读取 问题补充:嗯,谢谢,我试试AngelAndAngel 写道 解决方案 收到没有???解决方案二:已经发了 别忘记给分啊 哈哈解决方案三:留邮箱我发给你 是一个文件夹 和3个包 然后在ExcelHelper这个里面有main方法是做测试的 你对照看一下.解决方案四:嗯 还有就是读取excel表格 它的(数据)行数是有一定限制的 这个得注意一下 假如有行数限制 就另外生成一页.希望对你有用.

使用java swing实现qq登录界面示例分享_java

用Java Swing做的一个QQ登录界面 复制代码 代码如下: import java.awt.Container;import java.awt.Image;import java.awt.event.ActionEvent;import java.awt.event.ActionListener; import javax.swing.ImageIcon;import javax.swing.JButton;import javax.swing.JCheckBox;import javax

php-用PHP做后台登陆界面时候所遇到的问题

问题描述 用PHP做后台登陆界面时候所遇到的问题 我用表单做的,当我点击登陆时候会触发一个事件,事件是一个用js写的函数,该函数是用来检查用户是不是输入了用户名和密码,同时也会提交一个表单,它是通过action属性跳转到检验所输入的用户名和密码是不是和数据库中的用户名和密码一样的功能,问题就是当我输入空的用户明和密码的时候,有js 写的提示框提示我输入用户名和密码,但当我点击提示框的确定时候程序依然走action中的php文件,不是回到登陆框,求解 解决方案 js检测要有返回值,要不无法阻止表单

Android UI组件----用相对布局RelativeLayout做一个登陆界面

[正文] 两个小时的学习成果,对于我这种还没入门但渴望不断进步的初学者来说,是一种激励.通过自己一行一行的敲代码,实现了用相对布局做一个登陆界面的效果. XML文件完整版代码如下: 1 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.com/tools" 3 android:layou

jsp(sql2000)做的登陆界面出现问题

问题描述 小弟现在很郁闷,做的那么多还是不行!哪位大哥帮忙下啊!就是一个登陆页面获取输入的用户名密码再查看数据库看有没有匹配的,如果有就跳到一个新页面!简单的很,可我老是出现问题,老是jdbc什么...sa用户登录失败的!换了好多方法都不行,我配置了jdktomcat安装了sqlsp4的补丁sql2000的jdbc驱动哪位给了例子就最好啦!!!获取输入的用户名密码再查看数据库看有没有匹配的,如果有就跳到一个新页面!就是这个功能的小例子!我的代码我全删了搞的头大! 解决方案 解决方案二:自己先顶下

请问怎样做成象控制台一样在界面中分布骤地输入数字呀?用Java swing做的界面,比如输入数组。

问题描述 publicint输入个数(){Homepage.getText().append("n请输入集合S的个数:");Stringstr=Homepage.getText().getText();str=str.substring(str.length()-1);intn=Integer.parseInt(str);returnn;}publicvoid输入集合(intn1)throwsIOException{Homepage.getText().append("n请输

我想做一个android手机的登陆界面,求指点

问题描述 我想做一个android手机的登陆界面,求指点 服务器是别人做好的.现在想做个登陆界面,但是没有做过,不知道该看什么资料,从哪里着手,请大神指点(如果可以,详细点最好). 解决方案 1.布局设计 2.使用sharedpreferences进行存储账号密码.http://blog.csdn.net/wulianghuan/article/details/8501063 3.将账号密码发送到服务器进行验证.http://blog.csdn.net/guolin_blog/article/d

java swing 按键按下只调用一次

我使用Java swing做了一个密码管理系统,并且在登录界面增加了回车事件,但是每次回车时会触发两次. 界面:   回车事件处理代码: Java代码   Toolkit toolkit = Toolkit.getDefaultToolkit();           // 注册应用程序全局键盘事件, 所有的键盘事件都会被此事件监听器处理.           toolkit.addAWTEventListener(                   new java.awt.event.AW