我帮你写了一个最简单的、满足了你的要求的项目。登录界面中,输入仓库名字,然后连接数据,查询是否存在改仓库名,若存在,则向主窗体跳转,若不存在,则提示仓库名不存在。
代码如下:
import javaawtBorderLayout;
import javaxswingJPanel;
import javaxswingJFrame;
import javaxswingJLabel;
import javaawtRectangle;
import javasqlConnection;
import javasqlDriverManager;
import javasqlResultSet;
import javasqlStatement;
import javaxswingJTextField;
import javaxswingJButton;
public class MySJK extends JFrame {
private static final long serialVersionUID = 1L;
private JPanel jContentPane = null;
private JLabel jLabel = null;
private JTextField jTextField = null;
private JButton jButton = null;
/
This is the default constructor
/
public MySJK() {
super();
initialize();
}
/
This method initializes this
@return void
/
private void initialize() {
thissetSize(300, 200);
thissetContentPane(getJContentPane());
thissetTitle("登录");
thissetVisible(true);
}
/
This method initializes jContentPane
@return javaxswingJPanel
/
private JPanel getJContentPane() {
if (jContentPane == null) {
jLabel = new JLabel();
jLabelsetBounds(new Rectangle(30, 16, 130, 18));
jLabelsetText("请输入要登录的仓库:");
jContentPane = new JPanel();
jContentPanesetLayout(null);
jContentPaneadd(jLabel, null);
jContentPaneadd(getJTextField(), null);
jContentPaneadd(getJButton(), null);
}
return jContentPane;
}
/
This method initializes jTextField
@return javaxswingJTextField
/
private JTextField getJTextField() {
if (jTextField == null) {
jTextField = new JTextField();
jTextFieldsetBounds(new Rectangle(30, 45, 194, 27));
}
return jTextField;
}
/
This method initializes jButton
@return javaxswingJButton
/
private JButton getJButton() {
if (jButton == null) {
jButton = new JButton();
jButtonsetBounds(new Rectangle(149, 87, 74, 26));
jButtonsetText("登录");
jButtonaddActionListener(new javaawteventActionListener() {
public void actionPerformed(javaawteventActionEvent e) {
String myckstr=jTextFieldgetText();
String checkstr="false";
Connection con=null;
try{
ClassforName("sunjdbcodbcJdbcOdbcDriver");
con=DriverManagergetConnection("jdbc:odbc:CANGKU","","");
Statement sta=concreateStatement();
ResultSet rs=staexecuteQuery("select from 仓库 where ckid='"+myckstr+"'");
if(rsnext()){
checkstr="true";
}
rsclose();
staclose();
}
catch(Exception ee){
eeprintStackTrace();
}
finally{
try{
conclose();
}
catch(Exception ee){
eeprintStackTrace();
}
}
if(checkstrequals("true")){
////登录系统的主窗体
}
else{
/////提示仓库名不存在
}
}
});
}
return jButton;
}
public static void main(String args[]){
new MySJK();
}
}
////记得给我分哦!^_^
已经取到输入的username,passwd
使用jdbc或框架获取数据库中的密码,select passwd from login where username = username
然后用输入的密码和数据库中的密码比较
1、查不到记录,用户不存在
2、密码不一致,登录失败
3、密码验证通过,登录成功
连接ACCESS可以用 jdbc-odbc桥,
先在控制面板-管理工具-数据源,里建立一个ACCESS的数据源
在JAVA里调用CLASS的静态方法forName
ClassforName("sunjdbcodbcJdbcOdbcDriver")
这个有可能发生异常,所有要用try catch
之后是连接到数据库
利用javasql包中的Connection声明一个对象,然后用类DriverManager调用它
的静态方法getConnection创建连接对象
Connection con=DriverManagergetConnection("jdbc:odbc:数据源名字","用户名","密码"),数据库没密码的话""里面什么也不添
连接数据库的时候要捕获SQLException异常
文件夹:build-存放编译后的class文件
nbproject-存放项目的具体配置文件
src-java源代码存放文件夹
test-JUnit测试文件存放位置
Buildxml构建描述文件,因为Netbeans的编译打包是基于ant的,build就是ant实现自动编译打包的描述文件。
manifestmf是打包的时候需要的一个清单文件,是对打包后的jar包中的文件的一个描述下文件。
originaljava,netbeans_automatic_build,这两个文件不知道你用的什么Netbeans版本,在我的版本中并未生成此文件。
build-implxml是对Buildxml文件的具体描述,Buildxml其实并未实现具体的ant构建脚本,具体是在该文件中实现的,如果你看过buildxml的源代码,就会发现一句<import file="nbproject/build-implxml"/>,这你就知道是什么意思了。
1写一个 *** 作数据库的通用DAO(假设为Daojava),提供·加载数据库驱动和获取数据库连接的方法:voidgetConnection();·执行查询的方法:ResultSetexecuteQuery(Stringsql);·执行更新的方法:IntegerexecuteUpdate(Stringsql);·关闭资源的方法:voidreleaseResource(Connectioncon);2在你的界面中把用户名和密码取出来·username=yourTextFieldgetText();·password=yourPasswordFieldgetText();3匹配·验证username、password是否是有效输入值(例如:不能包含特殊字符,不能有注入嫌疑等)·Stringsql="selectfromyourTablewhereusername='"+username+"'andpassword='"+password+"'";·DaoexecuteQuery(sql):如果有结果说明合法,否则不合法。不懂Connect我
以上就是关于我用Java做一个登录界面,并连接数据库,遇到了一些问题。全部的内容,包括:我用Java做一个登录界面,并连接数据库,遇到了一些问题。、java编程,查询数据库实现登录页面。sql中已经建好表,名为login。大神们在此基础上写下代码!帮帮忙!、java 登陆注册界面要连接数据库的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)