7月部分
8月部分
9月部分
返回7月部分
返回7月部分
返回8月部分
到最底部
第一题1001 害死人不偿命的命(3n+1)猜想
第二题1003 我要通过
第三题1004 成绩排名
初步了解java并开始学习java.
任务1:
其他两题大概了解了下。
第二题的思路
相关文章链接:
PTA1001
PTA1003
PTA1004
返回目录
任务1:
任务2:
$ mkdir learngit
$ cd learngit
$ pwd
/c/Users/Administrator
$ git init
Reinitialized existing Git repository in C:/Users/Administrator/.git/
$ git add readme.txt
可反复多次使用,添加多个文件$ git commit -m "wrote a readme file"
$ git clone [email protected]:wbbj/gitskills.git
其中wbbj是自己的地址使用$ git push -u origin master
可以将atom中的笔记上传git,在这之间要右击存储atom文件的文件点击 git bush hear
相关文章链接:
PTA1005
PTA1006
PTA1007
PTA1008
PTA1009
返回目录
任务1:
"%.1f ",A4/
StringBuffer SB = new StringBuffer();
的使用遇到困难,删除StringBuffer结尾BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
printf
用法不熟。任务2:
*
加空格或者Tab: 无序列表
两次空格:换行
#
:设置标题
在两个点里面包裹片段代码print
三个点加java再在代码底部加三个点:包裹java代码,其中java
可替换为其他语言
【超链接描述】(链接url)添加超链接(符号要用英文)
【!图片描述】(图片url),或者直接用html代码添加图片(符号要用英文)
等…
相关链接:
PTA1011
PTA1012
PTA1013
返回目录
任务1:
在做1016时本来是想用for循环往数组中输入要求的A,B,PA,PB但是这样做影响了后续操作。
首先将A B字符传入数组中以便于比较但存储的方法要选好这里使用了char-----.toCharArray()
,根据相同字符个数利用Math.pow()
计算PA,PB。
还有一种就是直接用long型输入四个数,然后用while循环求余比较两个数然后由此通过Math.pow()
得到PA,PB
1017题没什么特别之处因为求得数比较大只要注意变量的类型这里我使用了BigInteger
来声明
1018题做的时候在比较字符的时候使用==
出现错误,比较字符要用A.equals(B)
不能用==
,后面输出胜利使用最多手势比较繁琐
我是将不同手势胜利计数输出最大的那个手势,但这种方法使得同时比较两个人的胜利使用手势次数很烦。
1019题我的思路是设置两个函数分别表示非递增排列和非递减排列
其中用到了Arrays.sort(a);
来将数组中的数据排序,然后将两函数代入公式中利用do while
循环输出题目要求的计算过程
其中还用了System.out.printf("%04d - %04d = %04d\n",FZ(N),FJ(N),HD);
来使输出的数据保持xxxx-xxxx=xxxx
的形式
1020题计算最大收益完全没头绪,看了别人的思路是计算每种月饼每吨的价格然后最大限度卖出最贵的月饼,将月饼的数据单独分离出来然后计算每种月饼的每吨的价格
然后取最大的价格的月饼,如果需求量大于月饼库存量,用最大需求量减去最大价格月饼库存量,然后计算收益。
然后对比剩余需求与剩余最贵的月饼,方法同上,知道需求量用完。
任务2:
url = "jdbc:mysql://localhost:3306/test?serverTimezone=UTC";
user = "root";
password = "Wbb100809136";
Class.forName("com.mysql.cj.jdbc.Driver");
//增加为例
public static void addData() {
try {
pStmt = con.prepareStatement("insert into student (name,bianhao) values(?,?)");
pStmt.setString(1, "李四");
pStmt.setString(2, "1234567");
pStmt.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
}
}
public String toString() {
return "student{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", phone='" + phone + '\'' +'\''+'\''+
'}';
}
相关文章链接:
PTA1016
PTA1017
PTA1018
PTA1019
IDEA用mysql写的JDBC增删改查
返回目录
任务1:
做1021时一开始的想法是将输入的数据通过用while循环求余讲每一位数存入数组然后逐个判断,此方法有点繁,
后来改用string类型输入数据,然后用s.charAt(i)-48]
在一个循环里计数,最后判断那一位数字不为零输出,输出的格式可以用System.out.printf("%d:%d\n",i,num[i])
。
做1022时我对进制转换不是很熟,对java的进制转换用法完全懵逼,看了大佬用的这个函数Long.toString(a + b, d)
发现可以直接实现
做1023时一开始我的思路是通过给出的数字,判断是否有0没0按顺序输出给出数量的指定数字,有0就将后面一个数量不为0的数和其调换位置但好像逻辑上有些问题,做完后也不对,后来换了个思路,先根据输入的数判断并输出一个至少有一个的数字,然后减少一个此数字的数量用于后面输出,输出完第一个数字有0先输出0 ,没0跳过按顺序输出其他数字。
最后两题没搞懂跳过了。
任务2:
deepin的的安装直接到官网有详细教程,需要准备u盘一个。
安装的时候要注意系统bios的设置中UEFI和legacy的设置,我是设置位UEFI才安装成功,原理上时安装是需要设置为legacy,而且我安装的时候也弹出了当前模式需要改变,我是装完系统之后才设置位legacy,可能是我电脑有问题吧。
相关链接:
PTA1021
PTA1022
PTA1023
deepin官网
返回目录
任务1:
学习方法态度不对,没学到什么
任务2:
Hyper Text Transfer Protocol(超文本传输协议)的缩写`
HTTP默认端口号为80,但是你也可以改为8080或者其他端口。
GET
请求指定的页面信息,并返回实体主体。HEAD
类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头POST
向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST 请求可能会导致新的资源的建立和/或已有资源的修改。PUT
从客户端向服务器传送的数据取代指定的文档的内容。DELETE
请求服务器删除指定的页面。CONNECT
HTTP/1.1 协议中预留给能够将连接改为管道方式的代理服务器。OPTIONS
允许客户端查看服务器的性能。TRACE
回显服务器收到的请求,主要用于测试或诊断。PATCH
是对 PUT 方法的补充,用来对已知资源进行局部更新 。200
- 请求成功301
- 资源(网页等)被永久转移到其它URL404
- 请求的资源(网页等)不存在500
- 内部服务器错误相关文章链接:
HTTP协议
返回目录
任务1:了解ArrayList和LinkedList的区别
任务2:String,StringBuilder和StringBuffer的区别
ArrayList和LinkedList是迭代器(Iterator)对象的connection接口下的List接口的实现类。
ArrayLis和LinkedList底层数据结构不同
ArrayList底层数据结构是动态数组,所以它可以使用get()方法访问列表中的任意元素。
而Linkedlist底层数据结构是双向列表,get方法是从一端检查到另一端。所以ArrayList访问速度比LinkedList访问某个元素更快
ArrayList起始容量是10,当数组需要增长时每次容量大概会增长50%,最终会有很大空间被浪费掉。
当我们需要对一个列表进行大量的插入和删除操作时,当一个元素被加到ArrayList的最开端时,所有元素都会后移,而且ArrayList对于添加操作需要在数组快要装满的时候将所有的数据重新装入一个新的数组,数据移动和复制的开销很大,而LinkedList只是简单的为这个元素分配一个记录,开销是固定的。
因此ArrayList对于随机访问元素比LinkedList有优势,但对于田家河删除操作LinkedList更有优势。
String是一个类,是一个应用数据类型。String里面几乎所有的属性都是final,由于它的不可变性导致一系列对字符串进行的拼接,剪裁动作时产生大量无用的中间对象。
StringBuffer是为了解决String拼接产生多余对象的问题而提供的一个类,StringBuffer采用了synchronized关键字保证了线程的安全,但开销也大。
StringBuilder和StringBuffer功能一样但减少了开销。在单线程下StringBuilder效率更快因为它不需要加锁,所以安全性低。
StringBuffer一般在多线程的环境下使用 StringBuilder一般在单线程下使用。
String一般在操作少量数据时使用
String的操作会生成一个新的字符串而不是在原有的字符串上进行修改,而StringBuffer和StringBuilder类的对象能被多次的修改并且不产生新的未使用对象。
文章链接:
ArrayList和LinkedList
String,StringBuilder和StringBuffer
返回目录
任务1:了解单链表和双链表及他们的区别
任务2:使用单双链表底层实现增删该查
任务3:创建数组底层实现增删该查
文章链接:
单链表与双向链表实现增删改查
基于数组实现增删改查
返回目录
任务1:两题PTA乙级
第一题1026 程序运行时间
第二题1027 打印沙漏
任务2:有N个程序猿(编号1~n)围成一圈顺序循环报数,
从第一个猿开始报数(从1到4报数,猿都是顺序排列成一圈的),凡报到4的猿退出圈子,以下一个为1继续报数,问最后留下的是原来第几号的那位。
题目的意思大致是这样,比如最开始有五个人编号为1 2 3 4 5
第一轮去掉4
1 2 3 5
第二轮起点是5,去掉3
1 2 5
第三轮起点是5,去掉5
1 2
第四轮起点是1,去掉2
1
任务3 跳台阶 现在有长度为n的台阶,你每次只能跳一阶或者二阶 求跳到n阶一共有多少种跳法。
任务1:
做1026的时候对四舍五入不知道怎么解决,看了别人的解答是用打点差加50解决四舍五入。
做1027时我的思路是先判断给的数是偶数还是奇数,然后根据偶数的一半或奇数减一的一半得出第一行的字符数,用for循环输出空格和给出的符号但是还是有一些逻辑问题,后来转换了下思路先得出一个沙漏最多可装入的字符数的规律,然后根据此规律得出第一行最大符号数量,然后用循环先输出空格在输出符号。
任务2:
今天的主要任务就是写第三题的约瑟夫环,
一开始想着这种比较多的删除操作用链表最合适因为昨天写了单双链表,就写了个简单的单链表,但是在要索引的下一个位置需要从头开始遍历遇到困难,而且直接从底层实现单链表代码比较多,所以后面改用LinkedList类来写,省去了很多代码。
首先添加就使用循环用link.add()添加,
然后找到要删的数的位置,其中索引位置用i=(i+3)%link.size();其中i的初始值为0,i+3是因为报数到四的退出,link.remove(i)删除的的数据对应第四个,删除后i自动移动了一位所以一直保持i+3就可以了,最后用.peek()方法得到最后剩余的一个数据。
具体代码:
package Li;
import java.util.LinkedList;
public class Li {
public static void tC(int num){
LinkedList<Integer> link=new LinkedList<>();
for (int i = 1; i <=num; i++)link.add(i);
int i=0;
while (num>1){
i=(i+3)%link.size();
link.remove(i);
num--;
for(int m=0;m<link.size();m++){
System.out.print(link.get(m)+" ");
}
System.out.println();
}
System.out.println("最终剩下:"+link.peek());
}
}
任务3:
第四题被如何计算上台阶方法数量给难住了,长时间没接触数学数学逻辑不太行,看了斐波那契数列的递归算法也没发现其中的相似之处,最后被人指点才找出规律,
用递归调用,计算方法与斐波那契相同。前一个台阶的上台阶方法等于前一个台阶上去方法加上上个台阶的上去方法。
文章链接:
任务1:
PTA1026
PTA1027
返回目录
因为刚接触爬虫所以一脸懵逼,于是到处找资料于是就找到一个非常简单容易理解的帖子,
从中了解到,爬取壁纸时可以看到其url很特别,于是就从url分析这张壁纸,然后得出url中涉及壁纸的数字,然后从这串数字下手。然后通过线程循环获取url并解析下载。
java爬虫爬取zol网站壁纸
返回目录
昨天初步了解爬虫之后还有很多不明白的地方从这次任务我了解到了如何通过url解析json数据,并从解析后的数据提取需要的部分存入数据库中。
Json的结构有:
[]JsonArray数组类型
{}JsonObject对象类型
爬虫爬取美团店铺信息
返回目录
任务1:五题PTA乙级
第一题1028:人口普查
第二题1029:旧键盘
第三题1030:完美数列
第四题1031:查验身份证
第五题1032:挖掘机技术那家强
任务2:爬虫
解析指定json文件。
要求:通过文件流读取,解析出影院及优惠券,并存入数据库中。
需要建两张表:
电影院,主键 Id
优惠券,主键 优惠券Id,外键电影院Id
任务1:
第一题:
做1028时一开始的思路不好只想着吧年月日和姓名全分离放在一个数组里,这样比较起来太过复杂,容易出错,
后来使用了Date类将整个日期提取出来比较,其中用到了SimpleDateFormat
类用来对日期字符串进行解析和格式化输出,
还有用parse()
解析字符串的文本,生成 Date,此方法试图解析文本。如果解析成功,并返回解析得到的日期。
第二题:
1029没什么难度就是注意处理重复字符
第三题:
这题我的想法是用sort排序将输入的数字从大到小排序,然后一个一个依次比较。
第四题:
这题的加权求和不知道是什么于是就去查了下:就是对数据在整体评估中占的重要作用设定比例,所有数的比例加起来应为1,然后将各数分别乘以各自的加权比例再相加。首先得到输入的身份证号然后判断其是否合理不合理则放到另一个数组里。最后输出不合理数组。判断过程调用另一个判断方法。具体加权判断我还不是太懂就看了别人的算法。
第五题:
我的思路是将数据存放到一个数组中;用一个循环每次存入数据将数据中的id与score分离,并比较id相同的id使其对应的score++,然后比较对应的id与score
任务2:
首先在本地找好要解析的文件
json1.png
然后用文件流读取文件
BufferedReader br=new BufferedReader(new InputStreamReader(new FileInputStream("/myFile/json.json"), StandardCharsets.UTF_8));
String s=null;
String us="";
while ((s=br.readLine())!=null){
us=new String(s.getBytes("UTF-8"),"UTF-8");
}
json{
data{
searchResult[
0{数据
deals[
0{数据
解析过程中发现一个错误,id等数据不是string类型没仔细看看不出来
id后面的值是没加双引号的所以提取数据的部分使用了 getLong("id")+"";
这种形式
数据库建表的时候外键问题不能插入数据,不知道怎么解决所以就删了外键
相关文章链接:
PTA1028
PTA1029
PTA1030
PTA1031
PTA1032
爬虫,解析json文件
返回目录
任务1:
我的思路是一开始刚看到这题时那个代表上档键的我以为时前四个字符都是于是就多判断了一些,后来看了别人的理解才知道就只有+
号,然后只要先根据是否有+
号删去所有大写字母然后进行判断就行了,其中因为要输出下划线,所以修改字符串时用StringBuilder或StringBuffer.
任务2:
HashMap的概念:
HashMap时Mao的常用实现类,每个元素以key->value键值对的方式保存
哈希表的原理是通过构建一个映射将关键字映射到一个唯一的存储位置。
其中映射的过程是由相关可逆计算得到的。
哈希表的结构时散列表 前一部分由数组组成,数组中每个元素对应一条链表,对象通过计算哈希值得到地址索引到数组中。
HashMap的插入操作
HashMap
hM.put("name","Jam");
hM.put("age","18");
一开始只写了一种遍历现在将四种遍历都放上去了
相关文章链接:
PTA1033
初步了解HashMap
返回目录
任务1:
相关链接:
PTA1034
PTA1035
PTA1036
PTA1037
PTA1038
PTA1038
返回目录
任务1:
相关链接:
PTA1039
PTA1040
PTA1041
Servlet
返回目录
任务1:完善了之前写的servlet,增加了mysql数据库操作
了解了如何获取请求并与数据库进行比对。
任务2:了解了MVC的概念和构成
任务3:了解了如何发送Cookie和获取Cookie
Cookie是有name,value组成
了解了会话Cookie和持久Cookie,如果不设置过期时间只要关闭浏览器Cookie就会消失.
任务4:
相关链接:
Servlet
Cookie
Session
返回目录
任务1:学习过滤器Filter
任务2:学习监听器Listener
任务3:学习文件的上传和下载
任务1:
了解了Filter的概念,创建Filter的方法,和Filter的相关API
了解了如何创建HttpFilter,还有Filter的一些简单的应用.
任务2:
了解了监听器的概念,监听器的种类和区别,以及监听器中的某些方法
了解了某些对象的创建和销毁时机.
任务3:
了解了文件上传的基本要求
初步了解了使用commons-fileupload的文件上传操作.
因为form内的按钮全都执行action的问题搞了好久,只是通过把按钮放在form外面简单的解决了下.
相关链接:
Filter
Listener
文件的上传和下载
返回目录
任务1:继续学习文件上传和下载
任务2:写一个图书管理系统
实现登录验证,验证是否登录,图书的增删改差
任务1:
了解了文件下载的基本步骤.
任务2:对任务的大致流程进行了规划
写了小部分代码对之前的学习进行了巩固加深
相关链接:
文件的上传和下载
返回目录
任务1:PTA乙级:
第一题1042字符统计
第二题1043输出PATest
第三题1044火星数字
第四题1045快速排序
第五题划拳
任务2:继续昨天的图书管理系统任务
任务1:
任务2:
在写登录操作的时候建的lib文件不见了导致数据库驱动一直加载不出来另外导入也不行,然后用之前建的项目重新搞了下,终于完成登录操作,登录操作用了servlet获取登录信息,然后与数据库中的信息进行比较,登录成功跳转主页,失败则重新登录。
相关链接:
PTA1042
PTA1043
PTA1044
PTA1045
PTA1046
返回目录
任务:安装并配置maven环境
任务1:
今天学习到了如何安装maven,并在idea中配置maven工程
并配置了tomcat
了解到了maven的目录结构
还有在maven中通过配置pom.xml来导入各种jar包
在web.xml中配置Servlet的映射
相关链接:
maven
maven详细内容
返回目录
任务1:PTA乙级
第一题:1047编程团体赛
第二题:1048数字加密
第三题:1049数列的片段和
第四题:1050螺旋矩阵
第五题:1051复数乘法
任务2:继续学习servlet,js,ajax,jQuery.
任务1:
任务2:
今天学习了使用ajax发送请求与servlet交互实现登录操作
导入jQuery包时一直无法导入,然后找了官网最新版重新导入就可以了
一开始使用原生js写但是post方法老是自动转为get,而且写起来很繁,然后就换了jquery,成功将用户名和密码发送到servlet那边.
在传递数据时一直只有用户名过去,最后找到一个比较简单的解决办法.
相关链接:
PTA1047
PTA1048
PTA1049
PTA1050
PTA1051
返回目录
任务1:PTA乙级
第一题:1052卖个萌
第二题:1053住房空置率
第三题:1054求平均值
第四题:1055集体照
第五题:1056组合数的和
任务2:继续学习servlet,js,ajax,jQuery,编写登录,提交文章的系统.将数据库方法封装.
任务1:
任务2:
在项目中对数据库进行了封装,在网上查阅资料ajax请求本身不支持重定向,所以目前在写的登录就让ajax根据返回的请求进行一系列动作. 其中实现了Filter的拦截和Cookie和session的登录验证.
相关链接:
PTA1052
PTA1053
PTA1054
PTA1055
PTA1056
github相关内容
[封装jdbc](https://blog.csdn.net/qq_30039097/article/details/97017578
返回目录
任务1:PTA乙级
第一题1057 数零壹
第二题1058 选择题
第三题1059 c语言竞赛
第四题1060 爱丁顿数
第五题1061 判断题
任务2:完成之前写的登录的操作,并写好笔记
任务1:
Integer.toBinaryString(sum)
.相关链接:
PTA1057
PTA1058
PTA1059
PTA1060
PTA1061
jQuery写的ajax与servlet和数据库交互实现登录
返回目录
任务1:PTA乙级
第一题1062最简分数
第二题1063计算谱半径
第三题1064朋友数
第四题1065单身狗
第五题1066图像过滤
任务2:配置腾讯云
任务一:
第一题我的想法是得到分子分母,然后根据题目要求是要从小到大,那就先让要比较的两个分数先从小到大排列,然后在与num/k通分的情况下让num/k在两分数之间变化,
因为题目要求的是结果以分母为k,所以就直接变化num就行了从,num1开始增加用while循环进行判断,当num与k的最大公约数为1的时候且在指定范围内则满足要求直接输出,
这里部分代码我参考了大佬的,但是不是很懂printf("%s%d/%d", flag == true ? " " : "", num, k);
其中的flag是个什么用法所以就没有引用还是以最古老的方式输出.
第二题这题很简单只需要每次将获取的实部虚部按要求求平方和的开方,然后将结果放在数组中用Arrays.sort()排序即可,最后用printf输出保留两位小数点的形式.
第三题这题乍一看很简单但还是写了挺久,这题一开始我的想法是将存好的数字依次再分割存入新数组中遍历求和然后再放入新数组,再对新数组用sort排序,然后找出相同数字并删除,
删除的方法想了好多,都挺烦的,然后就找了大佬的写法,发现他们用了TreeSet集合,目前是第一次接触TreeSet,初步了解里面的元素是有序且不重复的,所以这个集合很适合这题,最后用foreach遍历之后还要获取最后一个元素单独输出.
第四题这题我的思路是将夫妻放入二维数组,一开始想过用hashmap但是对hashmap还不熟不知道如何应用在这种题所以就用了二维数组,
如果有大佬有更好思路写法可以发出来交流下,
我用二维数组判断的时候先判断是否含有派对名单中人没有则将名单中id存入单身狗,存在则判断是0位置的还是1位置的,如果是0则判断1位置的人是否在派对中,反之亦然,如果不存在就存入单身狗,
其中我在存入的id后还存了个空格,方便后面分割到数组排序,这里我用的stringBuilder创建的单身狗,其实也可以直接用数组.
第五题这题我一开始完全没没看懂什么意思,后来结合别人的思路才明白,对于替换和补零,我看到一个很好的写法
目前没发现其他更好的写法 String str= new DecimalFormat("000").format(i);
用这个来使3变为003.但是他里面用了好多.length
明显多此一举了,已经给了A,B就用A,B就行了.
相关链接:
PTA1062
PTA1063
PTA1064
PTA1065
PTA1066
返回目录
任务1:PTA乙级
第一题1067 试密码
第二题1068 万绿丛中一点红
第三题1069 微博转发抽奖
第四题1070 结绳
第五题1071 小赌怡情
任务2:配置腾讯云
任务3:初步确认想做的项目为垃圾分类小程序
任务一:
任务2:本来已经配置的差不多一半了,结果因为失误配置了错误的变量导致故障,重新装了下腾讯云
任务3:初步确立愿景和大体流程
相关链接:
PTA1067
PTA1068
PTA1069
PTA1070
PTA1071
初步使用腾讯云
小程序初步计划
返回目录
任务1:PTA乙级
第一题1072 开学寄语
第二题1073 多选题常见计分法
第三题1074 宇宙无敌加法器
第四题1075 链表元素分类
第五题1076 Wifi密码
任务2:继续之前的任务
任务一:
相关链接:
PTA1072
PTA1073
PTA1074
PTA1076
腾讯云配置JDK,Mysql,Tomcat以及maven
小程序初步计划
返回目录
任务1:PTA乙级
第一题:1077互评成绩计算
第二题:1078字符串压缩与解压
第三题:1079延迟的回文数
第四题:1080MOOC期终成绩
第五题:检查密码
任务2:垃圾分类实现模糊查询,实现图片查询的调用
实现增加和修改垃圾的功能
任务1:
num =num * 10 + (now - '0');
这里我采用了很多别人的代码所有就多加了一些注释.stringutil.join(ArrayList)
和string.join(string,ArrayList)
两种方式转环string型,这里我使用了后面这种,两种具体区别我没了解,应该是一样的效果.今天浪了一天只做了三题…
PTA1077
PTA1078
PTA1079
小程序初步计划
返回目录
任务1:PTA乙级
第一题:1080MOOC期终成绩
第二题:1081检查密码
第三题:1082射击比赛
第四题:1083是否存在相等的差
第五题:1084外观数列
任务2:垃圾分类实现模糊查询,实现图片查询的调用
实现增加和修改垃圾的功能
任务1:
任务2:实现类模糊查询,虽然实际情况不是很好用,图片调用没怎么看懂,增加垃圾功能以实现同时还能判断是否有这个垃圾有的话就不添加.
总结明天再详细写下,还有一些问题没解决.,同时还将此demo打包到了腾讯云服务器中,数据库还没导进去,还得另外学.
PTA1080
PTA1081
PTA1082
PTA1083
PTA1084
小程序初步计划
返回目录
任务1:PTA乙级
第一题:1085PTA单位排行
第二题:1086就不告诉你
第三题:1087有多少不同的值
第四题:1088三人行
第五题:1089狼人杀-简单版
任务2:读并发编程之美.
任务3:在腾讯云上部署javaweb并连接数据库.
任务4:啊哈算法
任务1:
任务2:在放通端口的时候花了好久,腾讯云老是出错,重启了两次才把入站和出站规则全放进去.
具体导入用的navicat
任务3:读了第一章的一点了解了下进程与线程的基础知识.
任务4:
PTA1085
PTA1086
PTA1087
PTA1088
PTA1089
并发编程之美小结
小程序,垃圾分类
部署javaweb到腾讯云
返回目录
任务1:PTA乙级
第一题:1090危险品装箱
第二题:1091N-自守数
第三题:1092最好吃的月饼
第四题:1093字符串A+B
第五题:1094谷歌的招聘
第六题:1095解码PTA准考证
任务2:并发编程之美
任务3:啊哈算法
任务1:
因为就剩六题了就把都做了花的时间有点多…
任务2:
继续看了几节看的有点吃力所以先停一下先看mybatis
任务3:
继续看了一章,了解了栈,链表,和枚举,书上用的都是c++有点不同,但不影响理解.
相关链接:
PTA1090
PTA1091
PTA1092
PTA1093
PTA1094
PTA1095
啊哈算法
返回目录
任务1:上午学习Mybatis
任务2:下午学习SpringMVC
任务3:继续啊哈算法
昨晚下载的视频出了点问题,重新下了下,一会一闪退,就先完善了下前面写的小demo,mybatis的教程前面一部分讲了些基础知识和框架
刚看到mybatis的介绍,学习了springmvc的一些基本知识,但是教程的步骤还卡着,一直有问题没能达到视频教程的效果.
这次笔记写的有点乱教程看的有点迷,学的不是很懂.
前面浪费的时间有点多没看多少算法,就看了下枚举剩下的部分,和深度优先搜索
相关链接:
初学Mybatis
初学Spring
啊哈算法
小程序demo初试github
返回目录
任务1:继续学习Mybatis和SpringMVC
任务2:继续啊哈算法
任务1:
看了前面一些教程发现好多地方idea都不太一样,写法思路都是一样的,目录结构不太一样,idea结构更清晰,跟着教程走很多地方都有问题,所以就先不管这些,先学概念和思路以及一些语句.
学到这里也算是了解了一些Mybatis的一些基本配置,但还是很生疏,还得多使用,目前了解到了Mybatis的一些xml配置,还有一些基本的查询语句List,map等.
springmvc也了解了更多的配置,了解了大概的配置步骤,但对idea的详细配置还不是很了解,具体慢慢了解
这里附上我csdn看的一片挺不错的文章.
晚上重新搞了下SpringMVC,重新在网上找了idea版的SpringMVC搭建教程,总感觉前面跟着eclipse教程写的有问题,在这里我找到了SpringMVC的问题所在,tomcat配置中url不能改,改了就出问题了,
任务2:算法看了两节被几个问题卡了有点久,更加详细的了解了深度优先搜索.
相关链接:
IntelliJ IDEA 创建Spring+SpringMVC+mybatis+maven项目
初学Mybatis
初学Spring
啊哈算法
返回目录
任务:继续学习Mybatis和SpringMVC
今天把之前没实现的东西都重新搞了下,找了一些idea相关的mybatis和SpringMVC配置,总算是实现了最基础的,
视频教程用的eclipse还是有点区别的.
今天下午有点事spring就照着教程写了上面讲的demo,但是一堆bug,正在想办法解决.
了解了下springmvc作用域传值方式
强行学了下ssm整合,了解了相关步骤,但还是有一些bug没解决
相关链接:
推荐ssm整合教程
Mybatis教程-实战看这一篇就够了
返回目录
任务1:了解java类的加载过程
任务2;了解ssm整合
任务1:总结了下类的加载过程,了解了具体原理,其中用到了反射这块,了解了反射的原理及写法
任务2:根据一个教程写了个小小的ssm整合,但是一直有service层无法注入的问题,搞了一天看了各种解决方案都没用
继续研究中,目前确地是配置文件的问题,还发现了编译后的target文件中配置文件很多爆红
相关链接:
类的加载过程及反射的相关知识
推荐ssm整合教程
参考博客:java反射(特别通俗易懂)
返回目录
任务1:继续研究ssm,看别人的demo,总结昨天的ssm demo
任务2:整合之前写的项目,将其变为ssm
任务1:上午把昨天的ssm总结了下,昨天搞了一天算是把所有的bug都解决了.对ssm的整体目录结构有了更深的了解
任务2:目前整合初步成功,除了页面实现了对数据库的一系列操作,如查询垃圾信息,登录判断账号密码的操作插入垃圾信息的操作
已将项目上传github
相关链接:
IDEA SSM简单整合
小程序,垃圾分类
github源码
返回目录
任务1:继续研究ssm整合
任务2:完善昨天整合的SSM将页面ajax请求都整合过来
任务3:啊哈算法,学习树
关于页面的整合具体写法和以前差不多,目前已经成功将之前的demo完全整合为SSM.
学习了SSM中关于Filter的配置
学习了树的基础知识及二叉树的相关知识
了解了满二叉树与全二叉树
相关链接:
github源码
小程序,垃圾分类
啊哈算法
返回目录
任务1:先下载ssmPDF看着等书来了看书
任务2:学习小程序
今天有点蛇皮没看多少,下PDF下了好久发现不对,然后又重新下,了解了下微信小程序代码与web的大概区别,这里我看了一篇关于小程序的SSM通信
目前还在下微信开发者工具
关于SSM了解了Spring框架的IoC和AOP
参考链接:
实现微信小程序与服务器(SSM)通信
啊哈算法
返回目录
任务1:看SSMPDF
任务2:学习小程序
看了javaEE轻量级框架整合开发SSM框架这本书的PDF,巩固了前面SpringMVC,和Mybatis的一些基础知识,了解了Spring的一些相关内容
下了各种版本的微信开发工具终于能用了,但是如何将idea项目弄到里面还不会
搞了半天感觉还是要下最新版的开发者工具,之前下的这个版本太老了,跟官方文档相差有点大
完善了下堆的代码
相关链接:
啊哈算法
返回目录
任务1:重新搞微信开发者工具
任务2:完善项目,增加图片搜索功能
重新找了个资源下了早一点点的版本终于能用了,但是还是不会用
然后就先完善了下项目,增加图片识别功能,看了百度视图API的官方文档,因为access_token获取ak/sk问题搞了半天
官方文档只说用安全中的ak/sk不能使用access_token方式,没说具体方式,下面对应的教程也没变
然后我就找了网上其他教程看了下要创建项目,再管理项目中找到ak/sk
这个问题解决后就是识别的图片获取的json数据分析问题,
目前还有点小问题没解决
返回目录
任务1:完善项目,完善昨天的图片识别
任务2:增加拍照上传,研究语音识别
昨天遗留的图片识别问题目前已经解决,昨天用的action不方便接受数据,改为ajax就可以了
因为一开始不知道ajax可以直接上传图片看了好多用插件的,但又没找的免费插件资源就用了action,
遇到困难后才继续找ajax的方法最终得到解决
拍照功能搞了半天搞不出来,还得再研究下
今天研究了下语音识别拿了别人的代码试了下,能识别但是一直报错,错误原因查了下是目前主要是音频质量问题,感觉还有其他问题,目前
实现的只是识别本地音频文件,在线识别还没搞懂,而且html相关控件也弄不出来,可能是浏览器版本问题,也可能是写法有问题.
相关链接:
小程序,垃圾分类
任务1:解决昨天遗留下来的问题
昨天搞了一晚上语音识别结果不小心误动了图片识别的代码,搞了半天没找到问题在哪
今天中午搞了下终于找到问题所在,id选择器中双引号不小心改成了单引号,还有url的单引号写成了双引号
语音识别还是不知道怎么搞,实时识别好像都是付费的.
今天SSM书到了先看看书了
返回目录
任务:看SSM书
今天睡得天昏地暗,还被系统搞得头大,deepin跟新15.11暂时禁用了prime方案,我手贱切错了然后切不回来了,然后每次开机都要卡在开机界面好久,切了好几次方案就先切到一个开源方案暂用了
然后就是看书,我先看了Mybatis的相关知识,了解了下持久层的概念和Mybatis的特点
了解了Mybatis核心组件
SqlSessionFactory的功能及其用xml文件构建的方式
相关链接:
JavaEE轻量级框架整合开发 SSM框架和Redis实现读书笔记
返回目录
任务:看SSM书
还是不太习惯看书,今天看了MyBatis的映射器,发送Sql的方式,还有MyBatis的部分配置,如properties,settings,typeAliases
再次了解下了spring IoC,通过控制反转被动创建所需对象.了解了一些属性的注入和装配,了解了一些基本的注解
返回目录
任务:重装系统,看SSM书
今天重装系统因为没备份,花了不少时间,主要网速太慢,下东西下了好久,然后又配置了好多东西
今天真的惊险,上传到github的代码有空的一开始没注意这次下载下来才发现,还好发现的早,可以到腾讯云上找到部署过得war包找到代码
找到代码还不行里面全是.class文件需要反编译
idea反编译参考:https://www.cnblogs.com/lu51211314/p/9546786.html
其实放到idea中就已经反编译了
修改之后发现一些问题,研究了一下发现湿配置文件有改动出错了少扫描了一个mapper
然后再次部署到腾讯云又发现了一些问题,一开始报数据库连接的错误我发现腾讯云用的是8点几的版本所以driver中要用jdbc.driver=com.mysql.cj.jdbc.Driver
里面多了个cj,
修复这个错误之后登录的功能能用,但是查询的功能不能用,报的错误是无法获取数据库连接,查询的mapper.xml文件有错误,但在本地运行没有任何问题,然后我就想到了可能是语句有问题,但我用的语句就是个简单的查询和插入,与登陆用的语句几乎是一样的,此问题还待解决
目前代码已放到github
链接:https://github.com/wbbj/atom
返回目录
上午继续研究了下部署到腾讯云上的代码问题还是没解决
然后看了Bean装配,Profile的注解和XML配置和Properties的注解和XML配置
了解了下Spring EL运算
EL中注解@Value("#{}")
类的静态常量@Value("#(T(Math).PI)")
EL的各种运算
返回目录
任务:看SSM书
了解了AOP,看了下动态代理,不是很懂
下载了postman用于研究别人的代码
下载教程参考:
Deepin安装postman
代理的意思就是我只管做我要做的事,相关的详细事情由代理完成
动态代理采用了反射的技术
相关文章:
设计模式-一定能让你看懂的静态代理与动态代理
这里面我在idea写的时候要加异常
返回目录
任务:学习SpringBoot
今天学习了springboot编写一个简单的helloworld以及Servlet整合
了解到Controller类与启动类位置的要求,启动类不能在Controller类子包下或平级包下,可以在其上级或用同一个包下
然后servlet整合有两种方法,第一种注解扫描传统的servlet写法,第二种在application启动类中添加@Bean然后添加新方法,通过ServletRegistrationBean为servlet添加url
后面相继学习了filter和listener的整合与servlet方法类似
今天对所有学习的东西整理了下,csdn也重新调整了下分类
相关链接:
SpringBoot编写HelloWorld
SpringBoot整合Servlet及Filter还有istener
csdn链接:
贝爷的奇遇冒险,初学java的菜鸟
返回目录
任务:学习SpringBoot
今天找了springboot的视频重新了解了下SpringBoot
了解了springboot的初级结构
springboot是spring微服务的一个基本框架
大体流程就是学习springboot入门,Springboot整合web开发,springboot视图层技术,springboot整合持久层技术
前面两个昨天已经学习过了,下面就是学习后面的内容
今天学习了springboot访问静态资源
springboot文件上传
springboot整合mybtis
返回目录
任务:学习SpringBoot
制作简历
今天学习了下Springboot访问静态资源和整合redis
安装了redis及其可视化界面
制作了下简历。
相关链接:
安装redis及springboot整合redis
springboot访问静态资源
返回目录
任务:看了点项目,小复习
今天太累了休息了下,敲了点代码,看了点Cookie和Session的内容
返回目录
任务:继续研究项目,复习
今天上午看了把javaweb内容复习了下
下午复习了下java基础知识,还有部分容器
晚上继续看了看项目
返回目录
任务:继续研究项目,复习
压缩简历PDF
今天继续搞了下简历,用wps导出的PDF太大了14M左右,然后想用crossover装office,但不知道破解软件怎么弄,要么是装不下来要么是装下来了打不开,还有待研究,暂时用朋友电脑搞了下
继续复习剩下的java基础部分
看了下切面的一些代码
安装了RabbitMQ,网速太慢下了好久,还没配置和学习相关内容
今天看的资料有问题重新找了看了下
看了下奇安信去年的春招面试题,好难,但是基本就是那一套.
返回目录
任务:继续研究项目,复习
这两天在朋友这边活动有点多,玩上头了
今天也只搞了点代码,看了点面向对象和面向过程的相关知识
有些容器之前特别学过就直接拿过来复习了下
还有java和c++的区别,成员变量与局部变量关系等java基础知识
返回目录
任务:SpringBoot整合RabbitMQ以及Elastisearch,复习
整合RabbitMQ过程中安装RabbitMQ后登录信息不知道怎么填搞了半天以为配置的有问题,后来查了下登录默认账号是guest/guest
然后整合过程中很多爆红,目前未解决
整合Elastisearch因为一些事情耽误了,官网又进了半天没进去明天在搞
回顾了下前面的基础知识,全面看后面忘太难记了,相关容器又看了下部分的底层实现.
相关链接:
springboot整合rabbitMQ
返回目录
任务:解决昨天SpringBoot整合RabbitMQ留下的问题,复习
昨天的问题解决了,今天又遇到新的问题,越弄越复杂,我看了其他的整合教程用connectionfactory是配置RabbitMQ相关连接信息的,这里我用的教程相关信息已经在.yml中配置好了.还得再搞搞
继续看了些基础知识
下午看了进程,线程,程序的相关内容,==,equals,hashcode等内容
了解了线程的基本状态及状态转换过程
相关链接:
springboot整合rabbitMQ
==与equals
hashCode与equals
其他知识
返回目录
任务:复习
今天继续复习了后面的一点,如final关键字,java中的异常处理等等
回顾了下前面的内容都忘的差不多了
返回目录
任务:复习与看项目
继续将剩下的java基础复习完,有IO关键字工具类等,再把基础部分重新回顾下,前面看后面忘,得多看几遍
看了点项目的逻辑部分
返回目录
今天把Collections和Arrays工具类简单的看了下
了解了Collections的排序,查找与添加操作
Arrays的排序,查找,比较,填充,转列表,转字符串,复制操作
看了一点程序设计:泛型和用数组方式实现栈
具体代码多还得多写几遍
相关github链接:
https://github.com/Snailclimb/JavaGuide/blob/master/docs/java/Java%E7%A8%8B%E5%BA%8F%E8%AE%BE%E8%AE%A1%E9%A2%98.md
看了点Servlet介绍及其与CGI的区别的相关知识
相关连接:
Collections工具类和Arrays工具类常见方法
上午看了点牛客网的一些面经和一些其他经验,了解了一些面试的东西,看了点面试问到的问题,然后跟着博客系统的看了下,
刚看了点计算机网络的知识点,了解了互联网的一些基础知识
下午本来是要搞项目的,听说学校的一些任务马上要交了,就赶紧搞了下,好久没写很多字的东西了
写的手疼,明天还得继续写,先把学校的任务搞完在继续搞其他的
–
今天上午继续看了网络的部分基础知识
下午继续做学校留下的任务
返回目录
继续复习计算机网络的一些知识看了一部分网络层的知识
将项目基础代码部分搞了下.
返回目录
上午去办理了下学校里面的相关任务
下午看了下RabbitMQ的相关知识,了解了RabbitMQ的具体含义,了解了RabbitMQ是干什么用的,了解了它的优缺点
看了下其他的相关代码
返回目录
这两天准备了下面试内容看了些面经,了解了一些面试题,
比如list,set,map的区别,HashTable,HashMap,ConcurrentHashMap的区别,简单的垃圾回收机制原理,详细的JVM垃圾回收机制需要详细去看,之后慢慢了解
了解了下悲观锁乐观锁,只看了概念而且记的不熟,
详细看了下TCP三次握手四次挥手,看了一些相关问题
了解了下事务.
时间不是很充分记住的知识不多
晚上发现可能是被鸽了,因为昨天对方问了挺多问题忘记都没说约什么时间面试…
返回目录
继续复习了点网络的知识
今天将昨天看的部分内容总结了下,如TCP三次握手四次挥手等内容
相关连接:
set,map,list区别
HashTable,HashMap,ConcurrentHashMap原理与区别
TCP三次握手四次挥手
返回目录
今天继续复习网络的知识,背起来有点绕口
在使用redis时遇到了
template.setConnectionFactory(factory);
爆红的现象,查找原因是缺少spring-dao包
配置了下Elasticsearch,这个东西是真的坑
添加用户组的时候一直有错,查了别的教程后发现是写法有问题
因为是在本地配置的,看的教程是云服务器配置的,基本步骤还是一样的
做一步遇到一个问题,后面curl的安装又又出现问题
返回目录
写了好一会的总结软件闪退没了…
今天主要继续复习了网络的知识
然后就是继续安装与配置Elasticsearch
遇到了很多问题,主要还是是细节上的问题
比如port改漏了,用户的问题
最后总算是安装成功了
接下来就是研究整合Elasticsearch了
又是一堆问题要解决
相关连接:
Elastisearch的安装与配置
返回目录
这两天准备了下面试,接了一个软通动力的电话面试,总体来说有点水
虽然问的问题挺关键的,答还算一般
然后就是奇安信的笔试,最近刷题没什么效果,该会的都会,不会的还是不会,
就是算法编程第二题有点可惜,最近都怎么看算法,就刷了几道编程题,没涉及到树的题目
还是要好好复习下最近遇到的问题
返回目录
任务:复习
今天主要继续复习了下网络的部分,最近刷题刷面经都没怎么复习了,再加上有点蛇皮
目前已经算是拿到软通动力的offer了,但还需要继续学,找更好的公司
然后就开始看看之前面试没答出来的东西,好好记一下
了解了下设计模式
返回最顶层