搜索
您的当前位置:首页正文

java实现简单的星座查询

来源:哗拓教育
java实现简单的星座查询

在校⼩⽩,⼤神勿喷。版本已简化

连接mysql数据库验证⽤户名及密码进⾏登陆

public class mysql {Connection con;public mysql(){ try{

Class.forName(\"com.mysql.jdbc.Driver\"); // 加载驱动

String url = \"jdbc:mysql://localhost:3306/mysql?useSSL=false\"; // 定义数据库连接URL con = DriverManager.getConnection(url, \"root\建⽴连接 }

catch(Exception e){

System.out.println(\"数据库连接失败\"); }}}

这⾥使⽤的mysql包需要⾃⾏导⼊

try {

statement = ce.createStatement();

ResultSet rs=statement.executeQuery(\"select * from java where userName='\"+name+\"' and pwd='\"+pwd+\"'\");}连接数据库成功后查询数据库以验证⽤户名及密码此版本为简化版,附完整代码如下:

LoginListener类:

public class LoginListener implements ActionListener{ private JTextField text_name;

private JPasswordField text_password; private JFrame login;

public LoginListener(JFrame login,JTextField text_name,JPasswordField text_password){ //获取登录界⾯、账号密码输⼊框对象 this.login=login;//获取登录界⾯

this.text_name=text_name;//获取⽂本框

this.text_password=text_password;//获取密码框 }

public void actionPerformed(ActionEvent e) {

//预封装dim2的⾼度和宽度

Dimension dim2 = new Dimension(100,30); //预封装dim3的⾼度和宽度

Dimension dim3 = new Dimension(300,30);

//⽣成新界⾯

JFrame login2 = new JFrame(\"⾸页\"); login2.setSize(1450,700);

login2.setDefaultCloseOperation(3); login2.setLocationRelativeTo(null);

login2.setFont(new Font(\"宋体\宋体,14号字体 //在登录失败界⾯创建组件 JPanel jp1 = new JPanel(); JPanel jp2 = new JPanel();

//获取⽤户名以及密码

String name=text_name.getText(); String pwd=text_password.getText();

mysql ml=new mysql(); Connection ce=ml.con;

//查询数据库并判断⽤户名和密码是否正确 Statement statement; try {

statement = ce.createStatement();

ResultSet rs=statement.executeQuery(\"select * from java where userName='\"+name+\"' and pwd='\"+pwd+\"'\"); if (rs.next()) {

//登陆成功界⾯--提⽰⽂字 login2.setLayout(null);

JLabel jl1=new JLabel(\"欢迎使⽤星座查询器,请您在下⽅的⽂本框中输⼊您的出⽣⽉⽇。例如:1⽉20⽇则输⼊1.20\"); login2.add(jl1);

jl1.setBounds(0, 0, 800, 50);

jl1.setFont(new Font(\"宋体\

//⽂本框相关定义

JTextField tf1=new JTextField(); login2.add(tf1);

tf1.setBounds(200, 70, 100,30); //查询按钮相关定义

JButton jb1=new JButton(); login2.add(jb1); jb1.setText(\"查询\");

jb1.setBounds(600, 70,100 , 30);

jb1.addActionListener(new ActionListener() {//监听查询按钮

@Override

public void actionPerformed(ActionEvent e) { // TODO Auto-generated method stub

String a=tf1.getText();//获取⽂本框内容

double b=Double.parseDouble(a);//将⽂本框内容转换为浮点型⼩数

if (b>=1.20&&b<=2.18) //判断

{

//定义星座名称、照⽚、性格分析 JLabel jl1JLabel=new JLabel(); jl1JLabel.setText(\"⽔瓶座\"); login2.add(jl1JLabel);

jl1JLabel.setBounds(0, 100, 200, 50);

JLabel jl1=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/011.PNG\"); jl1.setIcon(spIcon); login2.add(jl1); jl1.setVisible(true);

jl1.setBounds(0, 120, 100, 100);//下⽅剩390

JLabel jlb1=new JLabel(\"⽔瓶座:⼥性富知性理性,善于分析与思考,具有思想家的⽓质,因此天⽣有清晰冷静的头脑和丰富的创造⼒。,\"

+ \"男性永远都是时尚的顶尖⼈物。这类⼈思想是天马⾏空的。\"); login2.add(jlb1);

jlb1.setBounds(0,210, 690, 70);

}else if (b>=2.19&&b<=3.20) { JLabel jl2JLabel=new JLabel(); jl2JLabel.setText(\"双鱼座\"); login2.add(jl2JLabel);

jl2JLabel.setBounds(100, 100, 100, 50);

JLabel jl2=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/012.PNG\");

jl2.setIcon(spIcon); login2.add(jl2); jl2.setVisible(true);

jl2.setBounds(100, 120, 100, 100);

JLabel jlb1=new JLabel(\"双鱼座:⼥性::从表⾯上看,双鱼座的⼈内向⽽羞怯,然⽽内⼼常常是复杂⽽⽭盾的,同时存在着善与恶,精神与物质等对⽴的争扎,\"

+ \"男性:是最具备艺术⽓质的⼀类⼈。他们敏锐⽽伤感。天⽣具有表演天赋,容易博得他⼈的同情\"); login2.add(jlb1);

jlb1.setBounds(0,290, 690, 70);

}else if (b>=3.21&&b<=4.19) {

JLabel jl3JLabel=new JLabel(); jl3JLabel.setText(\"⽩⽺座\"); login2.add(jl3JLabel);

jl3JLabel.setBounds(200, 100, 100, 50);

JLabel jl3=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/001.PNG\"); jl3.setIcon(spIcon); login2.add(jl3); jl3.setVisible(true);

jl3.setBounds(200, 120, 100, 100);

JLabel jlb1=new JLabel(\"⽩⽺座:⼥性:性格爽朗,不拘⼩节,极具领袖⽓质,充满⾃信⽽固执有旺盛的企图⼼,喜欢接受挑战,\"

+ \"男性:绝对的热⾎男⼉,有⼀点冲动和野⼼,不过有时候他们更加会夸夸其谈,喜欢炫耀⾃⼰的同时更加容易陷⼊情⽹\");

login2.add(jlb1);

jlb1.setBounds(0,360, 690, 70);

}else if (b>=4.20&&b<=5.20) {

JLabel jl4JLabel=new JLabel(); jl4JLabel.setText(\"⾦⽜座\"); login2.add(jl4JLabel);

jl4JLabel.setBounds(300, 100, 100, 50);

JLabel jl4=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/002.PNG\"); jl4.setIcon(spIcon); login2.add(jl4); jl4.setVisible(true);

jl4.setBounds(300, 120, 100, 100);

JLabel jlb1=new JLabel(\"⾦⽜座:⼥性:追求脚踏实地的平实感,个性温和,庄重正直,对⾳乐,舞蹈的节奏感有着与⽣俱来的天赋,\"

+ \"男性:沉默寡⾔,惜字如⾦。是最容易⽓死⼈的⼀种。表⾯上都很斯⽂,踏实,给⼈务实的感觉.但是⾻⼦⾥却很风骚\");

login2.add(jlb1);

jlb1.setBounds(0,430, 690, 70);

}else if (b>=5.21&&b<=6.21) {

JLabel jl5JLabel=new JLabel(); jl5JLabel.setText(\"双⼦座\"); login2.add(jl5JLabel);

jl5JLabel.setBounds(400, 100, 100, 50);

JLabel jl5=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/003.PNG\"); jl5.setIcon(spIcon); login2.add(jl5); jl5.setVisible(true);

jl5.setBounds(400, 120, 100, 100);

JLabel jlb1=new JLabel(\"双⼦座:⼥性:兼具光明开朗的⼀⾯和阴霾低潮的⼀⾯,拥有敏捷的反应,学习能⼒强,

显得才华洋溢,但需要坚持到底,\"

+ \"男性:⽐较实际。喜欢将来可以帮助⾃⼰的⼥性。⼼⽓⽐较⾼傲,双⼦座的男⼈聪明⽽幽默\"); login2.add(jlb1);

jlb1.setBounds(0,500, 690, 70);

}else if (b>=6.22&&b<=7.22) {

JLabel jl6JLabel=new JLabel(); jl6JLabel.setText(\"巨蟹座\"); login2.add(jl6JLabel);

jl6JLabel.setBounds(500, 100, 100, 50);

JLabel jl6=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/004.PNG\"); jl6.setIcon(spIcon); login2.add(jl6); jl6.setVisible(true);

jl6.setBounds(500, 120, 100, 100);

JLabel jlb1=new JLabel(\"巨蟹座:⼥性:拥有爱家的母性本质,他们就像蟹⼀样,有坚硬的外壳,却有柔软的内⼼,所以巨蟹座很懂得保护⾃⼰,\"

+ \"男性:因为很简单,EQ发育⽐较迟缓,该风流不枉少年郎的时候,他们在打瞌睡,当⼈家改邪归正了以后,他才如梦初醒。\");

login2.add(jlb1);

jlb1.setBounds(0,570, 690, 70);

}else if (b>=7.23&&b<=8.22) {

JLabel jl7JLabel=new JLabel(); jl7JLabel.setText(\"狮⼦座\"); login2.add(jl7JLabel);

jl7JLabel.setBounds(600, 100, 100, 50);

JLabel jl7=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/005.PNG\"); jl7.setIcon(spIcon); login2.add(jl7); jl7.setVisible(true);

jl7.setBounds(600, 120, 100, 100);

JLabel jlb1=new JLabel(\"狮⼦座:⼥性:热情洋溢,本质上阳刚,却也容易傲慢顽固。具领导能⼒与侠义风范,充满活⼒和强烈的企图⼼,却不善于作深⼊的思考,\"

+ \"男性:坦诚,⼤⽅,爱恨分明,事业上容易成为霸主,群体⾥容易成为领袖.但是狮⼦座的男性在处理⼥性问题的时候,往往会优柔寡断\"); login2.add(jlb1);

jlb1.setBounds(710,210, 690, 70);

}else if (b>=8.23&&b<=9.22) {

JLabel jl8JLabel=new JLabel(); jl8JLabel.setText(\"处⼥座\"); login2.add(jl8JLabel);

jl8JLabel.setBounds(700, 100, 100, 50);

JLabel jl8=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/006.PNG\"); jl8.setIcon(spIcon); login2.add(jl8); jl8.setVisible(true);

jl8.setBounds(700, 120, 100, 100);

JLabel jlb1=new JLabel(\"处⼥座:⼥性:完美主义者,感觉纤细敏锐,但同时也保有冷静的头脑,对事物能作出正确的判断。因为⾃我要求甚⾼,很容易神经紧张,\"

+ \"男性:对感情⽐较内敛,不轻易的表露出来,这个⼤概和他们有⼀颗敏感⽽害羞的⼼有关。\"); login2.add(jlb1);

jlb1.setBounds(710,280, 690, 70);

}else if (b>=9.23&&b<=10.23) {

JLabel jl9JLabel=new JLabel(); jl9JLabel.setText(\"天秤座\"); login2.add(jl9JLabel);

jl9JLabel.setBounds(800, 100, 100, 50);

JLabel jl9=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/007.PNG\"); jl9.setIcon(spIcon); login2.add(jl9); jl9.setVisible(true);

jl9.setBounds(800, 120, 100, 100);

JLabel jlb1=new JLabel(\"天秤座:⼥性:宽容,讲求和平,不喜争⽃,常常扮演和平使者的⾓⾊。你极具理性,很能明辩是⾮,有⾼明的社交能⼒和谈话技巧,\"

+ \"男性:很和善,容易与他⼈交往。给⼈留下的印象⼀般都是⾼贵典雅。但在事业上⼀般缺乏竞争的野⼼,⾏为处事都很淡然\");

login2.add(jlb1);

jlb1.setBounds(710,350, 690, 70);

}else if (b>=10.24&&b<=11.22) {

JLabel jl10JLabel=new JLabel(); jl10JLabel.setText(\"天蝎座\"); login2.add(jl10JLabel);

jl10JLabel.setBounds(900, 100, 100, 50);

JLabel jl10=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/008.PNG\"); jl10.setIcon(spIcon); login2.add(jl10); jl10.setVisible(true);

jl10.setBounds(900, 120, 100, 100);

JLabel jlb1=new JLabel(\"天蝎座:⼥性:深沉内敛,沉默寡⾔,做事谨慎且深思熟虑,很能掌握事物本质,不善于表达感情,容易给⼈顺从的错觉,但内⼼是坚决⽽固执的。,\"

+ \"男性:报复⼼强是众⼈皆知,但是他们还有⼀点也是很厉害的,就是⼒争上游,绝不服输的精神\"); login2.add(jlb1);

jlb1.setBounds(710,420, 690, 70);

}else if (b>=11.23&&b<=12.21) {

JLabel jl11JLabel=new JLabel(); jl11JLabel.setText(\"射⼿座\"); login2.add(jl11JLabel);

jl11JLabel.setBounds(1000, 100, 100, 50);

JLabel jl11=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/009.PNG\"); jl11.setIcon(spIcon); login2.add(jl11); jl11.setVisible(true);

jl11.setBounds(1000, 120, 100, 100);

JLabel jlb1=new JLabel(\"⽔瓶座:⼥性:热情,热爱⽣命的乐天主义者,你的率直,天真的性格使你⼴受欢迎,崇尚⾃由,反应灵敏,⾏动敏捷 ,\"

+ \"男性:不太注重对⽅是否有出众的容貌。他们爱上⼀个⼈有时候连⾃⼰都缺少⼀个理由,可能像某个⼈,触动⾃⼰的⼼弦就会追求,他们很少默默暗恋别⼈,有话直说\"); login2.add(jlb1);

jlb1.setBounds(710,490, 690, 70);

}else if (b>=12.22&&b<=12.31||b>=1.1&&b<=1.19) {

JLabel jl12JLabel=new JLabel(); jl12JLabel.setText(\"摩羯座\"); login2.add(jl12JLabel);

jl12JLabel.setBounds(1100, 100, 100, 50);

JLabel jl12=new JLabel();

Icon spIcon=new ImageIcon(\"ZP/010.PNG\"); jl12.setIcon(spIcon); login2.add(jl12); jl12.setVisible(true);

jl12.setBounds(1100, 120, 100, 100);

JLabel jlb1=new JLabel(\"摩羯座:⼥性:从表⾯上看,双鱼座的⼈内向⽽羞怯,然⽽内⼼常常是复杂⽽⽭盾的,同时存在着善与恶,精神与物质等对⽴的争扎,\"

+ \"男性:事业⼼很强。不⽢落后别⼈,⼒争第⼀。他们都很珍惜⾃⼰的另⼀半,他们⾃我给与的压⼒都很⼤,凡事都要⼒求完美\");

login2.add(jlb1);

jlb1.setBounds(710,560, 690, 70); } } });

login2.setVisible(true);

//通过获取登录界⾯对象,⽤dispose⽅法关闭它 login.dispose(); }

else {

JFrame jf1=new JFrame(); //错误界⾯中使⽤边界布局,

JLabel jl1 = new JLabel(\" 账号或密码错误,请重新输⼊!\"); jf1.setSize(500, 200); //宋体,14号字体

jl1.setFont(new Font(\"宋体\ jl1.setPreferredSize(dim3); //将textName标签添加到窗体上 jp1.add(jl1);

jf1.add(jp1,BorderLayout.NORTH);//布局

JButton close = new JButton(\"确定\");//确定按钮相关定义

close.setFont(new Font(\"宋体\按钮⽂字字体设置 //设置按键⼤⼩

close.setSize(dim3); jp2.add(close);

jf1.add(jp2,BorderLayout.SOUTH);

close.addActionListener(new ActionListener()//对判断按钮进⾏监听 {

public void actionPerformed(ActionEvent e) {

jf1.dispose();//关闭窗⼝ } });

jf1.setResizable(false);

jf1.setVisible(true);//显⽰⽅式 }

} catch (SQLException e1) {

// TODO Auto-generated catch block e1.printStackTrace();

login2.setResizable(false);

login2.setVisible(true);//显⽰⽅式 } } }

dabianDemo类:

public class dabianDemo {

public static void main(String[] args) { // TODO Auto-generated method stub

dabianDemo login = new dabianDemo();//实例化Login类的对象, login.initUI();//调⽤初始化界⾯的⽅法 }

public void initUI() {

JFrame jf1 = new JFrame();//实例化JFrame类的对象

jf1.setTitle(\"登录\");//设置窗体标题

jf1.setSize(400, 250);//设置窗体⼤⼩,只对顶层容器⽣效

jf1.setDefaultCloseOperation(3);//设置窗体关闭操作,3表⽰关闭窗体退出程序

jf1.setLocationRelativeTo(null);//设置窗体相对于另⼀组间的居中位置,参数null表⽰窗体相对于屏幕的中央位置 jf1.setFont(new Font(\"宋体\设置字体,显⽰格式正常,⼤⼩

FlowLayout fl = new FlowLayout(FlowLayout.CENTER,10,10);//实例化流式布局类的对象,指定对齐⽅式为居中对齐组件之间的间隔为10个像素

jf1.setLayout(fl);//实例化流式布局类的对象

JLabel jl1 = new JLabel(\"账号:\");//实例化JLabel标签对象,该对象显⽰“账号” jl1.setFont(new Font(\"宋体\宋体,14号

jf1.add(jl1);//将jl1标签添加到窗体上

JTextField jtf1 = new JTextField();//实例化JTextField标签

Dimension dim1 = new Dimension(300,30); //封装了⼀个⽂本框的⾼度和宽度 jtf1.setPreferredSize(dim1);//设置除顶级容器组件以外其他组件的⼤⼩ jf1.add(jtf1);//将jtf1标签添加到窗体上

JLabel jl2 = new JLabel(\"密码:\");//实例化JLabel标签对象,该对象显⽰“密码” jl2.setFont(new Font(\"宋体\ jf1.add(jl2);//将jl2添加到窗体上

JPasswordField jp1 = new JPasswordField();//实例化JPasswordField密码框 jp1.setPreferredSize(dim1);//使⽤封装设置⼤⼩ jf1.add(jp1);//添加到窗体

JButton button1 = new JButton();//实例化JButton组件

Dimension dim2 = new Dimension(100,30);//封装了按钮控件的⾼度和宽度 button1.setText(\"登录\");//设置按键的显⽰内容

button1.setFont(new Font(\"宋体\设置字体

button1.setSize(dim2);//使⽤封装设置按键⼤⼩ jf1.add(button1);

jf1.setVisible(true);//窗体可见,⼀定要放在所有组件加⼊窗体后

LoginListener ll = new LoginListener(jf1,jtf1,jp1);//对登录按钮设置监听 button1.addActionListener(ll); }}

mysql类:

public class mysql {Connection con;public mysql(){ try{

Class.forName(\"com.mysql.jdbc.Driver\"); // 加载驱动

String url = \"jdbc:mysql://localhost:3306/mysql?useSSL=false\"; // 定义数据库连接URL con = DriverManager.getConnection(url, \"root\建⽴连接 }

catch(Exception e){

System.out.println(\"数据库连接失败\"); }}}

因篇幅问题不能全部显示,请点此查看更多更全内容

Top