week 5.18-5.24
- | Study-update |
---|---|
-Mon | 看书 |
-Tue | 构建者模式,工厂模式,代理模式 |
-Wes | 自定义mybatis——模仿实现功能 |
-Thu | Spring,Profile.处理自动装配的歧义性 |
-Fri | 继续学习spring,算法练习(筛选最大数) |
-Sat | IO复习 |
-Sun | git的使用 |
5.19 Tueday
构建者模式
把对象的创建细节隐藏,使使用者之间调用方法即可拿到对象。创建mybatis工厂使用了该模式。
工厂模式
可以降低类之间的耦合,创建Session用了该模式。
代理模式
通过方法增强,通过不修改源码的基础上对已有方法增强,创建Dao层接口实现类使用了该模式。
5.21 Thuesday
用javaConfig配置Spring。
一种在类前加注解。
一种在Config里面配置@Bean
@Bean
public CompactDisc Qilixiang(){
return new Qilixiang();
}
5.22 Friday
/**
* @author lzr
* @date 2020 05 22 19:22
* @description 筛选最大的几个数字
*/
public class ChooseBigger {
private int minNum;
private int minNumIndex;
/**
* 筛选最大的n个数字
* @param targetNums
* @param resNums
* @return
*/
public int[] findBiggerNums(int[] targetNums, int[] resNums) {
int temp;
//填充数组
for (int i = 0; i < targetNums.length; i++) {
if(i<resNums.length){
resNums[i]=targetNums[i];
}else {
//从大到小排序
sort(resNums);
//新数字与最小数字比较,若小于,抛弃。大于则替换
if(targetNums[i]>resNums[resNums.length-1]){
temp=targetNums[i];
targetNums[i]=resNums[resNums.length-1];
resNums[resNums.length-1]=temp;
}
}
}
return resNums;
}
/**
* 数组排序
* @param sums
*/
private void sort(int[] sums){
int temp;
for (int i = 0; i < sums.length-1; i++) {
for (int j = i+1; j <sums.length; j++) {
if(sums[i]<sums[j]){
temp=sums[i];
sums[i]=sums[j];
sums[j]=temp;
}
}
}
}
5.23 Satday
/**
* @author lzr
* @date 2020/5/23 08:03:39
* @description io
*/
public class Test {
/**
* 读取txt文件中用空格分开的数字并放入数组中。
*/
@org.junit.Test
public void test() throws IOException {
String str="";
//读取文件
try(BufferedReader reader=new BufferedReader(new FileReader("text.txt"))){
String line="";
while((line=reader.readLine())!=null){
str+=line+" ";
// System.out.println(line);
}
}
str=str.trim();
// System.out.println(str);
String[] strings=str.split(" ");
for (int i = 0; i < strings.length; i++) {
System.out.println(strings[i]);
}
}
/**
* writer写入txt
*/
@org.junit.Test
public void test2(){
try (FileWriter writer=new FileWriter("text.txt")){
writer.write("whatwhatwhatwhatwhatwhatwhatwhat");
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* bufferedWriter写入txt
*/
@org.junit.Test
public void test3(){
try (BufferedWriter bufferedWriter=new BufferedWriter(new FileWriter("text.txt"))){
bufferedWriter.write("whatwhatwhatwhatwhatwhatwhatwhat");
} catch (IOException e) {
e.printStackTrace();
}
}
/**
* 读取文本
*/
@org.junit.Test
public void test4(){
try (BufferedReader reader=new BufferedReader(new FileReader("text.txt"))){
//用字符串来承接所读取的结果
String line=null;
while((line=reader.readLine())!=null){//读一行就列出一行 直到没有东西可以读为止。
System.out.println(line);
}
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}