肝完Alibaba这份面试通关宝典,我成功拿下今年第15个Offer

前言

金九银十就要到了,不少人找LZ咨询,问我现在的面试需要提前准备什么?为了造福更多的开发者,也为了让更多的小伙伴通过面试;LZ近期也一直想着怎么才能帮到大家。所以近期在各大渠道整合大厂相关面试题,并结合了我一位现在已经入职阿里(阿里的Offer就是他今年的第15张offer)的朋友一整年的面试经历,为大家打造出一份金九银十Java面试通关宝典。

面试技巧思维导图

 

内容涵盖:

Java基础、JVM多线程、Spring、MyBatis、SpringBoot、MySQL、SpringCloud、Dubbo、Nginx、MQ、数据结构与算法、Linux、Zookeeper、Redis、分布式、网络、设计模式、maven、ElasticSearch、tomcat、Git等

一般来讲现在Java面试最需要贮备的就是这几大方面:Java基础+数据结构和算法题 + 计网 + 设计模式 + 数据库 + 开发框架(SSM)+中间件技术。所以LZ下面展示也以这几大块为大家展示这份金九银十Java面试通关宝典。

金九银十Java面试通关宝典

  • Java基础

  • 数据结构和算法题

  • 计网

  • 设计模式

  • 数据库(这里就以MySQL为主其他数据库不过多展示)

  • 开发框架(SSM)

  • 中间件技术(这里就以kafka为主其他数据库不过多展示)

 

当然由于头条篇幅的限制还有很多的章节没有在文中体现出来,整份金九银十Java面试通关宝典一共是有226页,578张图,12W字的,里面涵盖的题目都是Java面试近期高频题,而且LZ还找到了相关的视频解析帮助大家理解:

修改学生界面

StuUpDiag.java

import javax.swing.JDialog;
import javax.swing.*;

import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Statement;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.*;
/*
// * 是修改学生信息

 */
public class StuUpDiag extends JDialog implements ActionListener {
    //定义我需要的swing组件
    JLabel jl1,jl2,jl3,jl4,jl5,jl6,jl7;
    JTextField jf1,jf2,jf3,jf4,jf5,jf6,jf7;
    JPanel jp1,jp2,jp3;
    JButton jb1,jb2;
    //owner代笔父窗口,title是窗口的名字,modal指定是模式窗口()或者非模式窗口
    public StuUpDiag(Frame owner, String title, boolean modal, StuModel sm, int rowNum){
        //调用父类方法
        super(owner,title,modal);

        jl1 = new JLabel("学号");
        jl2 = new JLabel("名字");
        jl3 = new JLabel("性别");
        jl4 = new JLabel("年龄");
        jl5 = new JLabel("籍贯");
        jl6 = new JLabel("联系方式");
        jl7 = new JLabel("班级");



        jf1 = new JTextField(30);
        jf1.setText((sm.getValueAt(rowNum, 0)).toString());
        jf2 = new JTextField(30);
        jf2.setText((String)sm.getValueAt(rowNum, 1));
        jf3 = new JTextField(30);
        jf3.setText(sm.getValueAt(rowNum, 2).toString());
        jf4 = new JTextField(30);
        jf4.setText((sm.getValueAt(rowNum, 3)).toString());
        jf5 = new JTextField(30);
        jf5.setText((String)sm.getValueAt(rowNum, 4));
        jf6 = new JTextField(30);
        jf6.setText((String)sm.getValueAt(rowNum, 5));
        jf7 = new JTextField(30);
        jf7.setText((String)sm.getValueAt(rowNum, 6));

        jb1 = new JButton("修改");
        jb1.addActionListener(this::actionPerformed);
        jb2 = new JButton("取消");
        jb2.addActionListener(this::actionPerformed);

        jp1 = new JPanel();
        jp2 = new JPanel();
        jp3 = new JPanel();

        //设置布局
        jp1.setLayout(new GridLayout(7,1));
        jp2.setLayout(new GridLayout(7,1));

        jp3.add(jb1);
        jp3.add(jb2);

        jp1.add(jl1);
        jp1.add(jl2);
        jp1.add(jl3);
        jp1.add(jl4);
        jp1.add(jl5);
        jp1.add(jl6);
        jp1.add(jl7);

        jp2.add(jf1);
        jp2.add(jf2);
        jp2.add(jf3);
        jp2.add(jf4);
        jp2.add(jf5);
        jp2.add(jf6);
        jp2.add(jf7);

        this.add(jp1, BorderLayout.WEST);
        this.add(jp2, BorderLayout.CENTER);
        this.add(jp3, BorderLayout.SOUTH);
        this.setLocation(600, 350);
        this.setSize(300,200);
        this.setVisible(true);
    }
    @Override
    public void actionPerformed(ActionEvent e) {
        // TODO Auto-generated method stub
        if(e.getSource() == jb1){
            Connection ct = null;
            PreparedStatement pstmt = null;
            ResultSet rs = null;

            try{
                //1.加载驱动
                Class.forName("com.mysql.cj.jdbc.Driver");
                System.out.println("加载成功");
                //2.连接数据库
                //定义几个常量
                String url = "jdbc:mysql://localhost:3306/student";
                String user = "root";
                String passwd = "020334";
                ct = DriverManager.getConnection(url,user,passwd);
                //与编译语句对象
                String strsql = "update stu set stuName = '"+jf2.getText()+"',stuSex = '"+jf3.getText()+"',stuAge = '"+jf4.getText()+"',stuJG='"+jf5.getText()+"',stuLX='"+jf6.getText()+"',stuBJ='"+jf7.getText()+"' where stuId = '"+jf1.getText()+"'";
                pstmt = ct.prepareStatement(strsql);

                pstmt.executeUpdate();
                JOptionPane.showMessageDialog(null, "修改成功", "修改情况",JOptionPane.PLAIN_MESSAGE);
                this.dispose();//关闭学生对话框

            }catch(Exception arg1){
                arg1.printStackTrace();
            }finally{
                try{
                    if(rs!=null){
                        rs.close();
                        rs = null;
                    }
                    if(pstmt != null){
                        pstmt.close();
                        pstmt = null;
                    }
                    if(ct != null){
                        ct.close();
                        ct = null;
                    }
                }catch(Exception arg2){
                    arg2.printStackTrace();
                }
            }

        }else{
            this.dispose();//关闭学生对话框
        }

    }


}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值