IDEA+Java+Servlet

Sex varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

Phone varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

Email varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,

PRIMARY KEY (Id) USING BTREE

) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;


– Records of stuinfo


INSERT INTO stuinfo VALUES (‘105001’, ‘黄晋江’, 35, ‘数计院’, ‘男’, ‘18050193364’, ‘48577342@qq.com’);

INSERT INTO stuinfo VALUES (‘105002’, ‘叶小白’, 21, ‘数计院’, ‘男’, ‘18056789321’, ‘4793247@qq.com’);

INSERT INTO stuinfo VALUES (‘105003’, ‘林幼玲’, 19, ‘医学院’, ‘女’, ‘15745492821’, ‘4488742@qq.com’);

INSERT INTO stuinfo VALUES (‘105004’, ‘白凌琳’, 20, ‘文学院’, ‘女’, ‘180437289678’, ‘75834538@qq.com’);

INSERT INTO stuinfo VALUES (‘105005’, ‘廖江土’, 22, ‘数计院’, ‘男’, ‘18050400657’, ‘73476432@qq.com’);

INSERT INTO stuinfo VALUES (‘105009’, ‘黄晋江’, 77, ‘数计院’, ‘男’, ‘18050193364’, ‘48577342111@qq.com’);

SET FOREIGN_KEY_CHECKS = 1;

二、系统展示

======

1.登录页面


2.主页面


3.查询学生信息


4.添加学生信息


5.修改学生信息


三、部分代码

=======

StudentDao


package cn.fjnu.edu.dao;

import cn.fjnu.edu.model.Student;

import java.util.List;

public interface StudentDao {

public boolean Create(Student student) throws Exception;

public boolean Update(Student student) throws Exception;

public boolean Delete(Student student) throws Exception;

public boolean findLogin(Student student) throws Exception;

List findAll(String keyWord) throws Exception;

}

StuDaoImpl


package cn.fjnu.edu.daoimpl;

import cn.fjnu.edu.dao.StudentDao;

import cn.fjnu.edu.model.Student;

import cn.fjnu.edu.util.DBUtil;

import java.sql.Connection;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.Statement;

import java.util.ArrayList;

import java.util.List;

public class StuDaoImpl implements StudentDao {

final String strCreate = “insert into stuinfo values(?,?,?,?,?,?,?)”;

final String strDelete = “delete from stuinfo where 1=1”;

final String strUpdate = “update stuinfo set”;

final String strFind = “select * from stuinfo where Name like ? or Dep like ? or Id like ? or Age like ? or Sex like ? or Phone like ? or Email like ?”;

final String strLogin = “select Name from stuinfo where id=? and Phone=?”;

@Override

public boolean Create(Student student) throws Exception {

DBUtil msh = new DBUtil();

Connection conn = msh.getConnection();

PreparedStatement pstmt = conn.prepareStatement(strCreate);

pstmt.setString(1, student.getId());

pstmt.setString(2, student.getName());

pstmt.setInt(3, student.getAge());

pstmt.setString(4, student.getDep());

pstmt.setString(5, student.getSex());

pstmt.setString(6, student.getPhone());

pstmt.setString(7, student.getEmail());

int i = pstmt.executeUpdate();

pstmt.close();

if (i > 0)

return true;

else

return false;

}

@Override

public boolean Update(Student student) throws Exception {

DBUtil msh = new DBUtil();

Connection conn = msh.getConnection();

Statement stmt = conn.createStatement();

String str = strUpdate;

if (!(student.getName().equals(null))) {

str += " Name=‘" + student.getName() + "’ ";

}

if (!(student.getDep().equals(null)))

str += “,Dep='” + student.getDep() + “'”;

if (!(student.getSex().equals(null)))

str += “,Sex='” + student.getSex() + “'”;

if (!(student.getPhone().equals(null)))

str += “,Phone='” + student.getPhone() + “'”;

if (!(student.getEmail().equals(null)))

str += “,Email='” + student.getEmail() + “'”;

if (student.getAge() != 0) {

str += “,Age=” + student.getAge() + “”;

}

str += " where Id=" + student.getId() + “;”;

System.out.println(str);

int i = stmt.executeUpdate(str);

stmt.close();

msh.closeConnection(conn);

if (i > 0)

return true;

else {

System.out.println(i + " errorD");

return false;

}

}

@Override

public boolean Delete(Student student) throws Exception {

DBUtil msh = new DBUtil();

Connection conn = msh.getConnection();

Statement stmt = conn.createStatement();

String str = strDelete;

if (!(“”.equals(student.getId())))

str += " and Id=" + student.getId();

int i = stmt.executeUpdate(str);

stmt.close();

msh.closeConnection(conn);

if (i > 0)

return true;

else

return false;

}

@Override

public boolean findLogin(Student student) throws Exception {

DBUtil msh = new DBUtil();

Connection conn = msh.getConnection();

PreparedStatement pstmt = conn.prepareStatement(strCreate);

boolean flag = false;

try {

pstmt = conn.prepareStatement(strLogin);

pstmt.setString(1, student.getId());

pstmt.setString(2, student.getPhone());

ResultSet rs = pstmt.executeQuery();

if (rs.next()) {

student.setName(rs.getString(1));

flag = true;

}

} catch (Exception e) {

throw e;

} finally {

if (pstmt != null) {

try {

pstmt.close();

} catch (Exception e) {

throw e;

}

}

}

return flag;

}

@Override

public List findAll(String keyWord) throws Exception {

List all = new ArrayList();

DBUtil msh = new DBUtil();

Connection conn = msh.getConnection();

PreparedStatement pstmt = conn.prepareStatement(strFind);

pstmt.setString(1, “%” + keyWord + “%”);

pstmt.setString(2, “%” + keyWord + “%”);

pstmt.setString(3, “%” + keyWord + “%”);

pstmt.setString(4, “%” + keyWord + “%”);

pstmt.setString(5, “%” + keyWord + “%”);

pstmt.setString(6, keyWord);

pstmt.setString(7, keyWord);

ResultSet rs = pstmt.executeQuery();

Student people = null;

while (rs.next()) {

people = new Student();

people.setId(rs.getString(1));

people.setName(rs.getString(2));

people.setAge(rs.getInt(3));

people.setDep(rs.getString(4));

people.setSex(rs.getString(5));

people.setPhone(rs.getString(6));

people.setEmail(rs.getString(7));

all.add(people);

}

pstmt.close();

msh.closeConnection(conn);

return all;

}

}

StudentService


package cn.fjnu.edu.service;

import cn.fjnu.edu.model.Student;

import java.util.List;

public interface StudentService {

public boolean Create(Student student) throws Exception;

public boolean Update(Student student) throws Exception;

public boolean Delete(Student student) throws Exception;

public boolean findLogin(Student student) throws Exception;

List findAll(String keyWord) throws Exception;

}

StudentServiceImpl


package cn.fjnu.edu.serviceimpl;

import cn.fjnu.edu.daoimpl.StuDaoImpl;

import cn.fjnu.edu.model.Student;

import cn.fjnu.edu.service.StudentService;

import java.util.List;

public class StudentServiceImpl implements StudentService {

@Override

public boolean Create(Student student) throws Exception {
先自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数初中级Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则近万的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《Java开发全套学习资料》送给大家,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

img

img

img

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频

如果你觉得这些内容对你有帮助,可以扫码领取!

img

最后的内容

在开头跟大家分享的时候我就说,面试我是没有做好准备的,全靠平时的积累,确实有点临时抱佛脚了,以至于我自己还是挺懊恼的。(准备好了或许可以拿个40k,没做准备只有30k+,你们懂那种感觉吗)

如何准备面试?

1、前期铺垫(技术沉积)

程序员面试其实是对于技术的一次摸底考试,你的技术牛逼,那你就是大爷。大厂对于技术的要求主要体现在:基础,原理,深入研究源码,广度,实战五个方面,也只有将原理理论结合实战才能把技术点吃透。

下面是我会看的一些资料笔记,希望能帮助大家由浅入深,由点到面的学习Java,应对大厂面试官的灵魂追问

这部分内容过多,小编只贴出部分内容展示给大家了,见谅见谅!

  • Java程序员必看《Java开发核心笔记(华山版)》

  • Redis学习笔记

  • Java并发编程学习笔记

四部分,详细拆分并发编程——并发编程+模式篇+应用篇+原理篇

  • Java程序员必看书籍《深入理解 ava虚拟机第3版》(pdf版)

  • 大厂面试必问——数据结构与算法汇集笔记

其他像Spring,SpringBoot,SpringCloud,SpringCloudAlibaba,Dubbo,Zookeeper,Kafka,RocketMQ,RabbitMQ,Netty,MySQL,Docker,K8s等等我都整理好,这里就不一一展示了。

2、狂刷面试题

技术主要是体现在平时的积累实用,面试前准备两个月的时间再好好复习一遍,紧接着就可以刷面试题了,下面这些面试题都是小编精心整理的,贴给大家看看。

①大厂高频45道笔试题(智商题)

②BAT大厂面试总结(部分内容截图)

③面试总结

3、结合实际,修改简历

程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:

以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。

另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。
给大家看看。

①大厂高频45道笔试题(智商题)

[外链图片转存中…(img-4C1m4oid-1711368525093)]

②BAT大厂面试总结(部分内容截图)

[外链图片转存中…(img-ae70U0Of-1711368525093)]

[外链图片转存中…(img-iSStH7Lc-1711368525093)]

③面试总结

[外链图片转存中…(img-n66cu1kw-1711368525094)]

[外链图片转存中…(img-1rOtJ0iS-1711368525094)]

3、结合实际,修改简历

程序员的简历一定要多下一些功夫,尤其是对一些字眼要再三斟酌,如“精通、熟悉、了解”这三者的区别一定要区分清楚,否则就是在给自己挖坑了。当然不会包装,我可以将我的简历给你参考参考,如果还不够,那下面这些简历模板任你挑选:

[外链图片转存中…(img-OESSBncc-1711368525094)]

以上分享,希望大家可以在金三银四跳槽季找到一份好工作,但千万也记住,技术一定是平时工作种累计或者自学(或报班跟着老师学)通过实战累计的,千万不要临时抱佛脚。

另外,面试中遇到不会的问题不妨尝试讲讲自己的思路,因为有些问题不是考察我们的编程能力,而是逻辑思维表达能力;最后平时要进行自我分析与评价,做好职业规划,不断摸索,提高自己的编程能力和抽象思维能力。
需要更多Java资料的小伙伴可以帮忙点赞+关注,点击传送门,即可免费领取!

  • 29
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值