- 博客(57)
- 收藏
- 关注
原创 周四答辩总结
3.作业:作业大致跟资料差不多,首先一个就是老师上传作业的时候将所有的作业打包成一个文件上传。学生也是同样,写作业不仅有文字,还有图片和文件,也是同样打包成一个文件,上传到老师界面供老师下载。今天进行了项目答辩,觉得自己还有很多需要地方完善,同时对自己其实有点没信心了,有的时候真的很迷茫自己真的能不能写好。1.签到:已签和未签的显示需要改改,响应的很慢,因为每次都会发消息给数据库响应消息再重新显示ListView。2.资料:资料这一块,一定要注意不是直接把资料保存到数据库,而是要重新接受。
2023-05-19 00:46:49 224 1
原创 5.16-5.17总结
这两天将前面的bug修复了一下,新增了一些功能,在老师发布签到或者发布随机选人的时候,会向已经在线的同学发送弹窗通知消息,然后更新对应的ListView。同时修补了前面老师删除学生,注销课程,和学生退出课程的一些bug。同时完成了资料功能,老师能上传资料,学生能下载资料。
2023-05-17 01:08:21 182
原创 5.11-5.12学习总结
这个异常很常见的原因就是因为使用io流时的操作:规定就是一个new oos必须用一个new ois来接收,不然就会抛出这个异常,原因就是因为ois读入的时候有一个头部,导致ois读入的时候读取了头部,不能正确的接收到正确的对象。同时课堂签到的数据库插入和向服务端发送消息的业务已经处理好,目前主要卡在了如何通知班级里的学生。经过这两天,总算是把长连接做好了,客户端和服务端也能顺畅的进行交流了,总算是正式的视线了老师的创建课程,学生的添加课程,老师的删除课程和个人修改资料了。
2023-05-12 01:14:20 147
原创 5.9-5.10学习总结
还有一个最大的问题,上面所有发请求 都是基于短连接,而不是基于长连接。这个是很大的一个问题,由于登录之后开启的是长连接,上面的功能点应该都是基于长连接实现而不是短连接。已经是实现了个人修改资料,在资料里面修改密码,老师创建课程,学生添加课程,老师删除课程,退出系统关闭socket,结束进程。还有就是通过ListView会将在页面初始化的时候将老师和学生已有的课程显示出来,个人资料:包括生日(日期栏选择),手机号,邮箱,学号,姓名。登录,注册,忘记密码,个人资料,修改密码。就是还没实现双击点击进入课程。
2023-05-10 00:52:30 873
原创 23.5.7总结(学习通项目思路)
ChoiceBox是一种简单的下拉列表框,当用户单击 ChoiceBox 的下拉箭头时,会弹出一个列表,其中列出了在 items 属性中设定的选项,用户可以通过单击任意一个选项来选择。1.登录修改:删除数据库中的状态,通过使用 ConcurrentHashMap来作为是否在线的判断,通过设定一个退出的按钮,发消息给服务端主动移除对应的值。通过ComboBox选择专业设定一些本就有的专业,年级,或者自行编辑选择专业,年级,最终输入课程的名称,后台通过雪花生成唯一邀请码(邀请码依旧要判重);
2023-05-08 00:35:53 521
原创 5.4-5.5学习总结
个人资料:包括生日(日期栏选择),手机号,邮箱,学号,姓名。登录需要实现:一个账号只能登录一次,可以通过发送。登录,注册,忘记密码,个人资料,修改密码。(1)课程可点击,点击之后开启新页面。(1)课程可点击,点击之后开启新页面。TitledPane 展开按键。Pagination 分页控件。DatePicker 日期。(2)班级修改,查看。
2023-05-05 00:52:12 706
原创 23.5.1总结
通过socket将对应的班级,课程名,邀请码加入到数据库中,添加成功将成功的信息返回给客户端,通过listview添加到页面中。通过判断是否与创建的课程一致,如果一致就返回给客户端表示可以添加,客户端再执行用listView打印出对应的课程。
2023-05-03 00:58:36 64
原创 4.27-4.28学习总结
题目要求:必须做k次操作,然后判断能否让图变为中心对称图形?1.n为奇数,将全部次数放在最中间那个,无论如何,都可以实现中心对称;对称最主要的的公式:(i,j)->(n+1-i,n+1-j)完成了主界面的编写,同时实现了老师创建课程,班级的添加。2.n为偶则剩余操作必须为偶数。
2023-04-28 01:09:57 91
原创 4.24-4.25学习总结
项目:可以发邮箱验证码,但是发现了几个Bug,只要我没限制,就可以在一分钟之内发送多次验证码,同时,如果多个用户同时发送验证码,就会混乱,这里还需要改进。由于要满足最长的递增子序列,可以通过循环,不断往左推进左起点,条件是左起点的下标大于2并且满足递减条件:当前位置的数值>=前一个位置的数值。题解:这道题的题意就是找到最长的递增子序列,首先第一个循环要找到数值相同但是位置不同的数字后,第一次寻找到左起点,之后寻找右起点。学生作业表(student_assignments)作业表(assignments)
2023-04-26 00:40:09 574
原创 4.24周总结
还在思考怎么实现发送邮箱验证码的服务,并且完成在一分钟内有效,之后失效的操作。首先是邮箱线程睡眠,这个是必须的,至于如何实现,还需要进一步编写。注册界面和忘记密码界面同理。
2023-04-24 00:15:06 84
原创 4.17-4.18学习总结
MD5:1、压缩性2、容易计算3、抗修改性4、弱抗碰撞5、强抗碰撞为什么需要MD5?存储一些敏感信息的时候,如果不进行加密会出现安全问题。例如:系统登录的密码,如果数据库中的密码采用明文,一旦数据库泄露,则用户的密码直接泄露。但是使用MD5加密算法之后即使数据泄露,也不会被轻易的破解,相对安全。原理说明:MD5码以512位分组来处理输入的信息,且每一分组又被划分为16个32位子分组,经过了一系列的处理后,算法的输出由四个32位分组组成,将这四个32位分组后将生成一个128位。
2023-04-21 00:58:15 801
原创 4.17-4.18学习总结
例如课堂活动中的课堂签到,问题抢答,查询随机选人用到的都是对数据库的查询等操作,是不需要写进数据库的,所以不需要再ER图中体现出来,这个通过程序编码就能实现。以上的客户端和服务端是找文章自己过的一遍代码,但是具体在项目中如何运用和实现,还需要再多尝试和修改。用户表:包括学生和老师,老师和学生拥有的属性一样,那么就需要添加一个字段来区分老师和学生。班级表:根据班级表确定这个班级拥有的老师和学生,一个班级拥有多个老师和学生。课程表:通过班级表确定,一个班级的课程表是确定的,它连接了老师学生。
2023-04-19 00:02:26 85
原创 4.14-4.16学习总结
线程:线程是操作系统能够进行运算调度的最小单位。它被包含在进程之中,是进程中的实际运作单位。进程:进程是程序的基本执行实体举个例子:360运行之后,它就可以看做是一个进程,但运行我的电脑,木马查杀,电脑清理等功能时,就是线程。可以同时运行多个功能就是多线程1.什么是多线程?有了多线程,我们就可以让程序同时做多件事情2.多线程的作用?提高效率3.多线程的应用场景?只要你想让多个事情同时运行就需要用到多线程比如:软件中的耗时操作、所有的聊天软件、所有的服务器。
2023-04-16 23:04:59 402
原创 4.11-4.12学习总结
就比如随便给一个 sql 里面不存在的用户,如果登录密码为 “1 or 1=1 ”恒等式,这样就会导致非法登录,就会导致数据库的不安全。就比如我们写了一个登录页面,如果没有使用sql注入,在一些特定的情况下,依旧可以登录成功。但是 p1 的位置不发生改变(p1的位置由原来的修改前的 p1 决定)新增的语句不会和这个发生冲突,所以可以添加成功,返回 true;答案:false true true。p1的位置由原来的修改前的 p1 决定 ,将ResultSet封装到集合当中。
2023-04-14 00:01:47 611
原创 4.10-4.11学习总结
目前上述的两张表,在数据库层面,并未建立外键关联,所以是无法保证数据的一致性和完整性的。varchar 会在使用的时候根据内容去计算存储的内容,输入多少字符它就会占用几个字符。或者查询年龄小于45的员工,并根据工作地址分组,获取员工数量大于等于3的工作地址。分页查询是数据库的方言,不同的数据库有不同的实现,MySQL中是LIMIT。修改语句的条件可以有,也可以没有,如果没有条件,则会修改整张表的所有数据。若要统计某个限定条件的个数,例如统计来自西安地区的员工的年龄之和。
2023-04-11 22:45:55 1150
原创 4.7-4.9学习总结
自定义异常的步骤定义类:自定义异常类名(程序员自己写)继承Exception或RuntimeException如果继承Exception,属于编译异常如果继承RuntimeException,属于运行异常(一般来说,继承RuntimeException)
2023-04-09 22:38:51 480
原创 4.5-4.6学习总结
List集合代表一个元素有序 , 可重复的集合 , 集合的每个元素都有对应的顺序索引.List作为Collection 接口额子接口 , 可以使用Collection 接口里的全部方法books.add("JavaEE企业应用实战");books.add("疯狂Java讲义");books.add("疯狂Android讲义");books.add(1,new String("疯狂Ajax讲义"));i++)
2023-04-06 23:17:16 414
原创 4.3-4.4学习总结
如果向TreeSet 添加一个可变对象 , 并且后面程序修改了该可变对象的实例变量,这将导致它与其他对象的大小顺序发生了改变 , 但是TreeSet 不会再一次调整它们的顺序 , 甚至可能导致TreeSet中保存的这两个对象通过compareTo(Object obj)方法比较返回 0。TreeSet提供很多方法的原因: TreeSet里面的元素是有序的 , 所以增加了访问第一个 , 前一个,后一个 , 最后一个元素的方法 , 并且提供了三个从 TreeSet 中截取子 TreeSet的方法。
2023-04-04 23:32:12 887
原创 3.31~4.2学习总结
'因此,即使使用 final 修饰符一个 private 访问权限的方法 , 依然可以在子类中定义于该方法有相同方法名 相同形参列表 相同返回值列表的方法,
2023-04-02 23:45:46 247
原创 下学期学习计划
在经历第五周的Java答辩后发现,自己的天资确实不够聪颖,算法和Java不能同时兼顾,以至于Java并没有学到很多新知识。认清自己的实力下,洗心革面,来到项目组,决定先学好Java。
2023-03-31 22:36:12 68
原创 3.29~3.30学习总结
包允许将类组合成较小的单元(类似文件夹),它基本上隐藏了类,并避免了名称上的冲突。包允许在更广泛的范围内保护类、数据和方法。区分相同名称的类。能够较好地管理大量的类。控制访问范围。package 语句应该放在源文件的第一行在每个源文件中只能有一个包定义语句并且 package 语句适用于所有类型(类、接口、枚举和注释)的文件注意:如果在源文件中没有定义包,那么类、接口、枚举和注释类型文件将会被放进一个无名的包中,也称为默认包//包的定义格式://package 包名;");
2023-03-30 22:37:36 459 1
原创 3.27-3.28学习总结
类 ( class ) 和 对象 ( object 也被称为实例 instance )Java 语言是面向对象的程序设计语言 , 类和对象都是面向对象的核心[修饰符] class 类名0或者多个构造器定义..0或者多个成员变量..0或者多个方法定义..System.out.println("我的名字是:" + name + "\n我的年龄是: " + age);System.out.println("我的身高是: " + height);
2023-03-28 22:38:31 181
原创 3.24-3.26学习总结
今天最主要的是Java的答辩,通过Java的答辩让自己清楚的认识到了自己的Java跟没学没什么差别,只是简单的认识了Java的一些定义和知识点,并没有深入了解.接下来的重心将会全部放在Java上,重新理解和学习Javat=N2N8t=N2N8t=N2N8t=N2N8t=N2N8t=N2N8t=N2N8。
2023-03-26 22:16:26 84
原创 3.22-3.23学习总结
1.Java 类的继续深入:类、对象、属性、方法或者行为的定义Java方法的学习2.通过类和方法可以实现什么3.题解一、类与对象深入。
2023-03-23 22:21:20 63
原创 3.20-3.21学习总结
类是 Java 中的一种重要的引用数据类型,也是组成 Java 程序的基本要素,因为所有的 Java 程序都是基于类的。创建一个新的类,就是创建一个新的数据类型。实例化一个类,就是得到类的一个对象。因此,对象就是一组变量和相关方法的集合,其中变量表明对象的状态和属性,方法表明对象所具有的行为。声明类:编写类的最外层框架。编写类的属性:类中的数据和方法统称为类成员,其中,类的属性就是类的数据成员。通过在类的主体中定义变量来描述类所具有的的特征(属性),这些声明的变量称为类的成员变量。
2023-03-21 22:36:10 143
原创 3.17——3.19学习总结
实现步数的方法:先让一个人走,存下这个人到所有KFC的步数,再让另一个人走,当达到同一个KFC并且这个人的步数不为0(说明这个人走过)就将步数相加,然后再寻找达到KFC步数最小的,然后输出。2.在1的基础上再考虑传送门,因为有两层,在第一层传送门会将用户送到第二层,在第二层会将用户送到第一层,所以当走到传送门的时候要给一个判断,下一个点应该在哪一层。题解:找最短时间,bfs题目,只是有两个人,要用两次bfs,并且两个人是分开走的,不是一起走。题意:#是传送门,*是墙,.是路,求是否在规定的时间内救出人。
2023-03-19 22:24:53 84
原创 3.15-3.16
题解:三维立体空间,将时间看成步数,也就是要找出走出迷宫的最短路径,bfs题目;这道题最需要注意的就是对应关系,行对x,列对y,层对z,平时的x ,y,z 成习惯很容易导致数组对应的顺序不对。要实现判断要实现无论多少次都无法实现变为给定的字符串,可以在第一次操作的时候将操作后的字符串保留下来,然后每一次进入循环的时候,判断是否辅助字符串会变回原来的字符串。题解:深搜题目,设定循环去实现八个方向的寻找,题目要求在白色周围找白色,所以要先找到有白色的一个点,然后再往周围去搜索,只要找到白色,答案就增加。
2023-03-16 22:14:46 89
原创 两日学习总结
题意:一个行列均为200的棋盘上,有一个人在(0 ,0)的位置,他要到达(a,b)的位置:他有五种选择:原地不动,向左,向右,向上,向下。最小步数就是分别比较原点 0 到 a 的距离和 0 到 b 的距离,找到其中距离大的那个数,通过插空方法将中间的空格填充完毕,个数为: 2*距离大的数-1;2. 绝对值等于0:将所有的空格都填充完毕的同时,个数原本应为:2*a-1或者2*b-1,但还需要多走一步,又a==b,所以个数变为a+b。题解:先比较小写字符和大写字符的数量,答案加上数量小的那一个;
2023-03-14 22:04:18 51
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人